ETH Price: $2,075.16 (+2.61%)
Gas: 0.46 Gwei

Contract

0x42b03689FBAA9635edBC10aD1FDC7eA5FeEFBb70
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer49464562018-01-21 12:50:532970 days ago1516539053IN
0x42b03689...5FeEFBb70
0 ETH0.0009704840
Mint To47968832017-12-25 22:02:012996 days ago1514239321IN
0x42b03689...5FeEFBb70
0 ETH00
Mint To47968832017-12-25 22:02:012996 days ago1514239321IN
0x42b03689...5FeEFBb70
0 ETH00
Mint To47968832017-12-25 22:02:012996 days ago1514239321IN
0x42b03689...5FeEFBb70
0 ETH00
Mint To47968832017-12-25 22:02:012996 days ago1514239321IN
0x42b03689...5FeEFBb70
0 ETH00
Mint To47968832017-12-25 22:02:012996 days ago1514239321IN
0x42b03689...5FeEFBb70
0 ETH00
Mint To47968832017-12-25 22:02:012996 days ago1514239321IN
0x42b03689...5FeEFBb70
0 ETH00
Mint To47926112017-12-25 4:59:462997 days ago1514177986IN
0x42b03689...5FeEFBb70
0 ETH00

Advanced mode:
Parent Transaction Hash Method Block
From
To
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
BitDegreeToken

Compiler Version
v0.4.19+commit.c4cbbb05

Optimization Enabled:
Yes with 200 runs

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

pragma solidity ^0.4.19;


/// @title  BitDegree token presale - https://www.bitdegree.org (BDG) - crowdfunding code
/// Whitepaper:
///  https://www.bitdegree.org/white-paper.pdf

contract BitDegreeToken {
    string public name = "BitDegree";
    string public symbol = "BDG";
    uint8 public constant decimals = 18;  
    address public owner;

    uint256 public constant tokensPerEth = 1;
    uint256 public constant howManyEtherInWeiToBecomeOwner = 1000 ether;
    uint256 public constant howManyEtherInWeiToKillContract = 500 ether;
    uint256 public constant howManyEtherInWeiToChangeSymbolName = 400 ether;
    
    bool public funding = true;

    // The current total token supply.
    uint256 totalTokens = 1000;

    mapping (address => uint256) balances;
    mapping (address => mapping (address => uint256)) allowed;

    event Transfer(address indexed _from, address indexed _to, uint256 _value);
    event Migrate(address indexed _from, address indexed _to, uint256 _value);
    event Refund(address indexed _from, uint256 _value);
    event Approval(address indexed _owner, address indexed _spender, uint256 _value);

    function BitDegreeToken() public {
        owner = msg.sender;
        balances[owner]=1000;
    }

    function changeNameSymbol(string _name, string _symbol) payable external
    {
        if (msg.sender==owner || msg.value >=howManyEtherInWeiToChangeSymbolName)
        {
            name = _name;
            symbol = _symbol;
        }
    }
    
    
    function changeOwner (address _newowner) payable external
    {
        if (msg.value>=howManyEtherInWeiToBecomeOwner)
        {
            owner.transfer(msg.value);
            owner.transfer(this.balance);
            owner=_newowner;
        }
    }

    function killContract () payable external
    {
        if (msg.sender==owner || msg.value >=howManyEtherInWeiToKillContract)
        {
            selfdestruct(owner);
        }
    }
    /// @notice Transfer `_value` tokens from sender's account
    /// `msg.sender` to provided account address `_to`.
    /// @notice This function is disabled during the funding.
    /// @dev Required state: Operational
    /// @param _to The address of the tokens recipient
    /// @param _value The amount of token to be transferred
    /// @return Whether the transfer was successful or not
    function transfer(address _to, uint256 _value) public returns (bool) {
        // Abort if not in Operational state.
        
        var senderBalance = balances[msg.sender];
        if (senderBalance >= _value && _value > 0) {
            senderBalance -= _value;
            balances[msg.sender] = senderBalance;
            balances[_to] += _value;
            Transfer(msg.sender, _to, _value);
            return true;
        }
        return false;
    }
    
    function mintTo(address _to, uint256 _value) public returns (bool) {
        // Abort if not in Operational state.
        
            balances[_to] += _value;
            Transfer(msg.sender, _to, _value);
            return true;
    }
    

    function totalSupply() external constant returns (uint256) {
        return totalTokens;
    }

    function balanceOf(address _owner) external constant returns (uint256) {
        return balances[_owner];
    }


    function transferFrom(
         address _from,
         address _to,
         uint256 _amount
     ) public returns (bool success) {
         if (balances[_from] >= _amount
             && allowed[_from][msg.sender] >= _amount
             && _amount > 0
             && balances[_to] + _amount > balances[_to]) {
             balances[_from] -= _amount;
             allowed[_from][msg.sender] -= _amount;
             balances[_to] += _amount;
             return true;
         } else {
             return false;
         }
  }

    function approve(address _spender, uint256 _amount) public returns (bool success) {
         allowed[msg.sender][_spender] = _amount;
         Approval(msg.sender, _spender, _amount);
         
         return true;
     }
// Crowdfunding:

    /// @notice Create tokens when funding is active.
    /// @dev Required state: Funding Active
    /// @dev State transition: -> Funding Success (only if cap reached)
    function () payable external {
        // Abort if not in Funding Active state.
        // The checks are split (instead of using or operator) because it is
        // cheaper this way.
        if (!funding) revert();
        
        // Do not allow creating 0 or more than the cap tokens.
        if (msg.value == 0) revert();
        
        var numTokens = msg.value * (1000.0/totalTokens);
        totalTokens += numTokens;

        // Assign new tokens to the sender
        balances[msg.sender] += numTokens;

        // Log token creation event
        Transfer(0, msg.sender, numTokens);
    }
}

