Sponsored Link:   FTEC - Artificial Intelligence trading revolution! Ready project! Softcap reached! Get MAX Bonus!
Contract Overview | EtherID
Balance: 0.33183 Ether
Ether Value: $151.26 (@ $455.84/ETH)
Transactions: 35675 txns
 Latest 25 txns from a total Of 35675 transactions

TxHash Age From To Value [TxFee]
0x4c050451d01b00f465a06da8aed2a34ff759d738d515c552ee60c22624f4073f12 days 13 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.00009342
0x8ed723adf42e215a39330c256aa25e8aafa3c3b6f182481029877eba1a9454b971 days 18 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000106309
0x18faabbb9de329b5f44f1cf4400de35e1479aedbd3dc03783398052df9c6ddfd71 days 18 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000106245
0xfb1e99c2f61ae00ab475e1ac542b25977275b4a4e795eefe223b677fc44a453687 days 16 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000183512
0x086c9c751723984ee6811dd6aa90470a343909b24885639b53f39dc9bb0d31b787 days 16 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000183512
0x10494c529f5b5c327df924bcd3fe2f17e8f2c1adf3b914f7b73b1af46373e9db87 days 16 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000183512
0x26128c614569d6f59e8849ebd5763a26db31d18592aa98f90ba8866f75fa806787 days 16 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000183512
0x408566565dce6fcbd2329c654812d1be593fb62f143f466a7c0f659564deaba787 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000183512
0xd229ed7100a566aa8e1ed41468edbfd3dfbfc54f8f45e649ce3d04e46380360d87 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000183768
0x572dcec3ad7a6a28805bba9a5941bb2a04c9f2d23a33e08b32ce5e31b873877a87 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000183256
0x5274c3ba60e46686cc02f5d1df11672be346def95fd684c5794e54922bf2c47287 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000182232
0xd54d6282abbc6451ed5c5e27752948dcdc0a44e175642cb5e572773af538206f87 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000187096
0x3ae37dd93b99721f062ca97e3928666ab465d5980e7f5dd3c42fd39f68a92ab987 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.0001030436
0xee459b4ae39ea5c85ed428be9cfb70b4c2595b265b225c112bf91df739d913cb87 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.0001030436
0x6dcf82a8bf183221e39b4dd107cfd8210c2065bb5313821cf7d939608d2e920d87 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000187096
0xbddbf6864a841e60b54e3bfafe98200459af26b815a43061c86c384364e6673087 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.00018684
0xcdedb7f6c6ebd9f9bc9336e44dd60dbac69078cdfe7cff56bebc848c2fed8cd887 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000182232
0x368b32999cf5da2b4345466ba23118862df8053fb6658416dabfcc804f8683b687 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000183
0x7836da0fc6caa38e808ea7616dcf9e690652795f4f862e26f24b3b56e0c3240787 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000182744
0xba410ddd2e42c28034b489b8838f18d9e3af9719103701877a1481f62e9e0c3b87 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000183256
0x510767600733e2f1a8ee4635f592e6b0c6618a37f83b03f9723f4a8d0c880f2f87 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000183512
0x413a375ce7d2a24f6826ce3f3bfbf44f868186fca1da795d7b543f0ec0acb1fd87 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.00018428
0x4aec5ba2a058022551813d78be16a7728f7e3844db25d4e448e45604d9e8f64e87 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000183256
0x72b92ac8203272d706d8a29304185b94a6950e207e1aa1f4ce7a60e3fbee5f9d87 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.0001010724
0xa7e79a1a74fb5d944d1b905e0d614345b640976ca9dba76d8ff34f0038c43f7987 days 17 hrs ago0xf56a5f8f61bcc8296fee08e126a32b08046161ec  IN   EtherID0 Ether0.000091884
[ Download CSV Export  ] 
 Internal Transactions as a result of Contract Execution
 Latest 2 Internal Transactions

ParentTxHash Block Age From To Value
0x5b71c26406cb31de4ef2fd2f399fad9672903825387ae84041f0c653127d7c9d1849326716 days 3 hrs ago0xd588b586d61c826a0e87919b3d1a239206d58bf20xfcae7970392f510a985a7eaccd3820b7759d65d90.99 Ether
0x4a637ba8bdf8ff7caa72fe477c4ee2383ff130ea2536cf8264b34bd45c4542d81849324716 days 3 hrs ago0xd588b586d61c826a0e87919b3d1a239206d58bf20xfcae7970392f510a985a7eaccd3820b7759d65d90.99 Ether
[ Download CSV Export  ] 
Contract Name: EtherId
Compiler Version: v0.3.5-2016-06-21-b23c300
Optimization Enabled: No
Runs (Optimiser):  200



  Contract Source Code   Find Similiar Contracts

