Contract: 0xd2eccde805e888ae37646544d60185b842ff3d6b
Deployed: August 8, 2015 (block 53,573) - Day 9 of Ethereum
Compiler: soljson v0.1.1+commit.858e7b8 (optimizer ON)
Deploy tx: 0xa13705d6ea905431caeb62c33d9a08ec83cc8557a33316a9612f6cf523dabfcb
Deployer: 0x8674c218f0351a62c3ba78c34fd2182a93da94e2
Exact byte-for-byte match on both creation and runtime bytecode.
Creation: 458 bytes
Runtime: 439 bytes
One of the simplest contracts ever deployed on Ethereum. MessageStore stores a single string in public state and exposes one function to update it. The entire contract is 6 lines of Solidity.
It was deployed on August 8, 2015 - Day 9 of Ethereum's existence - by a deployer who published 18 contracts across blocks 52,970 to 55,260 during the same week, clearly experimenting with what Solidity could do in the days immediately following mainnet launch.
The contract has one public state variable (message) and one function (set). There are no events, no modifiers, no access control, and no constructor logic beyond zero-initialization. This is characteristic of Solidity v0.1.x contracts, where the language was still being defined.
contract MessageStore {
string public message;
function set(string _message) {
message = _message;
}
}- Compiler: soljson v0.1.1 (JavaScript-compiled Solidity, the only release format available in August 2015)
- Optimizer: ON (required for exact match; optimizer OFF produces different bytecode)
- ABI:
0x569b1b04-message()- public getter, returnsstring0xb8e010de-set(string)- stores the new message
- Storage layout: slot 0 contains the dynamic string (length-prefixed per early ABI encoding)
./verify.shRequirements: Node.js, curl, Python 3
Part of Ethereum History - a free archive of Ethereum's earliest smart contracts.