More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 9,045 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Write | 8892231 | 1873 days ago | IN | 0 ETH | 0.00013988 | ||||
Write | 8891957 | 1873 days ago | IN | 0 ETH | 0.00002797 | ||||
Write | 8891716 | 1873 days ago | IN | 0 ETH | 0.00002804 | ||||
Write | 8891471 | 1873 days ago | IN | 0 ETH | 0.00002804 | ||||
Write | 8891208 | 1873 days ago | IN | 0 ETH | 0.00002804 | ||||
Write | 8890924 | 1873 days ago | IN | 0 ETH | 0.00035892 | ||||
Write | 8890694 | 1873 days ago | IN | 0 ETH | 0.00005608 | ||||
Write | 8890400 | 1873 days ago | IN | 0 ETH | 0.00040286 | ||||
Write | 8890152 | 1873 days ago | IN | 0 ETH | 0.00055954 | ||||
Write | 8889913 | 1873 days ago | IN | 0 ETH | 0.00055954 | ||||
Write | 8889661 | 1873 days ago | IN | 0 ETH | 0.00056082 | ||||
Write | 8889527 | 1873 days ago | IN | 0 ETH | 0.00056082 | ||||
Write | 8889308 | 1873 days ago | IN | 0 ETH | 0.00056082 | ||||
Write | 8888907 | 1873 days ago | IN | 0 ETH | 0.00009253 | ||||
Write | 8888633 | 1873 days ago | IN | 0 ETH | 0.00005608 | ||||
Write | 8888385 | 1873 days ago | IN | 0 ETH | 0.00005595 | ||||
Write | 8883202 | 1874 days ago | IN | 0 ETH | 0.00013988 | ||||
Write | 8882930 | 1874 days ago | IN | 0 ETH | 0.00022381 | ||||
Write | 8882695 | 1874 days ago | IN | 0 ETH | 0.00016824 | ||||
Write | 8882444 | 1874 days ago | IN | 0 ETH | 0.00013988 | ||||
Write | 8882188 | 1874 days ago | IN | 0 ETH | 0.00004206 | ||||
Write | 8881925 | 1874 days ago | IN | 0 ETH | 0.00004206 | ||||
Write | 8881653 | 1874 days ago | IN | 0 ETH | 0.00008393 | ||||
Write | 8881376 | 1875 days ago | IN | 0 ETH | 0.00008672 | ||||
Write | 8881120 | 1875 days ago | IN | 0 ETH | 0.00004 |
Loading...
Loading
Contract Name:
Lighthouse
Compiler Version
v0.4.25+commit.59dbf8f1
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-10-08 */ pragma solidity ^0.4.24; // Searcher is an interface for contracts that want to be notified of incoming data // contract Searcher { // poke is called when new data arrives // function poke() public; // this is called to ensure that only valid Searchers can be added to the Lighthouse - returns an arbitrarily chosen number // function identify() external pure returns(uint) { return 0xda4b055; } } // for operation of this contract see the readme file. // contract Lighthouse { address public auth = msg.sender; // ownable model. No real value in making it transferrable. Searcher seeker; // a single contract that can be notified of data changes uint value; // holds all the data bit fiddled into a single 32 byte word. uint maxAge; // if non zero, sets a limit to data validity // admin functions modifier onlyAuth { require(auth == msg.sender, "Unauthorised access"); _; } function changeAuth(address newAuth) public onlyAuth { auth = newAuth; } function changeSearcher(Searcher newSeeker) public onlyAuth { seeker = newSeeker; require(seeker.identify() == 0xda4b055,"invalid searcher"); } function setMaxAge(uint newMaxAge) public onlyAuth { maxAge = newMaxAge; } function notTooLongSinceUpdated() public view returns (bool) { uint since = now - ((value >> 128) & 0x000000000000000000000000000000000000000000000000ffffffffffffffff); return (since < maxAge) || (maxAge == 0); } function peekData() external view returns (uint128 v,bool b) { v = uint128(value); b = notTooLongSinceUpdated() && value != 0; return; } function peekUpdated() external view returns (uint32 v,bool b) { uint v2 = value >> 128; v = uint32(v2); b = notTooLongSinceUpdated() && value != 0; return; } function peekLastNonce() external view returns (uint32 v,bool b) { uint v2 = value >> 192; v = uint32(v2); b = notTooLongSinceUpdated() && value != 0; return; } function peek() external view returns (bytes32 v ,bool ok) { v = bytes32(value & 0x00000000000000000000000000000000ffffffffffffffffffffffffffffffff); ok = notTooLongSinceUpdated() && value != 0; return; } function read() external view returns (bytes32 x) { require(notTooLongSinceUpdated() && value != 0, "Invalid data stored"); return bytes32(value & 0x00000000000000000000000000000000ffffffffffffffffffffffffffffffff); } function write(uint DataValue, uint nonce) external onlyAuth { require ((DataValue >> 128) == 0, "Value too large"); require ((nonce >> 32) == 0, "Nonce too large"); value = DataValue + (nonce << 192) + (now << 128) ; if (address(seeker) != address(0)) { seeker.poke(); } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"newAuth","type":"address"}],"name":"changeAuth","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"peekData","outputs":[{"name":"v","type":"uint128"},{"name":"b","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"read","outputs":[{"name":"x","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"peek","outputs":[{"name":"v","type":"bytes32"},{"name":"ok","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newMaxAge","type":"uint256"}],"name":"setMaxAge","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"DataValue","type":"uint256"},{"name":"nonce","type":"uint256"}],"name":"write","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"peekUpdated","outputs":[{"name":"v","type":"uint32"},{"name":"b","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"peekLastNonce","outputs":[{"name":"v","type":"uint32"},{"name":"b","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newSeeker","type":"address"}],"name":"changeSearcher","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"auth","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"notTooLongSinceUpdated","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}]
Contract Creation Code
608060405260008054600160a060020a0319163317905534801561002257600080fd5b50610838806100326000396000f3006080604052600436106100ae5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166322969eac81146100b3578063420b81f6146100d657806357de26a41461011757806359e02dd71461013e5780635ae28fc91461016c5780639c0e3f7a14610184578063bdf384a81461019f578063becfbf69146101d4578063d6e848ac146101e9578063de9375f21461020a578063e2f906321461023b575b600080fd5b3480156100bf57600080fd5b506100d4600160a060020a0360043516610264565b005b3480156100e257600080fd5b506100eb6102e3565b604080516fffffffffffffffffffffffffffffffff909316835290151560208301528051918290030190f35b34801561012357600080fd5b5061012c610303565b60408051918252519081900360200190f35b34801561014a57600080fd5b50610153610389565b6040805192835290151560208301528051918290030190f35b34801561017857600080fd5b506100d46004356103a8565b34801561019057600080fd5b506100d46004356024356103fd565b3480156101ab57600080fd5b506101b46105e3565b6040805163ffffffff909316835290151560208301528051918290030190f35b3480156101e057600080fd5b506101b4610619565b3480156101f557600080fd5b506100d4600160a060020a0360043516610643565b34801561021657600080fd5b5061021f6107a0565b60408051600160a060020a039092168252519081900360200190f35b34801561024757600080fd5b506102506107af565b604080519115158252519081900360200190f35b600054600160a060020a031633146102b4576040805160e560020a62461bcd02815260206004820152601360248201526000805160206107ed833981519152604482015290519081900360640190fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60025460006102f06107af565b80156102fd575060025415155b90509091565b600061030d6107af565b801561031a575060025415155b1515610370576040805160e560020a62461bcd02815260206004820152601360248201527f496e76616c696420646174612073746f72656400000000000000000000000000604482015290519081900360640190fd5b506002546fffffffffffffffffffffffffffffffff1690565b6002546fffffffffffffffffffffffffffffffff1660006102f06107af565b600054600160a060020a031633146103f8576040805160e560020a62461bcd02815260206004820152601360248201526000805160206107ed833981519152604482015290519081900360640190fd5b600355565b600054600160a060020a0316331461044d576040805160e560020a62461bcd02815260206004820152601360248201526000805160206107ed833981519152604482015290519081900360640190fd5b7001000000000000000000000000000000008204156104b6576040805160e560020a62461bcd02815260206004820152600f60248201527f56616c756520746f6f206c617267650000000000000000000000000000000000604482015290519081900360640190fd5b640100000000810415610513576040805160e560020a62461bcd02815260206004820152600f60248201527f4e6f6e636520746f6f206c617267650000000000000000000000000000000000604482015290519081900360640190fd5b780100000000000000000000000000000000000000000000000081028201700100000000000000000000000000000000420201600255600154600160a060020a0316156105df57600160009054906101000a9004600160a060020a0316600160a060020a031663181783586040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401600060405180830381600087803b1580156105c657600080fd5b505af11580156105da573d6000803e3d6000fd5b505050505b5050565b60025470010000000000000000000000000000000090046000816106056107af565b8015610612575060025415155b9150509091565b600254780100000000000000000000000000000000000000000000000090046000816106056107af565b600054600160a060020a03163314610693576040805160e560020a62461bcd02815260206004820152601360248201526000805160206107ed833981519152604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038381169190911791829055604080517feeb728660000000000000000000000000000000000000000000000000000000081529051929091169163eeb72866916004808201926020929091908290030181600087803b15801561071757600080fd5b505af115801561072b573d6000803e3d6000fd5b505050506040513d602081101561074157600080fd5b5051630da4b0551461079d576040805160e560020a62461bcd02815260206004820152601060248201527f696e76616c696420736561726368657200000000000000000000000000000000604482015290519081900360640190fd5b50565b600054600160a060020a031681565b600254600354600091700100000000000000000000000000000000900467ffffffffffffffff164203908110806107e65750600354155b915050905600556e617574686f72697365642061636365737300000000000000000000000000a165627a7a723058205dca79bc6ab7d02d47bb4127d4f2cb4ddf33771c7ba6c7b13ca8bf584586376c0029
Deployed Bytecode
0x6080604052600436106100ae5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166322969eac81146100b3578063420b81f6146100d657806357de26a41461011757806359e02dd71461013e5780635ae28fc91461016c5780639c0e3f7a14610184578063bdf384a81461019f578063becfbf69146101d4578063d6e848ac146101e9578063de9375f21461020a578063e2f906321461023b575b600080fd5b3480156100bf57600080fd5b506100d4600160a060020a0360043516610264565b005b3480156100e257600080fd5b506100eb6102e3565b604080516fffffffffffffffffffffffffffffffff909316835290151560208301528051918290030190f35b34801561012357600080fd5b5061012c610303565b60408051918252519081900360200190f35b34801561014a57600080fd5b50610153610389565b6040805192835290151560208301528051918290030190f35b34801561017857600080fd5b506100d46004356103a8565b34801561019057600080fd5b506100d46004356024356103fd565b3480156101ab57600080fd5b506101b46105e3565b6040805163ffffffff909316835290151560208301528051918290030190f35b3480156101e057600080fd5b506101b4610619565b3480156101f557600080fd5b506100d4600160a060020a0360043516610643565b34801561021657600080fd5b5061021f6107a0565b60408051600160a060020a039092168252519081900360200190f35b34801561024757600080fd5b506102506107af565b604080519115158252519081900360200190f35b600054600160a060020a031633146102b4576040805160e560020a62461bcd02815260206004820152601360248201526000805160206107ed833981519152604482015290519081900360640190fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60025460006102f06107af565b80156102fd575060025415155b90509091565b600061030d6107af565b801561031a575060025415155b1515610370576040805160e560020a62461bcd02815260206004820152601360248201527f496e76616c696420646174612073746f72656400000000000000000000000000604482015290519081900360640190fd5b506002546fffffffffffffffffffffffffffffffff1690565b6002546fffffffffffffffffffffffffffffffff1660006102f06107af565b600054600160a060020a031633146103f8576040805160e560020a62461bcd02815260206004820152601360248201526000805160206107ed833981519152604482015290519081900360640190fd5b600355565b600054600160a060020a0316331461044d576040805160e560020a62461bcd02815260206004820152601360248201526000805160206107ed833981519152604482015290519081900360640190fd5b7001000000000000000000000000000000008204156104b6576040805160e560020a62461bcd02815260206004820152600f60248201527f56616c756520746f6f206c617267650000000000000000000000000000000000604482015290519081900360640190fd5b640100000000810415610513576040805160e560020a62461bcd02815260206004820152600f60248201527f4e6f6e636520746f6f206c617267650000000000000000000000000000000000604482015290519081900360640190fd5b780100000000000000000000000000000000000000000000000081028201700100000000000000000000000000000000420201600255600154600160a060020a0316156105df57600160009054906101000a9004600160a060020a0316600160a060020a031663181783586040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401600060405180830381600087803b1580156105c657600080fd5b505af11580156105da573d6000803e3d6000fd5b505050505b5050565b60025470010000000000000000000000000000000090046000816106056107af565b8015610612575060025415155b9150509091565b600254780100000000000000000000000000000000000000000000000090046000816106056107af565b600054600160a060020a03163314610693576040805160e560020a62461bcd02815260206004820152601360248201526000805160206107ed833981519152604482015290519081900360640190fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a038381169190911791829055604080517feeb728660000000000000000000000000000000000000000000000000000000081529051929091169163eeb72866916004808201926020929091908290030181600087803b15801561071757600080fd5b505af115801561072b573d6000803e3d6000fd5b505050506040513d602081101561074157600080fd5b5051630da4b0551461079d576040805160e560020a62461bcd02815260206004820152601060248201527f696e76616c696420736561726368657200000000000000000000000000000000604482015290519081900360640190fd5b50565b600054600160a060020a031681565b600254600354600091700100000000000000000000000000000000900467ffffffffffffffff164203908110806107e65750600354155b915050905600556e617574686f72697365642061636365737300000000000000000000000000a165627a7a723058205dca79bc6ab7d02d47bb4127d4f2cb4ddf33771c7ba6c7b13ca8bf584586376c0029
Swarm Source
bzzr://5dca79bc6ab7d02d47bb4127d4f2cb4ddf33771c7ba6c7b13ca8bf584586376c
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.