When you buy a ticket on Flip Hop, a legitimate question comes up: how do you know the winner wasn’t chosen in a rigged way? How can you be sure that no one — not the platform’s team, not external servers, not miners — influenced the result?
The answer lies in a technology called Chainlink VRF. This post explains what it is, how it works in practice, and why it changes the very nature of trust in digital entertainment platforms.
The Problem Chainlink VRF Solves
To understand why VRF exists, you first have to understand the problem it solves: generating reliable randomness in a computing system.
Computers are deterministic machines — they execute predictable instructions. Generating a truly random number inside a computer requires an external source of entropy: something unpredictable to serve as the seed for the calculation.
In centralized systems, that source is usually internal to the company’s server — which creates a structural problem:
| The problem with traditional random number generators (RNG) • The server that generates the random number belongs to the same company that runs the drawing • No outside party can verify whether the number was truly random or was influenced • External RNG certifications exist, but they’re audited periodically — not for each individual drawing • Between one audit and the next, the parameters can be changed without anyone noticing • The user is in a position of blind trust: they believe the result because they have no way to question it. |
Chainlink VRF was created to eliminate this problem. Not by reducing the risk of manipulation — but by eliminating the technical possibility of it.
What Chainlink VRF Is
VRF stands for Verifiable Random Function. It’s a cryptographic protocol that generates random numbers with a unique characteristic: each number comes with a mathematical proof that lets anyone independently verify that it was generated correctly.
Chainlink is the decentralized oracle network that implements VRF and makes it available to smart contracts on blockchains like Base, where Flip Hop operates.
| Chainlink’s official documentation defines VRF as a “provably fair and verifiable random number generator” that lets smart contracts access random values without compromising security or usability. |
In simple terms: it’s like an electronic die whose outcome can’t be predicted before the roll and whose honesty can be mathematically proven afterward.
How Chainlink VRF Works — Step by Step
The VRF flow in the context of Flip Hop follows a precise sequence in every round:
| 1 | The round closes at 00:00 UTC with all tickets recorded in the smart contract. |
| 2 | The Flip Hop contract sends a randomness request to the Chainlink network, including a unique identifier for the round (requestId). |
| 3 | The Chainlink network nodes combine the request’s seed with a cryptographic private key to generate the random number. |
| 4 | Along with the number, Chainlink generates a cryptographic proof — a set of mathematical data that shows how that specific number was calculated. |
| 5 | The random number and the proof are sent back to the Flip Hop contract on the blockchain (rawFulfillRandomWords). |
| 6 | The contract verifies the proof before accepting the number. If the proof isn’t valid, the number is rejected. |
| 7 | With the number verified, the contract determines which ticket won and records the result permanently on the blockchain. |
| 8 | Anyone can look up the requestId and the randomWord on Basescan and independently verify that the result is legitimate. |
Step 6 is what makes the system unique: the proof is verified on-chain, automatically, before the result is applied. There’s no window in which someone could swap out the number without the contract noticing.
Why No One Can Manipulate the Result
Chainlink VRF’s guarantee doesn’t come from a policy or a promise — it comes from the math and the system’s architecture. Here’s why each relevant party is technically unable to manipulate the result:
The Flip Hop team
The smart contract is the only thing that runs the drawing. The team has no access to a “choose winner” function — the result is determined automatically by the contract’s logic combined with the random number generated by Chainlink. No one on the team knows the number before it’s published on the blockchain.
The Chainlink network nodes
The Chainlink node operators that generate the random number can’t manipulate it either. That’s because the number is derived from a combination of the request’s seed (public) and the node’s private key — and any attempt to alter the number would result in an invalid proof, which the contract would automatically reject.
Blockchain miners and validators
Even those with the power to order transactions on the Base blockchain can’t influence the VRF result. The number is generated off-chain by Chainlink and brought onto the blockchain already with its proof — no reordering of blocks can change a number that was calculated off-chain with a private key that no one else holds.
Other participants in the round
No participant can predict or influence which ticket will be drawn. The generated number is unpredictable until the moment it’s published — and at that point the result is already determined, with no further action possible.
| What Chainlink’s official documentation states “This process helps ensure that results cannot be tampered with or manipulated by any single entity — including oracle operators, smart contract developers, users, miners, or block builders.” — Official Chainlink VRF documentation |
Chainlink VRF vs. Traditional Random Number Generators
| Criterion | Traditional RNG | Chainlink VRF |
| Who generates the number | The platform’s internal server | ✅ Decentralized Chainlink network |
| Can the result be verified? | ❌ No — internal process | ✅ Yes — proof published on-chain |
| Auditing | ⚠️ Periodic (months between reviews) | ✅ Automatic — with every drawing |
| Mathematical proof per drawing | ❌ None | ✅ Yes — cryptographic proof |
| Risk of internal manipulation | ⚠️ Possible, hard to detect | ✅ Mathematically impossible |
| Independent verification | ❌ Relies on trusting the company | ✅ Anyone can verify |
| On-chain transparency | ❌ Result in a closed system | ✅ requestId and randomWord on Basescan |
How to Verify the Result of Any Round
You don’t need to trust that Chainlink VRF worked correctly — you can verify it for yourself. Every Flip Hop drawing leaves a public trail on Basescan with the data needed for verification.
What to look for on Basescan
- Go to the contract:
basescan.org/address/0x9F03D710B6B258A28552dB5A87CB08Eb4881DB18
- In the Events tab, look for the event
WinnerDeclared — it contains: the drawId (round identifier), the winningTicketId (the winning ticket number), the winner’s address, the prizeAmount in USDC, the requestId (reference to the randomness request), and the randomWord (the random number generated by Chainlink).
- The requestId lets you cross-reference Chainlink’s data and confirm that the randomWord is the legitimate result of that specific request — with its associated cryptographic proof.
| What the WinnerDeclared event proves When you see a WinnerDeclared event with a requestId and randomWord on Basescan, you’re seeing the evidence that: 1. The randomness request was made to Chainlink with that unique identifier 2. Chainlink returned that specific number with a valid mathematical proof 3. The contract verified the proof before applying the result 4. The winning ticket was determined automatically by dividing the randomWord by the total number of tickets No one intervened between step 1 and step 4. |
Why This Matters — Beyond the Technology
Most people who use Flip Hop won’t check the requestId on Basescan. And that’s fine — it’s not required. The point is that you could do it if you wanted to. And that possibility changes everything.
On conventional platforms, trust is a choice you make blindly — you decide to believe because you have no alternative. On Flip Hop, trust has a verifiable technical basis: anyone with internet access can confirm that the result of any round was determined by a process that no single entity controls.
| Flip Hop uses Chainlink VRF not because it’s a legal requirement, but because eliminating the possibility of manipulation is part of how the platform was built. The code is the contract. The proof is public. Trust doesn’t have to be blind. |
This is what sets Chainlink VRF apart from a simple claim that “our system is fair.” Any company can make that claim. Few build their architecture so that the claim is mathematically verifiable.
Play Knowing How It Works
Now you know the mechanism that determines who wins each Flip Hop round. It’s not a black box, it’s not a promise — it’s a cryptographic protocol that anyone can verify, at any time.