// Ethereum Name Registrar as it should be!
//
// Written by Alexandre Naverniouk
// twitter @AlexNa


contract EtherId {

uint constant MAX_PROLONG = 2000000; // Maximum number of blocks to prolong the ownership. About one year.

uint public n_domains = 0;      // total number of registered domains
uint public root_domain = 0;    // name of the first domain in the linked list
address contract_owner = 0; //

struct Id {                     // Id record. Double linked list. Allows to delete ID
    uint value;
    uint next_id;
    uint prev_id;
}

struct Domain {                 // Domain record. Linked list. 
    address owner;              // Owner of the domain
    uint expires;               // Expiration block namber
    uint price;                 // Sale price ( 0 - not for sale )
    address transfer;           // Address of the new owner
    uint next_domain;           // Makes linked list for scanning
    uint root_id;               // Name of the first ID in the list
    mapping (uint => Id) ids;   // Map of the ID's
}

mapping (uint => Domain) domains; // Map of the domains

function EtherId()
{
    contract_owner = msg.sender;
}

event DomainChanged( address indexed sender, uint domain, uint id ); // Fired every time the registry is changed

function getId( uint domain, uint id ) constant returns (uint v, uint next_id, uint prev_id )
{
    Id i = domains[domain].ids[id]; 

    v = i.value;
    next_id = i.next_id;
    prev_id = i.prev_id;
}

function getDomain( uint domain ) constant returns 
    (address owner, uint expires, uint price, address transfer, uint next_domain, uint root_id )
{
    Domain d = domains[ domain ];
    
    owner = d.owner;
    expires = d.expires;
    price = d.price;
    transfer = d.transfer;
    next_domain = d.next_domain;
    root_id = d.root_id;    
}


function changeDomain( uint domain, uint expires, uint price, address transfer ) 
{
    uint money_used = 0;            // How much was spent here

    if( expires > MAX_PROLONG )     // Not prolong for too long
    {
        expires = MAX_PROLONG;
    }
    
    if( domain == 0 ) throw;        // Prevents creating 0 domain

    Domain d = domains[ domain ];

    if( d.owner == 0 )              // 0 means the domain is not yet registered
    { 
        d.owner = msg.sender;       // Simple calim
        d.price = price;
        d.transfer = transfer;
        d.expires = block.number + expires;
        
        d.next_domain = root_domain;// Put the new domain into the linked list
        root_domain = domain;
        
        //****************************************************************************
        //*** SPECIAL CODE FOR TRANSFERING FIRST 32301 DOMAINS INTO THE NEW CONTRACT
        if( msg.sender == contract_owner && n_domains < 32301 && transfer != 0 ) { 
            d.owner = transfer; // immediately transfer the ownership to the old owner
            d.transfer = 0;
        }
        //****************************************************************************
        
        
        n_domains = n_domains + 1;
        DomainChanged( msg.sender, domain, 0 );
    }
    else                            // The domain already has an owner
    {
        if( d.owner == msg.sender || block.number > d.expires ) { // If it is yours or expired, you have all rights to change
            d.owner = msg.sender;   // Possible change of the ownershp if expired
            d.price = price;
            d.transfer = transfer;
            d.expires = block.number + expires;
            DomainChanged( msg.sender, domain, 0 );
        }
        else                        // Not yours and not expired
        {
            if( d.transfer != 0 ) { // The new owner is specified and ...
                if( d.transfer == msg.sender && msg.value >= d.price ) // ... it is you and enought money 
                {
                    if( d.price > 0 ) 
                    { 
                        if( address( d.owner ).send( d.price ) ) // The money goes to the owner
                        {
                            money_used = d.price;   // remember how much spent
                        }
                        else throw; // problem with send()
                    }

                    d.owner = msg.sender;   // Change the ownership
                    d.price = price;        // New price
                    d.transfer = transfer;  // New transfer
                    d.expires = block.number + expires; //New expiration
                    DomainChanged( msg.sender, domain, 0 );
                }
            } 
            else  // not set for transfer, but...
            {
                if( d.price > 0 &&  msg.value >= d.price ) // ... on sale, and enough money
                {
                    if( address( d.owner ).send( d.price ) ) // The money goes to the owner
                    {
                        money_used = d.price; // remember how much spent
                    }
                    else throw; // problem with send()

                    d.owner = msg.sender;   // Change the ownership
                    d.price = price;        // New price
                    d.transfer = transfer;  // New transfer
                    d.expires = block.number + expires; // New expiration
                    DomainChanged( msg.sender, domain, 0 );
                }
            }
        }
    }
    
    if( msg.value > money_used ) // If transaction has more money than was needed
    {
        if( !msg.sender.send( msg.value - money_used ) ) throw; // We do not need your leftover
    }
}

function changeId( uint domain, uint name, uint value ) {

    if( domain == 0 ) throw;        // Prevents creating 0 domain
    if( name == 0 ) throw;          // Prevents creating 0 id
    
    Domain d = domains[ domain ];

    if( d.owner == msg.sender )     // Only owner can change the ID
    {
        Id id = d.ids[ name ];

        if( id.value == 0 ) {       // 0 means the ID was not found
            if( value != 0 ) {      // Only add non zero values
                id.value = value;   
                id.next_id = d.root_id; // Put into the head of the list
                // id.prev_id = 0;  // 0 is the default, no need to assign
                
                if( d.root_id != 0 ) 
                {
                    d.ids[ d.root_id ].prev_id = name; // link the next ID back
                }

                d.root_id = name;   
                DomainChanged( msg.sender, domain, name );
            }
        }
        else                        // The ID was found
        {
            if( value != 0 )        // Simple change of the value
            {
                id.value = value;
                DomainChanged( msg.sender, domain, name );
            }
            else                    // Deleting the ID
            {
                if( id.prev_id != 0 ) // Modify the double linked list
                {
                    d.ids[ id.prev_id ].next_id = id.next_id;   
                }
                else
                {
                    d.root_id = id.next_id;
                }

                if( id.next_id != 0 )
                {
                    d.ids[ id.next_id ].prev_id = id.prev_id;   
                }
                
                id.prev_id = 0;   // Clear the storage
                id.next_id = 0;   
                id.value = 0;   
                DomainChanged( msg.sender, domain, name );
            }
        }
    }
    
    if( msg.value > 0 ) // If transaction has any money...
    {
        if( !msg.sender.send( msg.value ) ) throw; // ... it is a mistake, so send it back
    }
}

}

    Contract ABI  
