Bytecode verified via sibling
This contract shares identical runtime bytecode with ýÞ (0xd2f06b96...) which has been verified through compiler archaeology.
A 49-byte CALLCODE forwarder for an early Ethereum multi-sig wallet, delegating every call to Gav Wood's shared wallet library.
Historical Significance
This is what an early Ethereum multi-sig wallet actually was on-chain: a few dozen bytes of forwarder plus a pointer to shared code. The split predates DELEGATECALL, which did not exist until Homestead, so it relies on CALLCODE and the tx.origin-based authorisation that CALLCODE forces. The pattern is the direct ancestor of today's proxy and implementation split, and this wallet code is the lineage later carried into the Parity multi-sig.
Context
Deployed 2015-09-19 by 0x5947168a79db294bda0db697a2e4ec7dfb2a0a5e. One of 111 byte-identical forwarders in the Ethereum History archive pointing at the shared wallet library at 0x273930d21e01ee25e4c219b63259d214872220a2, deployed by 63 distinct addresses between 2015-08-20 and 2015-10-17. Note that this contract's runtime is 49 bytes; the larger code size recorded against it is the size of its creation code, which differs between wallets because each constructor embeds that wallet's own owner list and daily limit.
Key Facts
Description
The entire runtime is 49 bytes: 3660008037602060003660003473273930d21e01ee25e4c219b63259d214872220a261235a5a03f21560015760206000f3. It copies all calldata to memory, then CALLCODEs 0x273930d21e01ee25e4c219b63259d214872220a2 forwarding the full call value and all remaining gas less 9050 (PUSH2 0x235a), and returns a fixed 32-byte window. On failure it jumps to offset 1, which is not a JUMPDEST, so the call throws and consumes the remaining gas in the Frontier manner. The contract holds no logic of its own: the multi-sig owner set, the confirmation queue and the daily limit all live in this address's storage and are operated by the shared library's code.
Source Verified
Factory-generated 49-byte proxy stub. Uses CALLCODE to delegate to master Wallet at 0x273930d2. Not compiled from Solidity - bytecode template generated by Wallet factory. 1989 identical deployments.
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 (Evm-assembly)
// Ethereum Foundation Wallet Proxy // Generated by the Wallet factory contract, not compiled from Solidity source. // This stub forwards all calls to the master Wallet contract via CALLCODE. // // Master contract: 0x273930d21e01ee25e4c219b63259d214872220a2 // // Equivalent EVM assembly: // // CALLDATASIZE // push calldata size // PUSH1 0x00 // push 0 // DUP1 // dup 0 // CALLDATACOPY // copy calldata to memory[0..] // PUSH1 0x20 // return size = 32 // PUSH1 0x00 // return offset = 0 // CALLDATASIZE // args size = calldata size // PUSH1 0x00 // args offset = 0 // CALLVALUE // forward msg.value // PUSH20 0x273930d21e01ee25e4c219b63259d214872220a2 // master wallet // PUSH2 0x235a // gas stipend (9050) // GAS // remaining gas // SUB // gas - 9050 // CALLCODE // execute master wallet code in this contract's context // ISZERO // check success // PUSH1 0x01 // jump target // JUMPI // if failed, jump to 0x01 (STOP) // PUSH1 0x20 // return 32 bytes // PUSH1 0x00 // from memory[0] // RETURN // return result // // The proxy preserves this contract's storage while executing the master wallet's logic. // This pattern predates Solidity's delegatecall — it uses CALLCODE (0xf2) which was // the only option before EIP-7 introduced DELEGATECALL in the Homestead fork. // // Raw bytecode (49 bytes): // 3660008037602060003660003473273930d21e01ee25e4c219b63259d214872220a261235a5a03f21560015760206000f3
External Links
Related contracts
Etherparty
Same deployerA minimal string-storage contract hardcoding the name 'Etherparty', deployed 3 times on August 8, 2015 by the same wallet that deployed SimpleStorage.
0x8200b7...e814d6August 8, 2015Etherparty
Same deployerA minimal string-storage contract hardcoding the name 'Etherparty', deployed 3 times on August 8, 2015 by the same wallet that deployed SimpleStorage.
0x139f75...d9a2f6August 8, 2015Etherparty
Same deployerA minimal string-storage contract hardcoding the name 'Etherparty', deployed 3 times on August 8, 2015 by the same wallet that deployed SimpleStorage.
0xced179...61154cAugust 8, 2015SimpleStorage
Same deployerThe canonical SimpleStorage tutorial contract from the Solidity documentation, deployed on Frontier Day 1.
0x78fac3...e1e99fAugust 8, 2015SimpleStorage
Same deployerThe canonical SimpleStorage tutorial contract from the Solidity documentation, deployed on Frontier Day 1.
0x29d843...f5cd94August 8, 2015SimpleStorage
Same deployerThe canonical SimpleStorage tutorial contract from the Solidity documentation, deployed on Frontier Day 1.
0xaec076...4643e4August 8, 2015