Back to Home

EarlyLottery

Unknown
0x7af6af3d4491...ada43ffbb992
FrontierContract #105DecompiledEdit this contract
Deployed August 9, 2015 (10 years ago)Block 56,646

An early Ethereum lottery contract, deployed August 9, 2015 by one of the network's earliest users as an iteration on a prototype deployed 42 minutes earlier. R

Frontier Era

Historical Significance

One of the earliest lottery contracts on Ethereum mainnet, deployed 10 days after genesis as an iteration on a same-day prototype. The deployer was among the very first Ethereum users. The contract's survival on-chain through to 2024 makes it a durable artifact of the first financial gambling applications on Ethereum.

Context

Deployed August 9, 2015 (Frontier period), 10 days after the Ethereum genesis block. The deployer was active from block 46235 and created 18 contracts during the first weeks of Ethereum. On-chain randomness challenges for lottery contracts were recognized from the earliest period of Ethereum development.

Key Facts
Deployment Block
56,646
Deployment Date
Aug 9, 2015, 03:19 AM
Code Size
1.5 KB
Gas at Deploy
454,900
Transactions by Year
20157
202618

Description

Deployed at block 56646 on August 9, 2015, this lottery contract is the second deployment by address 0xFD2605a2bF58fDbB90db1Da55dF61628B47F9e8c in the same session. The deployer had built a prototype lottery at 0xcdd192f2c49383af4321c7d1941fb3c9ca1b622c (block 56478), tested it with two participants, paid out, and then self-destructed it. This contract was deployed 42 minutes later as the follow-up iteration.

The contract provides the same core interface: buyTicket(uint256 _blindRandom) accepts a participant-supplied random number, payout() distributes winnings, tickets(uint256) allows querying individual ticket entries, and random() exposes the random number logic. A die() self-destruct function is also present but was not called, leaving the contract on-chain.

Unlike the prototype, this version attracted multiple participants and remained active across multiple years. The deployer (0xFD2605a2) was one of the earliest recorded Ethereum accounts, active from block 46235 (approximately August 5-6, 2015), and deployed 18 contracts during the Frontier period across blocks ranging from the first week of the network. In 2024, the getNumInvestors() function (selector 0x72ea4b8c) was called, showing the contract remained of interest to blockchain researchers nearly a decade after deployment.

Gambling and lottery contracts were among the earliest use cases deployed on Ethereum. The challenge of generating verifiable random numbers on a deterministic blockchain was a known limitation discussed in the Ethereum community from the earliest days. The blind random number input (_blindRandom) in the ticket purchase function represents an early attempt to incorporate user-supplied entropy into the random selection process.

Heuristic Analysis

The following characteristics were detected through bytecode analysis and may not be accurate.

Detected Type: Unknown
Contains SELFDESTRUCT opcode

Bytecode Overview

Opcodes1,516
Unique Opcodes160
Jump Instructions96
Storage Operations56

External Links