[{"constant":true,"inputs":[],"name":"root_domain","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[{"name":"domain","type":"uint256"}],"name":"getDomain","outputs":[{"name":"owner","type":"address"},{"name":"expires","type":"uint256"},{"name":"price","type":"uint256"},{"name":"transfer","type":"address"},{"name":"next_domain","type":"uint256"},{"name":"root_id","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[],"name":"n_domains","outputs":[{"name":"","type":"uint256"}],"type":"function"},{"constant":true,"inputs":[{"name":"domain","type":"uint256"},{"name":"id","type":"uint256"}],"name":"getId","outputs":[{"name":"v","type":"uint256"},{"name":"next_id","type":"uint256"},{"name":"prev_id","type":"uint256"}],"type":"function"},{"constant":false,"inputs":[{"name":"domain","type":"uint256"},{"name":"expires","type":"uint256"},{"name":"price","type":"uint256"},{"name":"transfer","type":"address"}],"name":"changeDomain","outputs":[],"type":"function"},{"constant":false,"inputs":[{"name":"domain","type":"uint256"},{"name":"name","type":"uint256"},{"name":"value","type":"uint256"}],"name":"changeId","outputs":[],"type":"function"},{"inputs":[],"type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":false,"name":"domain","type":"uint256"},{"indexed":false,"name":"id","type":"uint256"}],"name":"DomainChanged","type":"event"}]

  Contract Creation Code Switch To Opcodes View
