ETH Price: $2,620.18 (+6.33%)

Contract

0x2B5F0F6a2492Fd99691e6513D96826E263989E21
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
0x60806040161614062022-12-11 12:16:11673 days ago1670760971IN
 Create: ImplVerifier5
0 ETH0.027429212

Advanced mode:
Parent Transaction Hash Block From To
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ImplVerifier5

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2022-12-11
*/

// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.9;

interface IVerifier {
    function verify(bytes memory flag) external returns(bool);
}

contract ImplVerifier5 {
    address public owner;
    IVerifier _verifier;
    address magic = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE;
    uint[79] public values = [48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126];
    uint index = 0;

    constructor(address verifier) {
        owner = msg.sender;
        _verifier = IVerifier(verifier);
    }
    
    function verify(bytes memory flag) external returns(bool){
        require(uint(uint8(flag[4])) == values[index+10]);
        return _verifier.verify(flag);
    }

    function setIndex (uint i) external{
        require(msg.sender == owner);
        index = i;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"verifier","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"i","type":"uint256"}],"name":"setIndex","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"values","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"flag","type":"bytes"}],"name":"verify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

608060405273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550604051806109e00160405280603060ff168152602001603160ff168152602001603260ff168152602001603360ff168152602001603460ff168152602001603560ff168152602001603660ff168152602001603760ff168152602001603860ff168152602001603960ff168152602001603a60ff168152602001603b60ff168152602001603c60ff168152602001603d60ff168152602001603e60ff168152602001603f60ff168152602001604060ff168152602001604160ff168152602001604260ff168152602001604360ff168152602001604460ff168152602001604560ff168152602001604660ff168152602001604760ff168152602001604860ff168152602001604960ff168152602001604a60ff168152602001604b60ff168152602001604c60ff168152602001604d60ff168152602001604e60ff168152602001604f60ff168152602001605060ff168152602001605160ff168152602001605260ff168152602001605360ff168152602001605460ff168152602001605560ff168152602001605660ff168152602001605760ff168152602001605860ff168152602001605960ff168152602001605a60ff168152602001605b60ff168152602001605c60ff168152602001605d60ff168152602001605e60ff168152602001605f60ff168152602001606060ff168152602001606160ff168152602001606260ff168152602001606360ff168152602001606460ff168152602001606560ff168152602001606660ff168152602001606760ff168152602001606860ff168152602001606960ff168152602001606a60ff168152602001606b60ff168152602001606c60ff168152602001606d60ff168152602001606e60ff168152602001606f60ff168152602001607060ff168152602001607160ff168152602001607260ff168152602001607360ff168152602001607460ff168152602001607560ff168152602001607660ff168152602001607760ff168152602001607860ff168152602001607960ff168152602001607a60ff168152602001607b60ff168152602001607c60ff168152602001607d60ff168152602001607e60ff16815250600390604f610389929190610444565b50600060525534801561039b57600080fd5b50604051610c4f380380610c4f83398181016040528101906103bd9190610509565b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610536565b82604f8101928215610478579160200282015b82811115610477578251829060ff16905591602001919060010190610457565b5b5090506104859190610489565b5090565b5b808211156104a257600081600090555060010161048a565b5090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006104d6826104ab565b9050919050565b6104e6816104cb565b81146104f157600080fd5b50565b600081519050610503816104dd565b92915050565b60006020828403121561051f5761051e6104a6565b5b600061052d848285016104f4565b91505092915050565b61070a806105456000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806340a5737f146100515780635e383d211461006d5780638da5cb5b1461009d5780638e760afe146100bb575b600080fd5b61006b600480360381019061006691906102d0565b6100eb565b005b610087600480360381019061008291906102d0565b61014d565b604051610094919061030c565b60405180910390f35b6100a5610168565b6040516100b29190610368565b60405180910390f35b6100d560048036038101906100d091906104c9565b61018c565b6040516100e2919061052d565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461014357600080fd5b8060528190555050565b600381604f811061015d57600080fd5b016000915090505481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006003600a60525461019f9190610577565b604f81106101b0576101af6105ab565b5b0154826004815181106101c6576101c56105ab565b5b602001015160f81c60f81b60f81c60ff16146101e157600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638e760afe836040518263ffffffff1660e01b815260040161023c9190610659565b6020604051808303816000875af115801561025b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061027f91906106a7565b9050919050565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b6102ad8161029a565b81146102b857600080fd5b50565b6000813590506102ca816102a4565b92915050565b6000602082840312156102e6576102e5610290565b5b60006102f4848285016102bb565b91505092915050565b6103068161029a565b82525050565b600060208201905061032160008301846102fd565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061035282610327565b9050919050565b61036281610347565b82525050565b600060208201905061037d6000830184610359565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6103d68261038d565b810181811067ffffffffffffffff821117156103f5576103f461039e565b5b80604052505050565b6000610408610286565b905061041482826103cd565b919050565b600067ffffffffffffffff8211156104345761043361039e565b5b61043d8261038d565b9050602081019050919050565b82818337600083830152505050565b600061046c61046784610419565b6103fe565b90508281526020810184848401111561048857610487610388565b5b61049384828561044a565b509392505050565b600082601f8301126104b0576104af610383565b5b81356104c0848260208601610459565b91505092915050565b6000602082840312156104df576104de610290565b5b600082013567ffffffffffffffff8111156104fd576104fc610295565b5b6105098482850161049b565b91505092915050565b60008115159050919050565b61052781610512565b82525050565b6000602082019050610542600083018461051e565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006105828261029a565b915061058d8361029a565b92508282019050808211156105a5576105a4610548565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b60005b838110156106145780820151818401526020810190506105f9565b60008484015250505050565b600061062b826105da565b61063581856105e5565b93506106458185602086016105f6565b61064e8161038d565b840191505092915050565b600060208201905081810360008301526106738184610620565b905092915050565b61068481610512565b811461068f57600080fd5b50565b6000815190506106a18161067b565b92915050565b6000602082840312156106bd576106bc610290565b5b60006106cb84828501610692565b9150509291505056fea2646970667358221220d54507957ad6688e756f264125d232eecb8e6ff479bfafd39c25a40ad07a3ffb64736f6c634300081100330000000000000000000000000c24243f50d67f3e96ac30eb74ece6be8fea8ee1

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061004c5760003560e01c806340a5737f146100515780635e383d211461006d5780638da5cb5b1461009d5780638e760afe146100bb575b600080fd5b61006b600480360381019061006691906102d0565b6100eb565b005b610087600480360381019061008291906102d0565b61014d565b604051610094919061030c565b60405180910390f35b6100a5610168565b6040516100b29190610368565b60405180910390f35b6100d560048036038101906100d091906104c9565b61018c565b6040516100e2919061052d565b60405180910390f35b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461014357600080fd5b8060528190555050565b600381604f811061015d57600080fd5b016000915090505481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006003600a60525461019f9190610577565b604f81106101b0576101af6105ab565b5b0154826004815181106101c6576101c56105ab565b5b602001015160f81c60f81b60f81c60ff16146101e157600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638e760afe836040518263ffffffff1660e01b815260040161023c9190610659565b6020604051808303816000875af115801561025b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061027f91906106a7565b9050919050565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b6102ad8161029a565b81146102b857600080fd5b50565b6000813590506102ca816102a4565b92915050565b6000602082840312156102e6576102e5610290565b5b60006102f4848285016102bb565b91505092915050565b6103068161029a565b82525050565b600060208201905061032160008301846102fd565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061035282610327565b9050919050565b61036281610347565b82525050565b600060208201905061037d6000830184610359565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6103d68261038d565b810181811067ffffffffffffffff821117156103f5576103f461039e565b5b80604052505050565b6000610408610286565b905061041482826103cd565b919050565b600067ffffffffffffffff8211156104345761043361039e565b5b61043d8261038d565b9050602081019050919050565b82818337600083830152505050565b600061046c61046784610419565b6103fe565b90508281526020810184848401111561048857610487610388565b5b61049384828561044a565b509392505050565b600082601f8301126104b0576104af610383565b5b81356104c0848260208601610459565b91505092915050565b6000602082840312156104df576104de610290565b5b600082013567ffffffffffffffff8111156104fd576104fc610295565b5b6105098482850161049b565b91505092915050565b60008115159050919050565b61052781610512565b82525050565b6000602082019050610542600083018461051e565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006105828261029a565b915061058d8361029a565b92508282019050808211156105a5576105a4610548565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050919050565b600082825260208201905092915050565b60005b838110156106145780820151818401526020810190506105f9565b60008484015250505050565b600061062b826105da565b61063581856105e5565b93506106458185602086016105f6565b61064e8161038d565b840191505092915050565b600060208201905081810360008301526106738184610620565b905092915050565b61068481610512565b811461068f57600080fd5b50565b6000815190506106a18161067b565b92915050565b6000602082840312156106bd576106bc610290565b5b60006106cb84828501610692565b9150509291505056fea2646970667358221220d54507957ad6688e756f264125d232eecb8e6ff479bfafd39c25a40ad07a3ffb64736f6c63430008110033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000000c24243f50d67f3e96ac30eb74ece6be8fea8ee1

-----Decoded View---------------
Arg [0] : verifier (address): 0x0C24243F50d67f3E96ac30EB74eCe6Be8feA8EE1

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000000c24243f50d67f3e96ac30eb74ece6be8fea8ee1


Deployed Bytecode Sourcemap

159:945:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;999:102;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;307:368;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;189:20;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;826:165;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;999:102;1067:5;;;;;;;;;;1053:19;;:10;:19;;;1045:28;;;;;;1092:1;1084:5;:9;;;;999:102;:::o;307:368::-;;;;;;;;;;;;;;;;;;;;:::o;189:20::-;;;;;;;;;;;;:::o;826:165::-;878:4;926:6;939:2;933:5;;:8;;;;:::i;:::-;926:16;;;;;;;:::i;:::-;;;;913:4;918:1;913:7;;;;;;;;:::i;:::-;;;;;;;;;;907:14;;902:20;;:40;894:49;;;;;;961:9;;;;;;;;;;;:16;;;978:4;961:22;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;954:29;;826:165;;;:::o;7:75:1:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:329::-;749:6;798:2;786:9;777:7;773:23;769:32;766:119;;;804:79;;:::i;:::-;766:119;924:1;949:53;994:7;985:6;974:9;970:22;949:53;:::i;:::-;939:63;;895:117;690:329;;;;:::o;1025:118::-;1112:24;1130:5;1112:24;:::i;:::-;1107:3;1100:37;1025:118;;:::o;1149:222::-;1242:4;1280:2;1269:9;1265:18;1257:26;;1293:71;1361:1;1350:9;1346:17;1337:6;1293:71;:::i;:::-;1149:222;;;;:::o;1377:126::-;1414:7;1454:42;1447:5;1443:54;1432:65;;1377:126;;;:::o;1509:96::-;1546:7;1575:24;1593:5;1575:24;:::i;:::-;1564:35;;1509:96;;;:::o;1611:118::-;1698:24;1716:5;1698:24;:::i;:::-;1693:3;1686:37;1611:118;;:::o;1735:222::-;1828:4;1866:2;1855:9;1851:18;1843:26;;1879:71;1947:1;1936:9;1932:17;1923:6;1879:71;:::i;:::-;1735:222;;;;:::o;1963:117::-;2072:1;2069;2062:12;2086:117;2195:1;2192;2185:12;2209:102;2250:6;2301:2;2297:7;2292:2;2285:5;2281:14;2277:28;2267:38;;2209:102;;;:::o;2317:180::-;2365:77;2362:1;2355:88;2462:4;2459:1;2452:15;2486:4;2483:1;2476:15;2503:281;2586:27;2608:4;2586:27;:::i;:::-;2578:6;2574:40;2716:6;2704:10;2701:22;2680:18;2668:10;2665:34;2662:62;2659:88;;;2727:18;;:::i;:::-;2659:88;2767:10;2763:2;2756:22;2546:238;2503:281;;:::o;2790:129::-;2824:6;2851:20;;:::i;:::-;2841:30;;2880:33;2908:4;2900:6;2880:33;:::i;:::-;2790:129;;;:::o;2925:307::-;2986:4;3076:18;3068:6;3065:30;3062:56;;;3098:18;;:::i;:::-;3062:56;3136:29;3158:6;3136:29;:::i;:::-;3128:37;;3220:4;3214;3210:15;3202:23;;2925:307;;;:::o;3238:146::-;3335:6;3330:3;3325;3312:30;3376:1;3367:6;3362:3;3358:16;3351:27;3238:146;;;:::o;3390:423::-;3467:5;3492:65;3508:48;3549:6;3508:48;:::i;:::-;3492:65;:::i;:::-;3483:74;;3580:6;3573:5;3566:21;3618:4;3611:5;3607:16;3656:3;3647:6;3642:3;3638:16;3635:25;3632:112;;;3663:79;;:::i;:::-;3632:112;3753:54;3800:6;3795:3;3790;3753:54;:::i;:::-;3473:340;3390:423;;;;;:::o;3832:338::-;3887:5;3936:3;3929:4;3921:6;3917:17;3913:27;3903:122;;3944:79;;:::i;:::-;3903:122;4061:6;4048:20;4086:78;4160:3;4152:6;4145:4;4137:6;4133:17;4086:78;:::i;:::-;4077:87;;3893:277;3832:338;;;;:::o;4176:507::-;4244:6;4293:2;4281:9;4272:7;4268:23;4264:32;4261:119;;;4299:79;;:::i;:::-;4261:119;4447:1;4436:9;4432:17;4419:31;4477:18;4469:6;4466:30;4463:117;;;4499:79;;:::i;:::-;4463:117;4604:62;4658:7;4649:6;4638:9;4634:22;4604:62;:::i;:::-;4594:72;;4390:286;4176:507;;;;:::o;4689:90::-;4723:7;4766:5;4759:13;4752:21;4741:32;;4689:90;;;:::o;4785:109::-;4866:21;4881:5;4866:21;:::i;:::-;4861:3;4854:34;4785:109;;:::o;4900:210::-;4987:4;5025:2;5014:9;5010:18;5002:26;;5038:65;5100:1;5089:9;5085:17;5076:6;5038:65;:::i;:::-;4900:210;;;;:::o;5116:180::-;5164:77;5161:1;5154:88;5261:4;5258:1;5251:15;5285:4;5282:1;5275:15;5302:191;5342:3;5361:20;5379:1;5361:20;:::i;:::-;5356:25;;5395:20;5413:1;5395:20;:::i;:::-;5390:25;;5438:1;5435;5431:9;5424:16;;5459:3;5456:1;5453:10;5450:36;;;5466:18;;:::i;:::-;5450:36;5302:191;;;;:::o;5499:180::-;5547:77;5544:1;5537:88;5644:4;5641:1;5634:15;5668:4;5665:1;5658:15;5685:98;5736:6;5770:5;5764:12;5754:22;;5685:98;;;:::o;5789:168::-;5872:11;5906:6;5901:3;5894:19;5946:4;5941:3;5937:14;5922:29;;5789:168;;;;:::o;5963:246::-;6044:1;6054:113;6068:6;6065:1;6062:13;6054:113;;;6153:1;6148:3;6144:11;6138:18;6134:1;6129:3;6125:11;6118:39;6090:2;6087:1;6083:10;6078:15;;6054:113;;;6201:1;6192:6;6187:3;6183:16;6176:27;6025:184;5963:246;;;:::o;6215:373::-;6301:3;6329:38;6361:5;6329:38;:::i;:::-;6383:70;6446:6;6441:3;6383:70;:::i;:::-;6376:77;;6462:65;6520:6;6515:3;6508:4;6501:5;6497:16;6462:65;:::i;:::-;6552:29;6574:6;6552:29;:::i;:::-;6547:3;6543:39;6536:46;;6305:283;6215:373;;;;:::o;6594:309::-;6705:4;6743:2;6732:9;6728:18;6720:26;;6792:9;6786:4;6782:20;6778:1;6767:9;6763:17;6756:47;6820:76;6891:4;6882:6;6820:76;:::i;:::-;6812:84;;6594:309;;;;:::o;6909:116::-;6979:21;6994:5;6979:21;:::i;:::-;6972:5;6969:32;6959:60;;7015:1;7012;7005:12;6959:60;6909:116;:::o;7031:137::-;7085:5;7116:6;7110:13;7101:22;;7132:30;7156:5;7132:30;:::i;:::-;7031:137;;;;:::o;7174:345::-;7241:6;7290:2;7278:9;7269:7;7265:23;7261:32;7258:119;;;7296:79;;:::i;:::-;7258:119;7416:1;7441:61;7494:7;7485:6;7474:9;7470:22;7441:61;:::i;:::-;7431:71;;7387:125;7174:345;;;;:::o

Swarm Source

ipfs://d54507957ad6688e756f264125d232eecb8e6ff479bfafd39c25a40ad07a3ffb

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

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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.