How the draw works
Fair for participants, simple for projects, and checkable by anyone.
- 1
Entries are reviewed by the project
Rally does not read X, Discord or Telegram. You paste the link to your post or your username, and the project checks it. Tasks like visiting a page, answering a question or holding a token on VeChain are checked automatically.
- 2
The entrant list is locked
When the campaign has ended, the project locks the list: every wallet with all required tasks approved, with its number of entries (more tasks done = more entries). The list is sorted by wallet and hashed.
- 3
The hash goes on chain first
The project sends that hash to the RallyCampaigns contract on VeChain. The contract notes a block a few seconds in the future: the reveal block. Each campaign can do this once, so it cannot be redone for a different result.
- 4
A future block decides
Nobody knows a block's id before it is made. The seed is keccak256(reveal block id, draw key, list hash). For winner n, keccak256(seed, n) picks a spot among all entries still in the pool; that wallet wins and leaves the pool.
- 5
Anybody can check it
Every campaign has a proof page with the list, the hash, the transaction and the reveal block. Your browser redoes the draw there with a public VeChain node and shows whether the winners match.
Prizes are sent by the project that ran the campaign. Rally and BlackVeMarket never hold prizes.