Back to Home

radcoin

Unknown
0x522a493d563b...f4c8c842922c
FrontierExact Bytecode Match
Deployed September 22, 2015 (10 years ago)Block 274,203

Identical contract to 0xFF2947 — same bytecode, same source. Deployed one day later, Sep 22 2015.

Token Information

Token Name
radcoin

Key Facts

Deployment Block
274,203
Deployment Date
Sep 22, 2015, 06:06 PM
Code Size
1.9 KB
Gas at Deploy
514,895

Description

Identical bytecode to 0xFF2947b1851bB16a7C8E71C6a8458D29600F9D6a, deployed one day later. Both share the same 1648-byte runtime bytecode — differing only in constructor arguments (the name field set at deployment).

This is a dual-send subcurrency with exchange-authorized transfers, compiled with soljson v0.1.1 (emscripten, no optimizer). Deployed 44 days after Ethereum mainnet launch.

See the primary contract entry for full documentation.

Source Verified

SolidityExact bytecode match(1,910 bytes)
Compiler: soljson

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

Opcodes1,910
Unique Opcodes142
Jump Instructions49
Storage Operations30

Verified Source Available

Source verified through compiler archaeology and exact bytecode matching.

View Verification Proof
Show source code (Solidity)
contract Coin {
    mapping (address => uint) public balance;
    address public issuer;
    bytes32 public name;

    event CoinTransfer(address from, address to, uint256 amount);
    event CoinIssue(address issuer, address to, uint256 amount);

    function Coin(bytes32 _name) {
        issuer = msg.sender;
        name = _name;
    }

    function send(address account, uint amount) returns (uint) {
        if (balance[msg.sender] < amount) return 0;
        balance[msg.sender] -= amount;
        balance[account] += amount;
        CoinTransfer(msg.sender, account, amount);
        return 1;
    }

    function send(address account, uint amount, address exchange) returns (uint) {
        if (msg.sender != exchange) return 0;
        if (balance[exchange] < amount) return 0;
        balance[exchange] -= amount;
        balance[account] += amount;
        CoinTransfer(exchange, account, amount);
        return 1;
    }

    function issueCoin(address account, uint amount) returns (uint) {
        if (msg.sender != issuer) return 0;
        balance[account] += amount;
        CoinIssue(msg.sender, account, amount);
        return 1;
    }

    function changeIssuer(address newIssuer) returns (uint) {
        if (msg.sender != issuer) return 0;
        issuer = newIssuer;
        return 1;
    }
}

External Links