Back to Home

Greeter

Unknown
0xcde4de4d3baa...71152fbf7864
FrontierContract #10Exact Bytecode MatchEdit this contract
Deployed August 7, 2015 (10 years ago)Block 49,392

The Frontier Greeter - Ethereum's Hello World tutorial deployed by a 2000 ETH genesis wallet on Day 1, with mortal() exposed as a callable function.

Key Facts

Deployment Block
49,392
Deployment Date
Aug 7, 2015, 06:40 PM
Code Size
717.0 B
Gas at Deploy
180,198
Transactions by Year
20151
20212
20232

Description

Deployed at block 49,392 on August 7, 2015, approximately 20 hours after Ethereum Frontier launched. The deployer (0xA1E4380A) received 2000 ETH at genesis, deployed 3 identical pre-Greeter drafts in a 7-minute window, then landed on this final version. They tested it by calling greet() at block 49,439, then later sent 800 ETH to the Augur crowdsale. The source is the canonical mortal + greeter inheritance pattern from the Frontier tutorial, with one key difference: mortal() is explicitly re-declared as a callable function inside greeter, making the owner-setting logic invocable by anyone at any time. The contract was eventually destroyed via kill(). Contract has self-destructed - verification is against the immutable creation TX input.

Source Verified

SolidityExact bytecode match(717 bytes)
Compiler: v0.1.1+

Creation TX input (717 bytes) matches byte-for-byte. Contract self-destructed - verified against immutable creation TX 0xef1b643d. Compiled with soljson v0.1.1+commit.6ff4cd6a, optimizer OFF.

Heuristic Analysis

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

Detected Type: Unknown

Frontier Era

The initial release of Ethereum. A bare-bones implementation for technical users.

Block span: 01,149,999
July 30, 2015March 14, 2016

Bytecode Overview

Opcodes717
Unique Opcodes73
Jump Instructions29
Storage Operations13

Verified Source Available

Source verified through compiler archaeology and exact bytecode matching.

View Verification Proof
Show source code (Solidity)
contract mortal {
    address owner;
    function kill() { if (owner == msg.sender) suicide(owner); }
}
contract greeter is mortal {
    string greeting;
    function greeter(string _greeting) {
        greeting = _greeting;
    }
    function mortal() { owner = msg.sender; }
    function kill() { if (msg.sender == owner) suicide(owner); }
    function greet() constant returns (string) {
        return greeting;
    }
}

External Links