0 txs
897 calls
constructor
No constructor.
functions
blockInfos
viewfunction blockInfos(bytes32, bytes32) view returns (uint256)
blockVerifier
viewfunction blockVerifier(uint256) view returns (address)
checkBlock
viewfunction checkBlock(bytes32 _blockHash, bytes32 _receiptHash) view returns (bool)
checkBlockConfirmation
viewfunction checkBlockConfirmation(bytes32 _blockHash, bytes32 _receiptHash) view returns (bool, uint256)
currentEpoch
viewfunction currentEpoch() view returns (uint256)
getValidatorCount
viewfunction getValidatorCount(uint256 _epoch) view returns (uint256)
minBlockConfirmation
viewfunction minBlockConfirmation() view returns (uint256)
oldBlockUpdater
viewfunction oldBlockUpdater() view returns (address)
owner
viewfunction owner() view returns (address)
publicInputSize
viewfunction publicInputSize() view returns (uint256)
regularValidatorCount
viewfunction regularValidatorCount() view returns (uint256)
validatorHashes
viewfunction validatorHashes(uint256) view returns (bytes32)
validatorN
viewfunction validatorN(uint256) view returns (uint256)
importBlock
nonpayablefunction importBlock(bytes _proof)
initialize
nonpayablefunction initialize(uint256 _epoch, uint256 _validatorCount, uint256 _preValidatorCount, bytes32 _epochValidatorSetHash, bytes32 _preEpochValidatorSetHash, bytes32 _blockHash, bytes32 _receiptHash, uint256 _minBlockConfirmation, uint256 _regularValidatorCount, uint256 _preEpochValidatorN, uint256 _epochValidatorN)
renounceOwnership
nonpayablefunction renounceOwnership()
setBlockConfirmation
nonpayablefunction setBlockConfirmation(uint256 _minBlockConfirmation)
setOldBlockUpdater
nonpayablefunction setOldBlockUpdater(address _oldBlockUpdater)
setPublicInputSize
nonpayablefunction setPublicInputSize(uint256 _publicInputSize)
setVerifier
nonpayablefunction setVerifier(uint256 _blockSize, address _blockVerifier)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
ImportBlock
event ImportBlock(uint256 identifier, bytes32 blockHash, bytes32 receiptHash)
ImportValidator
event ImportValidator(uint256 indexed epoch, uint256 indexed blockNumber, bytes32 blockHash, bytes32 receiptHash)
Initialized
event Initialized(uint8 version)
ModBlockConfirmation
event ModBlockConfirmation(uint256 oldBlockConfirmation, uint256 newBlockConfirmation)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
No errors.
creation bytecode
0x608060405234801561001057600080fd5b50611b6e806100206000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c806382a705ba116100b8578063a9ef31de1161007c578063a9ef31de14610293578063bd043d881461029c578063c4d98bce146102bc578063cc373045146102e5578063dc3588ea146102f8578063f2fde38b1461031b57600080fd5b806382a705ba1461022c5780638da5cb5b1461023f5780639c6a3f56146102645780639d0167e71461026d578063a4f2b42f1461028057600080fd5b8063412ec79d116100ff578063412ec79d146101df57806370e1e09b146101f2578063715018a6146101fb5780637667180814610203578063769b047d1461020c57600080fd5b806302952ab61461013c5780631957ba4e1461017a5780631bf4864e1461018f578063254252af146101a257806336fbafad146101cc575b600080fd5b61016761014a366004611599565b606d60209081526000928352604080842090915290825290205481565b6040519081526020015b60405180910390f35b61018d6101883660046115d7565b61032e565b005b61018d61019d366004611603565b610364565b6101b56101b0366004611599565b61038e565b604080519215158352602083019190915201610171565b61018d6101da366004611625565b6103a7565b61018d6101ed366004611697565b610682565b61016760685481565b61018d61068f565b61016760655481565b61016761021a366004611697565b606e6020526000908152604090205481565b61018d61023a3660046116b0565b6106a3565b6033546001600160a01b03165b6040516001600160a01b039091168152602001610171565b61016760675481565b61018d61027b366004611697565b61088d565b60695461024c906001600160a01b031681565b61016760665481565b6101676102aa366004611697565b606b6020526000908152604090205481565b61024c6102ca366004611697565b606a602052600090815260409020546001600160a01b031681565b6101676102f3366004611697565b6108d6565b61030b610306366004611599565b610905565b6040519015158152602001610171565b61018d610329366004611603565b61091d565b610336610996565b6000918252606a602052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b61036c610996565b606980546001600160a01b0319166001600160a01b0392909216919091179055565b60008061039b84846109f0565b915091505b9250929050565b6103af6114f6565b6103bb8284018461184c565b606085018190526040850191909152602084019190915290825260685490516000916103e691611932565b9050816060015151606854826103fc9190611946565b1461044e5760405162461bcd60e51b815260206004820152601960248201527f696e76616c6964207075626c696320696e7075742073697a650000000000000060448201526064015b60405180910390fd5b6000818152606a60205260409020546001600160a01b0316806104a65760405162461bcd60e51b815260206004820152601060248201526f3737ba1039b2ba103b32b934b334b2b960811b6044820152606401610445565b6104ae611530565b6104bb8460600151610ab8565b81528351602085015160408087015190516343753b4d60e01b81526001600160a01b038616936343753b4d936104fa939192909190879060040161199c565b602060405180830381865afa158015610517573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061053b9190611a53565b6105775760405162461bcd60e51b815260206004820152600d60248201526c34b73b30b634b210383937b7b360991b6044820152606401610445565b6000610587856060015185610b20565b905060005b84811015610678576000811180156105e75750816105ab600183611a6e565b815181106105bb576105bb61195d565b6020026020010151608001518282815181106105d9576105d961195d565b602002602001015160800151145b610678576101f48282815181106106005761060061195d565b6020026020010151600001516106169190611a81565b6000036106445761063f8282815181106106325761063261195d565b6020026020010151610ec2565b610666565b6106668282815181106106595761065961195d565b60200260200101516110f2565b8061067081611a95565b91505061058c565b5050505050505050565b61068a610996565b606855565b610697610996565b6106a160006113b3565b565b600054610100900460ff16158080156106c35750600054600160ff909116105b806106dd5750303b1580156106dd575060005460ff166001145b6107405760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610445565b6000805460ff191660011790558015610763576000805461ff0019166101001790555b61076b611405565b8b60658190555088606b60008e81526020019081526020016000208190555087606b600060018f61079c9190611a6e565b81526020019081526020016000208190555082606e600060018f6107c09190611a6e565b815260208082019290925260409081016000908120939093558e8352606e8252808320859055606c90915290208b90556107fa8c8c611434565b61080e61080860018e611a6e565b8b611434565b6000878152606d60209081526040808320898452909152902085905560668590556067849055600c606855801561087f576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050505050505050505050565b610895610996565b60665460408051918252602082018390527f5ab2642364d92dafb2be757706f004ccf8325cca566bc2d0742133d316a5eaed910160405180910390a1606655565b6000818152606c6020526040812054156108fd57506000908152606c602052604090205490565b505060675490565b60008061091284846109f0565b509150505b92915050565b610925610996565b6001600160a01b03811661098a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610445565b610993816113b3565b50565b6033546001600160a01b031633146106a15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610445565b6000828152606d6020908152604080832084845290915281205481908015610a1d576001925090506103a0565b6069546001600160a01b031615610aab5760695460405163254252af60e01b815260048101879052602481018690526001600160a01b039091169063254252af906044016040805180830381865afa158015610a7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa19190611aae565b92509250506103a0565b5060009485945092505050565b805160009081610ac9826020611946565b6040805160208382018101909252828152919250810160005b84811015610b0157600101602081810288015183529190910190610ae2565b505080516020820120610b1661010082611932565b9695505050505050565b60606000808367ffffffffffffffff811115610b3e57610b3e611722565b604051908082528060200260200182016040528015610bad57816020015b604080516101008101825260008082526020808301829052928201819052606082018190526080820181905260a0820181905260c0820181905260e08201528252600019909201910181610b5c5790505b50905060005b8481101561091257858381518110610bcd57610bcd61195d565b6020026020010151828281518110610be757610be761195d565b60209081029190910101515282610bfd81611a95565b935050858381518110610c1257610c1261195d565b6020026020010151608087856001610c2a9190611ada565b81518110610c3a57610c3a61195d565b6020026020010151901b1760001b828281518110610c5a57610c5a61195d565b602090810291909101015160800152610c74600284611ada565b9250858381518110610c8857610c8861195d565b6020026020010151608087856001610ca09190611ada565b81518110610cb057610cb061195d565b6020026020010151901b1760001b828281518110610cd057610cd061195d565b602090810291909101015160a00152610cea600284611ada565b9250858381518110610cfe57610cfe61195d565b6020026020010151608087856001610d169190611ada565b81518110610d2657610d2661195d565b6020026020010151901b1760001b828281518110610d4657610d4661195d565b602090810291909101015160c00152610d60600284611ada565b9250858381518110610d7457610d7461195d565b6020026020010151608087856001610d8c9190611ada565b81518110610d9c57610d9c61195d565b6020026020010151901b1760001b828281518110610dbc57610dbc61195d565b602090810291909101015160e00152610dd6600284611ada565b9250858381518110610dea57610dea61195d565b6020026020010151828281518110610e0457610e0461195d565b602090810291909101810151015282610e1c81611a95565b935050858381518110610e3157610e3161195d565b6020026020010151828281518110610e4b57610e4b61195d565b60209081029190910101516040015282610e6481611a95565b935050858381518110610e7957610e7961195d565b6020026020010151828281518110610e9357610e9361195d565b60209081029190910101516060015282610eac81611a95565b9350508080610eba90611a95565b915050610bb3565b6000610ed18260000151611453565b90506000610ee0600183611a6e565b60e0840151909150610f345760405162461bcd60e51b815260206004820152601d60248201527f696e76616c69642065706f636856616c696461746f72536574486173680000006044820152606401610445565b60c0830151610f855760405162461bcd60e51b815260206004820152601f60248201527f696e76616c6964207369676e696e6756616c696461746f7253657448617368006044820152606401610445565b60665483604001511015610fdb5760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420656e6f75676820626c6f636b20636f6e6669726d6174696f6e7300006044820152606401610445565b6000818152606b602052604090205460c08401511461103c5760405162461bcd60e51b815260206004820181905260248201527f696e76616c69642070726545706f636856616c696461746f72536574486173686044820152606401610445565b8260e00151606b600084815260200190815260200160002081905550611066828460200151611434565b60608301516000838152606e602052604090205560658290556040838101516080850180516000908152606d602090815284822060a089018051845290825291859020939093558651915190518451918252928101929092529184917fb20f83d7fca2253dd4a37d0ee1922398cbbecf5a89899514947161ae70c0037f910160405180910390a3505050565b606654816040015110156111485760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420656e6f75676820626c6f636b20636f6e6669726d6174696f6e7300006044820152606401610445565b60008061115d83608001518460a001516109f0565b91509150818015611172575080836040015111155b156111af5760405162461bcd60e51b815260206004820152600d60248201526c185b1c9958591e48195e1a5cdd609a1b6044820152606401610445565b60006111be8460000151611453565b905060006111cd600183611a6e565b6000838152606b602052604090205490915061121d5760405162461bcd60e51b815260206004820152600f60248201526e195c1bd8da081b9bc81d5c1b1bd859608a1b6044820152606401610445565b6000818152606e6020526040902054600190600261123a846108d6565b6112449190611932565b61124f906001611ada565b6112599190611946565b6112639190611a6e565b8551611272906101f490611a81565b116112dd576000818152606b602052604090205460c0860151146112d85760405162461bcd60e51b815260206004820181905260248201527f696e76616c69642070726545706f636856616c696461746f72536574486173686044820152606401610445565b61133e565b6000828152606b602052604090205460c08601511461133e5760405162461bcd60e51b815260206004820152601d60248201527f696e76616c69642065706f636856616c696461746f72536574486173680000006044820152606401610445565b6040858101516080870180516000908152606d602090815284822060a08b01805184529082529185902093909355885191519051845192835292820152918201527fa3fa2e60f4d1c7f6bd60da77a4be0625773dfb6b22c54fe77e725d03e49cdf2e9060600160405180910390a15050505050565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff1661142c5760405162461bcd60e51b815260040161044590611aed565b6106a1611499565b606754811461144f576000828152606c602052604090208190555b5050565b60006302e83b7082101561146c5761091760c883611932565b6101f461147d6302e83b7084611a6e565b6114879190611932565b61148f6114c9565b6109179190611ada565b600054610100900460ff166114c05760405162461bcd60e51b815260040161044590611aed565b6106a1336113b3565b600060c86114dc60016302e83b70611a6e565b6114e69190611932565b6114f1906001611ada565b905090565b604051806080016040528061150961154e565b815260200161151661156c565b815260200161152361154e565b8152602001606081525090565b60405180602001604052806001906020820280368337509192915050565b60405180604001604052806002906020820280368337509192915050565b60405180604001604052806002905b61158361154e565b81526020019060019003908161157b5790505090565b600080604083850312156115ac57600080fd5b50508035926020909101359150565b80356001600160a01b03811681146115d257600080fd5b919050565b600080604083850312156115ea57600080fd5b823591506115fa602084016115bb565b90509250929050565b60006020828403121561161557600080fd5b61161e826115bb565b9392505050565b6000806020838503121561163857600080fd5b823567ffffffffffffffff8082111561165057600080fd5b818501915085601f83011261166457600080fd5b81358181111561167357600080fd5b86602082850101111561168557600080fd5b60209290920196919550909350505050565b6000602082840312156116a957600080fd5b5035919050565b60008060008060008060008060008060006101608c8e0312156116d257600080fd5b505089359b60208b01359b5060408b01359a60608101359a506080810135995060a0810135985060c0810135975060e0810135965061010081013595506101208101359450610140013592509050565b634e487b7160e01b600052604160045260246000fd5b6040805190810167ffffffffffffffff8111828210171561175b5761175b611722565b60405290565b600082601f83011261177257600080fd5b61177a611738565b80604084018581111561178c57600080fd5b845b818110156117a657803584526020938401930161178e565b509095945050505050565b600082601f8301126117c257600080fd5b8135602067ffffffffffffffff808311156117df576117df611722565b8260051b604051601f19603f8301168101818110848211171561180457611804611722565b60405293845285810183019383810192508785111561182257600080fd5b83870191505b8482101561184157813583529183019190830190611828565b979650505050505050565b600080600080610120858703121561186357600080fd5b61186d8686611761565b9350604086605f87011261188057600080fd5b611888611738565b8060c088018981111561189a57600080fd5b8389015b818110156118bf576118b08b82611761565b8452602090930192840161189e565b508196506118cd8a82611761565b95505050505061010085013567ffffffffffffffff8111156118ee57600080fd5b6118fa878288016117b1565b91505092959194509250565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60008261194157611941611906565b500490565b80820281158282048414176109175761091761191c565b634e487b7160e01b600052603260045260246000fd5b8060005b6002811015611996578151845260209384019390910190600101611977565b50505050565b61012081016119ab8287611973565b60408083018660005b60028082106119c357506119fe565b82518460005b838110156119e75782518252602092830192909101906001016119c9565b5050509284019250602091909101906001016119b4565b50505050611a0f60c0830185611973565b61010082018360005b6001811015611a37578151835260209283019290910190600101611a18565b50505095945050505050565b805180151581146115d257600080fd5b600060208284031215611a6557600080fd5b61161e82611a43565b818103818111156109175761091761191c565b600082611a9057611a90611906565b500690565b600060018201611aa757611aa761191c565b5060010190565b60008060408385031215611ac157600080fd5b611aca83611a43565b9150602083015190509250929050565b808201808211156109175761091761191c565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b60608201526080019056fea2646970667358221220026ccd212cf5a4f38be250d0aec23faf3e2e775590ff258c5fd825dd1dd0c23464736f6c63430008120033