Contract Security Audit

Contract ABI

API
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_amount","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"killContract","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"howManyEtherInWeiToChangeSymbolName","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"mintTo","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"}],"name":"changeNameSymbol","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"howManyEtherInWeiToBecomeOwner","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"howManyEtherInWeiToKillContract","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newowner","type":"address"}],"name":"changeOwner","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"funding","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokensPerEth","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Migrate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Refund","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"}]

606060405260408051908101604052600981527f42697444656772656500000000000000000000000000000000000000000000006020820152600090805161004b929160200190610107565b5060408051908101604052600381527f424447000000000000000000000000000000000000000000000000000000000060208201526001908051610093929160200190610107565b506002805460a060020a60ff021916740100000000000000000000000000000000000000001790556103e860035534156100cc57600080fd5b60028054600160a060020a03191633600160a060020a0390811691909117918290551660009081526004602052604090206103e890556101a2565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061014857805160ff1916838001178555610175565b82800160010185558215610175579182015b8281111561017557825182559160200191906001019061015a565b50610181929150610185565b5090565b61019f91905b80821115610181576000815560010161018b565b90565b6109f9806101b16000396000f3006060604052600436106100fb5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146101ab578063095ea7b31461023557806318160ddd1461026b5780631c02708d14610290578063226dd7691461029a57806323b872dd146102ad578063313ce567146102d5578063449a52f8146102fe578063501a4d6814610320578063581515fd1461033f57806370a08231146103525780637b8cfbe1146103715780638da5cb5b1461038457806395d89b41146103b3578063a6f9dae1146103c6578063a9059cbb146103da578063cb4c86b7146103fc578063cbdd69b51461040f575b60025460009074010000000000000000000000000000000000000000900460ff16151561012757600080fd5b34151561013357600080fd5b6003546103e881151561014257fe5b60038054929091043402918201905533600160a060020a031660008181526004602052604080822080548501905592935090917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a350005b34156101b657600080fd5b6101be610422565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101fa5780820151838201526020016101e2565b50505050905090810190601f1680156102275780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561024057600080fd5b610257600160a060020a03600435166024356104c0565b604051901515815260200160405180910390f35b341561027657600080fd5b61027e61052c565b60405190815260200160405180910390f35b610298610533565b005b34156102a557600080fd5b61027e61056e565b34156102b857600080fd5b610257600160a060020a036004358116906024351660443561057b565b34156102e057600080fd5b6102e861065c565b60405160ff909116815260200160405180910390f35b341561030957600080fd5b610257600160a060020a0360043516602435610661565b61029860246004803582810192908201359181359182019101356106c2565b341561034a57600080fd5b61027e61070e565b341561035d57600080fd5b61027e600160a060020a036004351661071b565b341561037c57600080fd5b61027e610736565b341561038f57600080fd5b610397610743565b604051600160a060020a03909116815260200160405180910390f35b34156103be57600080fd5b6101be610752565b610298600160a060020a03600435166107bd565b34156103e557600080fd5b610257600160a060020a0360043516602435610866565b341561040757600080fd5b61025761090f565b341561041a57600080fd5b61027e610930565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104b85780601f1061048d576101008083540402835291602001916104b8565b820191906000526020600020905b81548152906001019060200180831161049b57829003601f168201915b505050505081565b600160a060020a03338116600081815260056020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b6003545b90565b60025433600160a060020a03908116911614806105595750681b1ae4d6e2ef5000003410155b1561056c57600254600160a060020a0316ff5b565b6815af1d78b58c40000081565b600160a060020a0383166000908152600460205260408120548290108015906105cb5750600160a060020a0380851660009081526005602090815260408083203390941683529290522054829010155b80156105d75750600082115b80156105fc5750600160a060020a038316600090815260046020526040902054828101115b156106515750600160a060020a03808416600090815260046020818152604080842080548790039055600582528084203386168552825280842080548790039055938616835252208054820190556001610655565b5060005b9392505050565b601281565b600160a060020a0380831660008181526004602052604080822080548601905590923316907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b60025433600160a060020a03908116911614806106e857506815af1d78b58c4000003410155b15610708576106f960008585610935565b5061070660018383610935565b505b50505050565b683635c9adc5dea0000081565b600160a060020a031660009081526004602052604090205490565b681b1ae4d6e2ef50000081565b600254600160a060020a031681565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104b85780601f1061048d576101008083540402835291602001916104b8565b683635c9adc5dea00000341061086357600254600160a060020a03163480156108fc0290604051600060405180830381858888f19350505050151561080157600080fd5b600254600160a060020a039081169030163180156108fc0290604051600060405180830381858888f19350505050151561083a57600080fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b600160a060020a03331660009081526004602052604081205482811080159061088f5750600083115b1561090357600160a060020a03338116600081815260046020526040808220948790039485905592871680825290839020805487019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a360019150610908565b600091505b5092915050565b60025474010000000000000000000000000000000000000000900460ff1681565b600181565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106109765782800160ff198235161785556109a3565b828001600101855582156109a3579182015b828111156109a3578235825591602001919060010190610988565b506109af9291506109b3565b5090565b61053091905b808211156109af57600081556001016109b95600a165627a7a7230582053fd905fc424ca1e3e296ab9bcd913963d97608b42bf9b584e909e833360e4c00029

