lamport signatures are beautiful
it starts with you making a bunch of secret pairs, hashing them, and then publishing those hashes as your public key.
when you want to sign a message, you hash the message and reveal one secret from each pair based on the bits of that hash.
the verifier just hashes your revealed secrets and checks whether they match what you published
and if that’s the whole trick then but why is it so beautiful?
because it only works once, you can’t use the same key again and again cause if you do then it will start leaking enough information for someone to eventually break the puzzle and forge your signatures.
And that makes it not much practical for everyday systems.
but as a primitive method, it’s elegant in the way good cryptography should be.
just simple logic, strong assumptions, no unnecessary drama, just hashes doing exactly what they’re supposed to do.
>shift