A test contract that writes a bool flag based on whether the caller matches a hardcoded admin address, with kill, get, and getBool functions.
Historical Significance
Part of a series of iterative prototypes by a prolific Frontier-era developer. Shows the progression from read-only admin checks to persistent state writes, a pattern that evolved into multi-party escrow contracts with 72 production instances.
Context
Deployed on December 30, 2015 during the Frontier era. Developers were learning Solidity patterns like packed storage (address + bool in one slot) and constructor initialization.
Key Facts
Description
An evolution of the AdminCheck (test-v1) contract by the same developer. Adds a constructor that sets the owner to msg.sender, a bool state variable (flag), and a getBool() function to read it. The test() function writes the result of an admin address comparison to storage instead of just returning it.
Part of a series of iterative prototypes by a developer who deployed over 400 contracts between December 2015 and May 2016. This contract builds on the hardcoded admin check pattern from test-v1, adding persistent state tracking. The owner and flag are packed into slot 0 (address at bits 0-159, bool at bit 160).
The contract was selfdestructed shortly after deployment, deployed just 63 blocks after its predecessor test-v1.
Source Verified
Exact bytecode match (init + runtime). 245 bytes creation code (34 init + 211 runtime), no constructor args. Contract is selfdestructed.
Heuristic Analysis
The following characteristics were detected through bytecode analysis and may not be accurate.
Frontier Era
The initial release of Ethereum. A bare-bones implementation for technical users.
Bytecode Overview
Verified Source Available
Source verified through compiler archaeology and exact bytecode matching.
View Verification ProofShow source code (Solidity)
contract T {
address owner;
bool flag;
function T() { owner = msg.sender; }
function kill() { suicide(owner); }
function get() returns (address) { return owner; }
function getBool() returns (bool) { return flag; }
function test() {
flag = (msg.sender == 0x8b9346aa412b52954b5138dbb72adab97273766e);
}
}External Links
Related contracts
Store
Same deployerA simple key-value store contract with set, get, and kill functions, deployed during the Frontier era.
0x621492...3512fcDecember 14, 2015AdminCheck
Same deployerA test contract that checks if the caller matches a hardcoded admin address, with kill and get functions.
0x49efab...82c595December 22, 2015Test
Same eraThe earliest known Ethereum contract with executable runtime code. A single function go() that returns the string "eth", compiled with the first publicly available Solidity compiler (v0.1.1).
0x651629...8c21faAugust 7, 2015Greeter
Same eraAn early Ethereum contract that returns the string “Hello World!” when called.
0xfea8c4...8b08ebAugust 7, 2015PrimeChecker
Same eraPrimeChecker contract. Identical bytecode to 0x66d796e7 -- smallestfactor(uint256) returns the smallest prime factor, or n if prime. Deployed Aug 7, 2015 by the
0x7b2d5c...164661August 7, 2015testContract
Same eraThe first publicly posted Ethereum contract that returned a value when called, demonstrating interactive smart contract execution.
0xa3483b...018cdcAugust 7, 2015