Back to Home

Contract 0x9a96270a85fb...f5c19ba695c7

Exchange
0x9a96270a85fb...f5c19ba695c7
Spurious DragonExact Bytecode Match
Deployed February 18, 2017 (9 years ago)Block 3,203,394

Exchange deposit forwarder v2 with LOCK identifier. Sweeps tokens from user deposit addresses to the exchange hot wallet. One of 5,310 identical deployments.

Key Facts

Deployment Block
3,203,394
Deployment Date
Feb 18, 2017, 06:59 AM
Code Size
738.0 B
Transactions by Year
20171

Description

An upgraded exchange deposit forwarding contract (v2) that adds pragma solidity ^0.4.8 and the LOCK8605463013() constant as an anti-proxy identifier. Otherwise identical to v1: sweep() forwards tokens to the owner address.

5,310 identical copies were deployed, making it the single most widely deployed unverified bytecode on early Ethereum.

Functions: transfer(address,uint256), balanceOf(address), sweep(address), LOCK8605463013(). The LOCK function returns a constant value used to identify legitimate contract instances vs proxies.

Source Verified

SolidityExact bytecode match(738 bytes)
Compiler: 0.4.9+c

Runtime bytecode match (stripped). solc 0.4.9+commit.364da425, optimizer OFF. bzzr0 metadata differs (compilation-specific). 5,310 identical siblings.

Heuristic Analysis

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

Detected Type: Exchange
Has ERC-20-like patterns

Spurious Dragon Era

Continued DoS protection. State trie clearing.

Block span: 2,675,0004,369,999
November 22, 2016October 16, 2017

Bytecode Overview

Opcodes738
Unique Opcodes92
Jump Instructions28
Storage Operations3

Verified Source Available

Source verified through compiler archaeology and exact bytecode matching.

View Verification Proof
Show source code (Solidity)
pragma solidity ^0.4.8;

contract Token {
    function transfer(address to, uint256 value) returns (bool ok);
    function balanceOf(address who) constant returns (uint256 value);
}

contract Forwarder {
    address owner;
    address defaultSweep;

    function Forwarder() {
        owner = 0x0536806df512d6cdde913cf95c9886f65b1d3462;
        defaultSweep = 0xa74476443119A942dE498590Fe1f2454d7D4aC0d;
    }

    function() {
        sweep(defaultSweep);
    }

    function sweep(address _token) {
        address token = _token;
        if (!(msg.sender == owner && Token(token).transfer(owner, Token(token).balanceOf(this)))) throw;
    }
}

External Links