Back to Home

Exchange

Token
0x0fa647372d85...5d8299fd0bf6
FrontierContract #144Exact Bytecode MatchEdit this contract

Bytecode verified via sibling

This contract shares identical runtime bytecode with Exchange (0x1c523996...) which has been verified through compiler archaeology.

Deployed August 10, 2015 (10 years ago)Block 65,826

Owner-controlled custody contract with Deposit/Transfer/IcapTransfer events.

Key Facts

Deployment Block
65,826
Deployment Date
Aug 10, 2015, 09:51 PM
Code Size
914.0 B
Gas at Deploy
267,886

Description

Owner-controlled custody contract with Deposit/Transfer/IcapTransfer events. Functions include fallback (AnonymousDeposit), deposit(bytes32), transfer(bytes32,address,uint256), icapTransfer(...). Verified with soljson-v0.1.1+commit.6ff4cd6 and optimizer OFF.

Source Verified

SolidityExact bytecode match(914 bytes)
Compiler: soljson

Backfilled from awesome-ethereum-proofs PR #32.

Heuristic Analysis

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

Detected Type: Token

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

Opcodes914
Unique Opcodes146
Jump Instructions20
Storage Operations6

Verified Source Available

Source verified through compiler archaeology and exact bytecode matching.

View Verification Proof
Show source code (Solidity)
contract token { function deposit(bytes32 _id) {} }

contract Exchange {

    address owner;

    event AnonymousDeposit(address indexed _from, uint256 _value);
    event Deposit(address indexed _from, bytes32 indexed _id, uint256 _value);
    event Transfer(bytes32 indexed _from, address indexed _to, uint256 _value);
    event IcapTransfer(bytes32 indexed _from, address indexed _to, bytes32 _id, uint256 _value);

    function Exchange() {
        owner = msg.sender;
    }

    function () {
        AnonymousDeposit(msg.sender, msg.value);
    }

    function deposit(bytes32 _id) {
        Deposit(msg.sender, _id, msg.value);
    }

    function transfer(bytes32 _from, address _to, uint256 _value) {
        if (msg.sender == owner) {
            _to.send(_value);
            Transfer(_from, _to, _value);
        }
    }

    function icapTransfer(bytes32 _from, address _to, bytes32 _id, uint256 _value) {
        if (msg.sender == owner) {
            token(_to).deposit.value(_value)(_id);
            IcapTransfer(_from, _to, _id, _value);
        }
    }

}

External Links