Back to Home

Contract 0x051fdd88505a...314d589f0723

Utility
0x051fdd88505a...314d589f0723
FrontierContract #597DecompiledEdit this contract
Deployed August 29, 2015 (11 years ago)Block 157,982

The go-ethereum Contract Tutorial greeter, deployed with no constructor argument, so its greeting was left empty.

Frontier Era

Historical Significance

The Contract Tutorial was the introduction to Solidity that shipped with go-ethereum, and deploying the greeter was its final step. Each copy therefore preserves the sentence its author chose to write onto a public chain while learning the tools. The Solidity source here was recovered by compiling the tutorial text with period compilers until the output matched the deployed bytecode exactly.

Context

Ethereum's Frontier network went live on 30 July 2015. The Contract Tutorial on the go-ethereum wiki, which the Frontier Guide included by reference, was the standard introduction of that period, and it named its three contracts mortal, greeter and token. Solidity was a few months old, contracts were compiled and deployed from the geth console, and no block explorer of the time kept the source, so the greeters survive as bytecode alone.

Key Facts
Deployment Block
157,982
Deployment Date
Aug 29, 2015, 12:58 AM
Code Size
692.0 B
Gas at Deploy
184,784
Transactions by Year
20151

Description

The greeter is the worked example of the Contract Tutorial on the go-ethereum wiki. It inherits a base contract named mortal, which records the account that created it and exposes kill(), a function that self-destructs the contract and sends its balance to that account. Only the creator can call it.

The greeter itself adds one string. The constructor stores the greeting given at deployment and greet() returns it. There is no setter, so the greeting a copy is born with is the only greeting it ever has, and no account other than the creator can affect it.

This copy was deployed with an empty creation argument, so the constructor stored a zero-length string and greet() returned nothing.

Heuristic Analysis

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

Detected Type: Utility

Bytecode Overview

Opcodes692
Unique Opcodes69
Jump Instructions26
Storage Operations11

External Links

Related contracts