Imagine a lottery where the organizer draws a winning number, and you have no way to tell whether the draw was fair or rigged. Now imagine a lottery where the organizer draws a number and hands you a cryptographic receipt that proves — beyond any doubt — that the number came from a secret key applied honestly to today's date. That is precisely what a Verifiable Random Function delivers.
A VRF is built from a secret key (held by one party) and a proof algorithm. Given any input — a block hash, a round number, a user ID — the holder of the secret key computes two things: a pseudorandom output and a short proof. Anyone who holds the corresponding public key can verify the proof in milliseconds, confirming that the output was computed correctly, without learning anything about the secret key itself.
The guarantee is two-sided. Uniqueness: there is exactly one valid output for each (key, input) pair — the key-holder cannot fish for a favorable result. Unpredictability: without the secret key, the output is computationally indistinguishable from a uniformly random string, even if you watch thousands of other VRF evaluations.
VRFs were introduced by Silvio Micali, Michael Rabin, and Salil Vadhan in 1999 and have since become the building block of choice wherever you need randomness that is both unpredictable and publicly auditable.
Comments
Loading comments...