A classic Greeter contract from the official Solidity tutorial, storing and returning the string "Hello World!".
Key Facts
Description
A Greeter contract deployed on Jan 2, 2016, based on the official Solidity tutorial's mortal + greeter inheritance pattern. The contract stores a greeting string set via the constructor and returns it through the greet() function.
The contract inherits from a "mortal" base contract that provides an owner-only kill() function using suicide() (the pre-EIP-6 name for selfdestruct). The mortal constructor stores msg.sender as the owner, and kill() checks that only the owner can destroy the contract.
The greeter contract adds a single state variable (greeting) set by the constructor and exposed via greet(). Deployed with the constructor argument "Hello World!" -- the canonical example from the Solidity tutorial. No transactions were ever sent to this contract after deployment.
The deployer (0xd1d2c2cb7a9a703fc140f258f17f77dc6ff09899) deployed multiple contracts in late 2015 and early 2016, suggesting an active developer experimenting with Solidity during the Frontier era.
Source Verified
Exact bytecode match (init + runtime). 208 bytes init, 366 bytes runtime, 96 bytes constructor args. Classic mortal + greeter tutorial pattern.
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 mortal {
address owner;
function mortal() { owner = msg.sender; }
function kill() { if (msg.sender == owner) suicide(owner); }
}
contract greeter is mortal {
string greeting;
function greeter(string _greeting) public {
greeting = _greeting;
}
function greet() constant returns (string) {
return greeting;
}
}