Overview of the FANTOM Whitelisting Lottery

1 te Zf0GdS26buDyAiecDqA

Issues with Popular ICOs on Ethereum

Popular ICOs on Ethereum often lead to gas wars and network congestion, causing participants to feel that the process is not entirely fair. Even with smart contracts that limit gas prices and prohibit frequent transactions, knowledgeable buyers maintain a slight edge. Additionally, delays in processing KYC requests may favor investors in jurisdictions where KYC is faster and cheaper. As a result, investing in successful ICOs often feels like a lottery, and rarely a fair one.

The Fantom Foundation Approach

The Fantom Foundation aims to organize its whitelisting process through two successive lotteries. These lotteries will be completely fair and transparent. Participants chosen in the second lottery will have a guaranteed allocation of tokens during the first 24 hours of the ICO. This ensures that lottery winners will not need to rush to send their contributions immediately after the ICO begins or pay abnormally high gas prices.

The Two Lotteries

To address the time-consuming nature of KYC procedures, the Fantom Foundation will not conduct KYC for all applicants. Instead, anyone can apply for whitelisting during a 4-day period from June 8, 2018, 9am GMT+0 to June 12, 2018, 9am GMT+0.

Shortly after 9am on June 12, 2018, the complete list of Ethereum addresses of all whitelisting applicants will be published. Using data from the NIST Randomness Beacon at a specific future time, a list of 6,000 addresses will be randomly chosen from valid applications (excluding those from banned countries or suspected bots). These 6,000 addresses will then undergo a KYC process. Successful KYC addresses will participate in a second lottery, resulting in a final list of approximately 2,400 addresses.

The NIST Randomness Beacon

The NIST Randomness Beacon is a well-known source for random numbers, generating a 512-bit random number every minute since May 2013. The data sequence generated is a blockchain, ensuring the integrity of the numbers. According to the NIST site, “Each value is sequence-numbered, time-stamped, and signed, including the hash of the previous value to chain the sequence together and prevent retroactive changes.”

The Lottery Process in Detail

The first lottery will be organized as follows, with the second lottery following a similar procedure:

  • After the whitelisting application process closes at 9am on June 12, 2018, an ordered and numbered list of Ethereum addresses will be published.
  • This list will be a randomly shuffled list of addresses that requested whitelisting.
  • The document will also specify the exact minute whose NIST Beacon record will be used to determine the lottery result.

An example document might look like this:

BEGIN LOTTERY DATA
Fantom Foundation — first lottery to choose 6000 addresses
NIST Beacon decision time: 12-JUN-2018 15:00 GMT+0
0 0xCf10609a18BF4F59C27d44e5078A81Eb9CCeb7B5
1 0x64d080373bdB25B1Ede1075C33c8cf733259bBCE
2 0xae22Fcd102c6C07846b81cae68d8ee62e8ff9D6F
3 0x6b733436c8fc3cCf759bD368738aE77a399946f2
…
END LOTTERY DATA

The SHA256 hash of this document will be recorded on the Ethereum blockchain using a specific contract to ensure any tampering is visible.

The Simple Lottery Process

The lottery process is simple and will proceed as follows:

  • n: Number of data points (indices 0, 1, 2, …, n-1)
  • c: Number of data points to be chosen (with c < n)
  • R: NIST beacon value at decision time (a very large integer)

The lottery result is determined by m = R % n, resulting in a number between 0 and n-1. The selected c items are those with indices:

m % n, (m+1) % n, (m+2) % n, … (m+c-1) % n

This corresponds to c items starting at index m and wrapping around to 0 if the index n-1 is reached.

Shortly after the decision time, the lottery result will be published for anyone to verify independently.

https://medium.com/fantomfoundation/fantom-whitelisting-lottery-overview-363c4275c677