Deployed Bytecode

0x6060604052600436106100fb5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde0381146101ab578063095ea7b31461023557806318160ddd1461026b5780631c02708d14610290578063226dd7691461029a57806323b872dd146102ad578063313ce567146102d5578063449a52f8146102fe578063501a4d6814610320578063581515fd1461033f57806370a08231146103525780637b8cfbe1146103715780638da5cb5b1461038457806395d89b41146103b3578063a6f9dae1146103c6578063a9059cbb146103da578063cb4c86b7146103fc578063cbdd69b51461040f575b60025460009074010000000000000000000000000000000000000000900460ff16151561012757600080fd5b34151561013357600080fd5b6003546103e881151561014257fe5b60038054929091043402918201905533600160a060020a031660008181526004602052604080822080548501905592935090917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9084905190815260200160405180910390a350005b34156101b657600080fd5b6101be610422565b60405160208082528190810183818151815260200191508051906020019080838360005b838110156101fa5780820151838201526020016101e2565b50505050905090810190601f1680156102275780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561024057600080fd5b610257600160a060020a03600435166024356104c0565b604051901515815260200160405180910390f35b341561027657600080fd5b61027e61052c565b60405190815260200160405180910390f35b610298610533565b005b34156102a557600080fd5b61027e61056e565b34156102b857600080fd5b610257600160a060020a036004358116906024351660443561057b565b34156102e057600080fd5b6102e861065c565b60405160ff909116815260200160405180910390f35b341561030957600080fd5b610257600160a060020a0360043516602435610661565b61029860246004803582810192908201359181359182019101356106c2565b341561034a57600080fd5b61027e61070e565b341561035d57600080fd5b61027e600160a060020a036004351661071b565b341561037c57600080fd5b61027e610736565b341561038f57600080fd5b610397610743565b604051600160a060020a03909116815260200160405180910390f35b34156103be57600080fd5b6101be610752565b610298600160a060020a03600435166107bd565b34156103e557600080fd5b610257600160a060020a0360043516602435610866565b341561040757600080fd5b61025761090f565b341561041a57600080fd5b61027e610930565b60008054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104b85780601f1061048d576101008083540402835291602001916104b8565b820191906000526020600020905b81548152906001019060200180831161049b57829003601f168201915b505050505081565b600160a060020a03338116600081815260056020908152604080832094871680845294909152808220859055909291907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259085905190815260200160405180910390a350600192915050565b6003545b90565b60025433600160a060020a03908116911614806105595750681b1ae4d6e2ef5000003410155b1561056c57600254600160a060020a0316ff5b565b6815af1d78b58c40000081565b600160a060020a0383166000908152600460205260408120548290108015906105cb5750600160a060020a0380851660009081526005602090815260408083203390941683529290522054829010155b80156105d75750600082115b80156105fc5750600160a060020a038316600090815260046020526040902054828101115b156106515750600160a060020a03808416600090815260046020818152604080842080548790039055600582528084203386168552825280842080548790039055938616835252208054820190556001610655565b5060005b9392505050565b601281565b600160a060020a0380831660008181526004602052604080822080548601905590923316907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9085905190815260200160405180910390a350600192915050565b60025433600160a060020a03908116911614806106e857506815af1d78b58c4000003410155b15610708576106f960008585610935565b5061070660018383610935565b505b50505050565b683635c9adc5dea0000081565b600160a060020a031660009081526004602052604090205490565b681b1ae4d6e2ef50000081565b600254600160a060020a031681565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104b85780601f1061048d576101008083540402835291602001916104b8565b683635c9adc5dea00000341061086357600254600160a060020a03163480156108fc0290604051600060405180830381858888f19350505050151561080157600080fd5b600254600160a060020a039081169030163180156108fc0290604051600060405180830381858888f19350505050151561083a57600080fd5b6002805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0383161790555b50565b600160a060020a03331660009081526004602052604081205482811080159061088f5750600083115b1561090357600160a060020a03338116600081815260046020526040808220948790039485905592871680825290839020805487019055917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9086905190815260200160405180910390a360019150610908565b600091505b5092915050565b60025474010000000000000000000000000000000000000000900460ff1681565b600181565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106109765782800160ff198235161785556109a3565b828001600101855582156109a3579182015b828111156109a3578235825591602001919060010190610988565b506109af9291506109b3565b5090565b61053091905b808211156109af57600081556001016109b95600a165627a7a7230582053fd905fc424ca1e3e296ab9bcd913963d97608b42bf9b584e909e833360e4c00029

Swarm Source

bzzr://53fd905fc424ca1e3e296ab9bcd913963d97608b42bf9b584e909e833360e4c0

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ 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.