Source Code
Latest 25 from a total of 2,029 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Transfer | 7470455 | 2532 days ago | IN | 0 ETH | 0.00021046 | ||||
| Mint | 7176596 | 2585 days ago | IN | 0 ETH | 0.00014072 | ||||
| Mint | 7170333 | 2587 days ago | IN | 0 ETH | 0.00158364 | ||||
| Mint | 7170180 | 2587 days ago | IN | 0 ETH | 0.0004199 | ||||
| Mint | 7170172 | 2587 days ago | IN | 0 ETH | 0.00158444 | ||||
| Mint | 7170128 | 2587 days ago | IN | 0 ETH | 0.00158399 | ||||
| Mint | 7170081 | 2587 days ago | IN | 0 ETH | 0.00158354 | ||||
| Mint | 7170061 | 2587 days ago | IN | 0 ETH | 0.0004199 | ||||
| Mint | 7170051 | 2587 days ago | IN | 0 ETH | 0.00041991 | ||||
| Mint | 7169973 | 2587 days ago | IN | 0 ETH | 0.00158399 | ||||
| Mint | 7169808 | 2587 days ago | IN | 0 ETH | 0.00117701 | ||||
| Mint | 7169649 | 2587 days ago | IN | 0 ETH | 0.00158399 | ||||
| Mint | 7169485 | 2587 days ago | IN | 0 ETH | 0.00158399 | ||||
| Transfer | 7169453 | 2587 days ago | IN | 0 ETH | 0.00002735 | ||||
| Mint | 7169445 | 2587 days ago | IN | 0 ETH | 0.00158364 | ||||
| Mint | 7169430 | 2587 days ago | IN | 0 ETH | 0.00158444 | ||||
| Mint | 7169296 | 2587 days ago | IN | 0 ETH | 0.0004199 | ||||
| Mint | 7169244 | 2587 days ago | IN | 0 ETH | 0.00158399 | ||||
| Mint | 7169235 | 2587 days ago | IN | 0 ETH | 0.00158444 | ||||
| Mint | 7169222 | 2587 days ago | IN | 0 ETH | 0.00158399 | ||||
| Mint | 7169178 | 2587 days ago | IN | 0 ETH | 0.00158444 | ||||
| Mint | 7169167 | 2587 days ago | IN | 0 ETH | 0.00158399 | ||||
| Mint | 7169139 | 2587 days ago | IN | 0 ETH | 0.00158399 | ||||
| Mint | 7169103 | 2587 days ago | IN | 0 ETH | 0.00158274 | ||||
| Mint | 7169087 | 2587 days ago | IN | 0 ETH | 0.00158354 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
SimpleNonceMinter
Compiler Version
v0.4.24+commit.e67f0147
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2018-12-10
*/
pragma solidity ^0.4.24;
contract ICollectable {
function mint(uint32 delegateID, address to) public returns (uint);
function transferFrom(address from, address to, uint256 tokenId) public;
function approve(address to, uint256 tokenId) public;
function safeTransferFrom(address from, address to, uint256 tokenId, bytes memory data) public;
function safeTransferFrom(address from, address to, uint256 tokenId) public;
}
contract Ownable {
address public owner;
constructor() public {
owner = msg.sender;
}
function setOwner(address _owner) public onlyOwner {
owner = _owner;
}
function getOwner() public view returns (address) {
return owner;
}
modifier onlyOwner {
require(msg.sender == owner);
_;
}
}
contract SimpleNonceMinter is Ownable {
ICollectable collectable;
uint32 delegateID;
mapping(uint => bool) public nonces;
mapping(address => bool) public signers;
constructor(ICollectable _collectable, uint32 _delegateID) public {
collectable = _collectable;
delegateID = _delegateID;
}
function setCanSign(address _signer, bool _can) public onlyOwner {
signers[_signer] = _can;
}
function mint(bytes memory sig, address to, uint nonce, bool add27) public returns (uint) {
require(!nonces[nonce], "can only claim once");
bytes32 message = prefixed(keccak256(abi.encodePacked(address(this), nonce)));
require(signers[getSigner(message, sig, add27)], "must be signed by approved signer");
nonces[nonce] = true;
return collectable.mint(delegateID, to);
}
function getSigner(bytes32 message, bytes memory sig, bool add27) internal pure returns (address) {
uint8 v;
bytes32 r;
bytes32 s;
(v, r, s) = splitSignature(sig);
if (add27) {
v += 27;
}
return ecrecover(message, v, r, s);
}
function prefixed(bytes32 hash) internal pure returns (bytes32) {
return keccak256(abi.encodePacked("\x19Ethereum Signed Message:\n32", hash));
}
function splitSignature(bytes memory sig) internal pure returns (uint8 v, bytes32 r, bytes32 s) {
require(sig.length == 65, "incorrect signature length");
assembly {
// first 32 bytes, after the length prefix
r := mload(add(sig, 32))
// second 32 bytes
s := mload(add(sig, 64))
// final byte (first byte of the next 32 bytes)
v := byte(0, mload(add(sig, 96)))
}
return (v, r, s);
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":false,"inputs":[{"name":"_owner","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"nonces","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"signers","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_signer","type":"address"},{"name":"_can","type":"bool"}],"name":"setCanSign","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"sig","type":"bytes"},{"name":"to","type":"address"},{"name":"nonce","type":"uint256"},{"name":"add27","type":"bool"}],"name":"mint","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_collectable","type":"address"},{"name":"_delegateID","type":"uint32"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"}]Contract Creation Code
608060405234801561001057600080fd5b5060405160408061081483398101604052805160209091015160008054600160a060020a031990811633179091556001805463ffffffff909316740100000000000000000000000000000000000000000260a060020a63ffffffff0219600160a060020a0390951693909216929092179290921691909117905561077b806100996000396000f3006080604052600436106100825763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166313af40358114610087578063141a468c146100aa578063736c0d5b146100d6578063893d20e8146100f75780638da5cb5b14610128578063affecb9b1461013d578063c3a7787114610163575b600080fd5b34801561009357600080fd5b506100a8600160a060020a03600435166101e5565b005b3480156100b657600080fd5b506100c260043561022b565b604080519115158252519081900360200190f35b3480156100e257600080fd5b506100c2600160a060020a0360043516610240565b34801561010357600080fd5b5061010c610255565b60408051600160a060020a039092168252519081900360200190f35b34801561013457600080fd5b5061010c610264565b34801561014957600080fd5b506100a8600160a060020a03600435166024351515610273565b34801561016f57600080fd5b506040805160206004803580820135601f81018490048402850184019095528484526101d394369492936024939284019190819084018382808284375094975050508335600160a060020a03169450505060208201359160400135151590506102b5565b60408051918252519081900360200190f35b600054600160a060020a031633146101fc57600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60026020526000908152604090205460ff1681565b60036020526000908152604090205460ff1681565b600054600160a060020a031690565b600054600160a060020a031681565b600054600160a060020a0316331461028a57600080fd5b600160a060020a03919091166000908152600360205260409020805460ff1916911515919091179055565b600082815260026020526040812054819060ff161561033557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f63616e206f6e6c7920636c61696d206f6e636500000000000000000000000000604482015290519081900360640190fd5b6103e230856040516020018083600160a060020a0316600160a060020a03166c01000000000000000000000000028152601401828152602001925050506040516020818303038152906040526040518082805190602001908083835b602083106103b05780518252601f199092019160209182019101610391565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902061057f565b9050600360006103f3838987610629565b600160a060020a0316815260208101919091526040016000205460ff1615156104a357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f6d757374206265207369676e656420627920617070726f766564207369676e6560448201527f7200000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6000848152600260209081526040808320805460ff191660019081179091555481517f3e6eaa0300000000000000000000000000000000000000000000000000000000815263ffffffff740100000000000000000000000000000000000000008304166004820152600160a060020a038a8116602483015292519290911693633e6eaa039360448084019491939192918390030190829087803b15801561054957600080fd5b505af115801561055d573d6000803e3d6000fd5b505050506040513d602081101561057357600080fd5b50519695505050505050565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c80830185905283518084039091018152605c909201928390528151600093918291908401908083835b602083106105f75780518252601f1990920191602091820191016105d8565b5181516020939093036101000a6000190180199091169216919091179052604051920182900390912095945050505050565b600080600080610638866106bc565b91945092509050841561064c57601b830192505b60408051600080825260208083018085528b905260ff8716838501526060830186905260808301859052925160019360a0808501949193601f19840193928390039091019190865af11580156106a6573d6000803e3d6000fd5b5050604051601f19015198975050505050505050565b60008060008351604114151561073357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f696e636f7272656374207369676e6174757265206c656e677468000000000000604482015290519081900360640190fd5b5050506020810151604082015160609092015160001a929091905600a165627a7a72305820f5c530d83438bb34a2389c83c080211a1a011a904f06a198f68053f331ed3ade0029000000000000000000000000a5e5be69c923c701ae6ac8f1f5936af3ae610c680000000000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x6080604052600436106100825763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166313af40358114610087578063141a468c146100aa578063736c0d5b146100d6578063893d20e8146100f75780638da5cb5b14610128578063affecb9b1461013d578063c3a7787114610163575b600080fd5b34801561009357600080fd5b506100a8600160a060020a03600435166101e5565b005b3480156100b657600080fd5b506100c260043561022b565b604080519115158252519081900360200190f35b3480156100e257600080fd5b506100c2600160a060020a0360043516610240565b34801561010357600080fd5b5061010c610255565b60408051600160a060020a039092168252519081900360200190f35b34801561013457600080fd5b5061010c610264565b34801561014957600080fd5b506100a8600160a060020a03600435166024351515610273565b34801561016f57600080fd5b506040805160206004803580820135601f81018490048402850184019095528484526101d394369492936024939284019190819084018382808284375094975050508335600160a060020a03169450505060208201359160400135151590506102b5565b60408051918252519081900360200190f35b600054600160a060020a031633146101fc57600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60026020526000908152604090205460ff1681565b60036020526000908152604090205460ff1681565b600054600160a060020a031690565b600054600160a060020a031681565b600054600160a060020a0316331461028a57600080fd5b600160a060020a03919091166000908152600360205260409020805460ff1916911515919091179055565b600082815260026020526040812054819060ff161561033557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f63616e206f6e6c7920636c61696d206f6e636500000000000000000000000000604482015290519081900360640190fd5b6103e230856040516020018083600160a060020a0316600160a060020a03166c01000000000000000000000000028152601401828152602001925050506040516020818303038152906040526040518082805190602001908083835b602083106103b05780518252601f199092019160209182019101610391565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902061057f565b9050600360006103f3838987610629565b600160a060020a0316815260208101919091526040016000205460ff1615156104a357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f6d757374206265207369676e656420627920617070726f766564207369676e6560448201527f7200000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6000848152600260209081526040808320805460ff191660019081179091555481517f3e6eaa0300000000000000000000000000000000000000000000000000000000815263ffffffff740100000000000000000000000000000000000000008304166004820152600160a060020a038a8116602483015292519290911693633e6eaa039360448084019491939192918390030190829087803b15801561054957600080fd5b505af115801561055d573d6000803e3d6000fd5b505050506040513d602081101561057357600080fd5b50519695505050505050565b604080517f19457468657265756d205369676e6564204d6573736167653a0a333200000000602080830191909152603c80830185905283518084039091018152605c909201928390528151600093918291908401908083835b602083106105f75780518252601f1990920191602091820191016105d8565b5181516020939093036101000a6000190180199091169216919091179052604051920182900390912095945050505050565b600080600080610638866106bc565b91945092509050841561064c57601b830192505b60408051600080825260208083018085528b905260ff8716838501526060830186905260808301859052925160019360a0808501949193601f19840193928390039091019190865af11580156106a6573d6000803e3d6000fd5b5050604051601f19015198975050505050505050565b60008060008351604114151561073357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f696e636f7272656374207369676e6174757265206c656e677468000000000000604482015290519081900360640190fd5b5050506020810151604082015160609092015160001a929091905600a165627a7a72305820f5c530d83438bb34a2389c83c080211a1a011a904f06a198f68053f331ed3ade0029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000a5e5be69c923c701ae6ac8f1f5936af3ae610c680000000000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : _collectable (address): 0xa5e5be69C923C701aE6Ac8F1F5936Af3Ae610C68
Arg [1] : _delegateID (uint32): 0
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000a5e5be69c923c701ae6ac8f1f5936af3ae610c68
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000000
Swarm Source
bzzr://f5c530d83438bb34a2389c83c080211a1a011a904f06a198f68053f331ed3ade
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
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.