6060604052600060006000505560006001600050556000600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908302179055505b33600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908302179055505b610de68061007b6000396000f360606040523615610074576000357c010000000000000000000000000000000000000000000000000000000090048063138716e8146100765780631a7a98e2146100995780631e9da16a1461011457806324fc65ed1461013757806375090ebf1461017a578063eb1ff845146101ad57610074565b005b61008360048050506101d7565b6040518082815260200191505060405180910390f35b6100af60048080359060200190919050506101e0565b604051808773ffffffffffffffffffffffffffffffffffffffff1681526020018681526020018581526020018473ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001965050505050505060405180910390f35b6101216004805050610296565b6040518082815260200191505060405180910390f35b610156600480803590602001909190803590602001909190505061029f565b60405180848152602001838152602001828152602001935050505060405180910390f35b6101ab6004808035906020019091908035906020019091908035906020019091908035906020019091905050610309565b005b6101d56004808035906020019091908035906020019091908035906020019091905050610a72565b005b60016000505481565b60006000600060006000600060006003600050600089815260200190815260200160002060005090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16965086508060010160005054955085508060020160005054945084508060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16935083508060040160005054925082508060050160005054915081505b5091939550919395565b60006000505481565b600060006000600060036000506000878152602001908152602001600020600050600601600050600086815260200190815260200160002060005090508060000160005054935083508060010160005054925082508060020160005054915081505b509250925092565b6000600060009150621e848085111561032557621e8480945084505b600086141561033357610002565b60036000506000878152602001908152602001600020600050905060008160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561057557338160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff02191690830217905550838160020160005081905550828160030160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908302179055508443018160010160005081905550600160005054816004016000508190555085600160005081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480156104835750617e2d600060005054105b80156104a6575060008373ffffffffffffffffffffffffffffffffffffffff1614155b1561050757828160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff0219169083021790555060008160030160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908302179055505b6001600060005054016000600050819055503373ffffffffffffffffffffffffffffffffffffffff167ff10cb5dcb691bb26c2685b3fd72f4ca4008c33eafd1ee88c27210ef1db722459876000604051808381526020018281526020019250505060405180910390a2610a21565b3373ffffffffffffffffffffffffffffffffffffffff168160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614806105d95750806001016000505443115b156106ae57338160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff02191690830217905550838160020160005081905550828160030160006101000a81548173ffffffffffffffffffffffffffffffffffffffff0219169083021790555084430181600101600050819055503373ffffffffffffffffffffffffffffffffffffffff167ff10cb5dcb691bb26c2685b3fd72f4ca4008c33eafd1ee88c27210ef1db722459876000604051808381526020018281526020019250505060405180910390a2610a20565b60008160030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156108b7573373ffffffffffffffffffffffffffffffffffffffff168160030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16148015610758575080600201600050543410155b156108b2576000816002016000505411156107e6578060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660008260020160005054604051809050600060405180830381858888f19350505050156107e0578060020160005054915081506107e5565b610002565b5b338160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff02191690830217905550838160020160005081905550828160030160006101000a81548173ffffffffffffffffffffffffffffffffffffffff0219169083021790555084430181600101600050819055503373ffffffffffffffffffffffffffffffffffffffff167ff10cb5dcb691bb26c2685b3fd72f4ca4008c33eafd1ee88c27210ef1db722459876000604051808381526020018281526020019250505060405180910390a25b610a1f565b600081600201600050541180156108d5575080600201600050543410155b15610a1e578060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660008260020160005054604051809050600060405180830381858888f193505050501561094d57806002016000505491508150610952565b610002565b338160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff02191690830217905550838160020160005081905550828160030160006101000a81548173ffffffffffffffffffffffffffffffffffffffff0219169083021790555084430181600101600050819055503373ffffffffffffffffffffffffffffffffffffffff167ff10cb5dcb691bb26c2685b3fd72f4ca4008c33eafd1ee88c27210ef1db722459876000604051808381526020018281526020019250505060405180910390a25b5b5b5b81341115610a69573373ffffffffffffffffffffffffffffffffffffffff166000833403604051809050600060405180830381858888f193505050501515610a6857610002565b5b5b505050505050565b600060006000851415610a8457610002565b6000841415610a9257610002565b6003600050600086815260200190815260200160002060005091503373ffffffffffffffffffffffffffffffffffffffff168260000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610d97578160060160005060008581526020019081526020016000206000509050600081600001600050541415610c0257600083141515610bfd578281600001600050819055508160050160005054816001016000508190555060008260050160005054141515610b9a578382600601600050600084600501600050548152602001908152602001600020600050600201600050819055505b8382600501600050819055503373ffffffffffffffffffffffffffffffffffffffff167ff10cb5dcb691bb26c2685b3fd72f4ca4008c33eafd1ee88c27210ef1db7224598686604051808381526020018281526020019250505060405180910390a25b610d96565b600083141515610c73578281600001600050819055503373ffffffffffffffffffffffffffffffffffffffff167ff10cb5dcb691bb26c2685b3fd72f4ca4008c33eafd1ee88c27210ef1db7224598686604051808381526020018281526020019250505060405180910390a2610d95565b60008160020160005054141515610cbd5780600101600050548260060160005060008360020160005054815260200190815260200160002060005060010160005081905550610cd1565b806001016000505482600501600050819055505b60008160010160005054141515610d1757806002016000505482600601600050600083600101600050548152602001908152602001600020600050600201600050819055505b6000816002016000508190555060008160010160005081905550600081600001600050819055503373ffffffffffffffffffffffffffffffffffffffff167ff10cb5dcb691bb26c2685b3fd72f4ca4008c33eafd1ee88c27210ef1db7224598686604051808381526020018281526020019250505060405180910390a25b5b5b6000341115610dde573373ffffffffffffffffffffffffffffffffffffffff16600034604051809050600060405180830381858888f193505050501515610ddd57610002565b5b5b505050505056

 

View All
Block Age txn Difficulty GasUsed Reward
View All
Block Age UncleNumber Difficulty GasUsed Reward
Make sure to use the "downvote" button for any spammy posts, and the "upvote" for interesting conversations.