The Frontier greeter carrying one extra unused storage slot
Historical Significance
The greeter as most people met it, with one storage slot more than the tutorial's version holds. A spare slot is evidence that the source behind a deployment was edited rather than copied, which is the ordinary state of tutorial code once it reaches a real chain: read, changed a little, and deployed before the change was finished.
Context
Deployed in August 2015, in the first month of the Frontier chain.
Key Facts
Description
The greeter from the Frontier contract tutorial: a string given at construction, a greet function that returns it, and the mortal base that lets the creator kill the contract and recover its balance. One thing separates it from the tutorial version. A second storage variable sits between the owner and the greeting, and the constructor writes the number six into it after storing the greeting. Nothing reads it and nothing else writes it, so the value never changes and never affects anything. Its presence is visible only because it pushes the greeting from the second storage slot to the third.
Source Verified
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)
// Submitted by EthereumHistory (ethereumhistory.com)
contract mortal {
address owner;
function mortal() { owner = msg.sender; }
function kill() { if (msg.sender == owner) suicide(owner); }
}
contract greeter is mortal {
uint version;
string greeting;
function greeter(string _greeting) {
greeting = _greeting;
version = 6;
}
function greet() constant returns (string) {
return greeting;
}
}External Links
Related contracts
Greeter
Same deployerThe greeter with a changeable greeting and a block number reader
0x1b2ea4...4bafcbDecember 1, 2015Greeter
Same deployerThe Greeter from the solidity-baby-steps tutorials, deployed with an empty greeting.
0x68b58d...dc2dc0December 1, 2015Greeter
Same eraA HelloWorld greeter deployed at block 51,909 on 8 August 2015, one of a run of contracts from the same account that week.
0x412fda...7267edAugust 8, 2015Greeter
Same eraA Greeter with the message 'Ethereum will change the world smarter' - deployed Aug 8, 2015 by a developer connected to the Tokyo Smart Contract meetup.
0xda0c1c...7a68ebAugust 8, 2015MessageStore
Same eraA 6-line contract storing a single public string, deployed Day 9 of Ethereum by a prolific early experimenter who shipped 18 contracts in one week.
0xd2eccd...ff3d6bAugust 8, 2015Greeter
Same eraThe go-ethereum Contract Tutorial greeter, deployed with the greeting: Hello World!
0x506f4b...466983August 8, 2015