@excubiae/contracts
Version:
146 lines (145 loc) • 10.5 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "ZupassChecker",
"sourceName": "contracts/extensions/zupass/ZupassChecker.sol",
"abi": [
{
"inputs": [],
"name": "AlreadyInitialized",
"type": "error"
},
{
"inputs": [],
"name": "InvalidEventId",
"type": "error"
},
{
"inputs": [],
"name": "InvalidProof",
"type": "error"
},
{
"inputs": [],
"name": "InvalidSigners",
"type": "error"
},
{
"inputs": [],
"name": "InvalidWatermark",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "subject",
"type": "address"
},
{
"internalType": "bytes",
"name": "evidence",
"type": "bytes"
}
],
"name": "check",
"outputs": [
{
"internalType": "bool",
"name": "checked",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getAppendedBytes",
"outputs": [
{
"internalType": "bytes",
"name": "appendedBytes",
"type": "bytes"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "initialize",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "initialized",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "validEventId",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "validSigner1",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "validSigner2",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "verifier",
"outputs": [
{
"internalType": "contract ZupassGroth16Verifier",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
}
],
"bytecode": "0x6080604052348015600f57600080fd5b5061075c8061001f6000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80638f1d49a51161005b5780638f1d49a5146100fb5780639ed2c04e14610104578063b41a4b191461010d578063e2b240851461012257600080fd5b8063158ef93e1461008d5780632b7ac3f3146100af578063523c359d146100da5780638129fc1c146100f1575b600080fd5b60005461009a9060ff1681565b60405190151581526020015b60405180910390f35b6004546100c2906001600160a01b031681565b6040516001600160a01b0390911681526020016100a6565b6100e360015481565b6040519081526020016100a6565b6100f9610135565b005b6100e360035481565b6100e360025481565b61011561013f565b6040516100a6919061038f565b61009a6101303660046103f5565b61014e565b61013d610163565b565b60606101496101c6565b905090565b600061015b8484846101d1565b949350505050565b61016b61032e565b60006101756101c6565b905060008060008084806020019051810190610191919061047c565b600193909355600291909155600355600480546001600160a01b0319166001600160a01b039092169190911790555050505050565b606061014930610360565b6000808080806101e386880188610554565b93509350935093506001548160016026811061020157610201610639565b60200201511461022457604051630c93477d60e41b815260040160405180910390fd5b6002546101a082015114158061024157506003546101c082015114155b1561025f57604051635e231fff60e01b815260040160405180910390fd5b6104a08101516001600160a01b0389161461028d5760405163055e490360e01b815260040160405180910390fd5b60048054604051630418f25760e51b81526001600160a01b039091169163831e4ae0916102c291889188918891889101610678565b602060405180830381865afa1580156102df573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061030391906106fd565b610320576040516309bde33960e01b815260040160405180910390fd5b506001979650505050505050565b60005460ff16156103515760405162dc149f60e41b815260040160405180910390fd5b6000805460ff19166001179055565b60405164ffffffffff602c19833b0116808252602090810190602d908301843c60408101815101604052919050565b602081526000825180602084015260005b818110156103bd57602081860181015160408684010152016103a0565b506000604082850101526040601f19601f83011684010191505092915050565b6001600160a01b03811681146103f257600080fd5b50565b60008060006040848603121561040a57600080fd5b8335610415816103dd565b9250602084013567ffffffffffffffff81111561043157600080fd5b8401601f8101861361044257600080fd5b803567ffffffffffffffff81111561045957600080fd5b86602082840101111561046b57600080fd5b939660209190910195509293505050565b6000806000806080858703121561049257600080fd5b845160208601516040870151606088015192965090945092506104b4816103dd565b939692955090935050565b604051601f8201601f1916810167ffffffffffffffff811182821017156104f657634e487b7160e01b600052604160045260246000fd5b604052919050565b600082601f83011261050f57600080fd5b600061051b60406104bf565b905080604084018581111561052f57600080fd5b845b81811015610549578035835260209283019201610531565b509195945050505050565b6000806000806105c0858703121561056b57600080fd5b61057586866104fe565b935085605f86011261058657600080fd5b6040610591816104bf565b8060c08801898111156105a357600080fd5b8389015b818110156105c8576105b98b826104fe565b845260209093019284016105a7565b508196506105d68a826104fe565b9550505050506101008501600087601f8301126105f1578081fd5b806104c06105fe816104bf565b91508301818a82111561060f578384fd5b5b81851015610628578435815260209485019401610610565b509699959850939650929450505050565b634e487b7160e01b600052603260045260246000fd5b8060005b6002811015610672578151845260209384019390910190600101610653565b50505050565b6105c08101610687828761064f565b604082018560005b60028110156106b9576106a383835161064f565b604092909201916020919091019060010161068f565b5050506106c960c083018561064f565b61010082018360005b60268110156106f15781518352602092830192909101906001016106d2565b50505095945050505050565b60006020828403121561070f57600080fd5b8151801515811461071f57600080fd5b939250505056fea2646970667358221220b864de0ff540d1b150982af6939c7ac7cb55e8033d30fc2c2773a5da471ceaf064736f6c634300081c0033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c80638f1d49a51161005b5780638f1d49a5146100fb5780639ed2c04e14610104578063b41a4b191461010d578063e2b240851461012257600080fd5b8063158ef93e1461008d5780632b7ac3f3146100af578063523c359d146100da5780638129fc1c146100f1575b600080fd5b60005461009a9060ff1681565b60405190151581526020015b60405180910390f35b6004546100c2906001600160a01b031681565b6040516001600160a01b0390911681526020016100a6565b6100e360015481565b6040519081526020016100a6565b6100f9610135565b005b6100e360035481565b6100e360025481565b61011561013f565b6040516100a6919061038f565b61009a6101303660046103f5565b61014e565b61013d610163565b565b60606101496101c6565b905090565b600061015b8484846101d1565b949350505050565b61016b61032e565b60006101756101c6565b905060008060008084806020019051810190610191919061047c565b600193909355600291909155600355600480546001600160a01b0319166001600160a01b039092169190911790555050505050565b606061014930610360565b6000808080806101e386880188610554565b93509350935093506001548160016026811061020157610201610639565b60200201511461022457604051630c93477d60e41b815260040160405180910390fd5b6002546101a082015114158061024157506003546101c082015114155b1561025f57604051635e231fff60e01b815260040160405180910390fd5b6104a08101516001600160a01b0389161461028d5760405163055e490360e01b815260040160405180910390fd5b60048054604051630418f25760e51b81526001600160a01b039091169163831e4ae0916102c291889188918891889101610678565b602060405180830381865afa1580156102df573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061030391906106fd565b610320576040516309bde33960e01b815260040160405180910390fd5b506001979650505050505050565b60005460ff16156103515760405162dc149f60e41b815260040160405180910390fd5b6000805460ff19166001179055565b60405164ffffffffff602c19833b0116808252602090810190602d908301843c60408101815101604052919050565b602081526000825180602084015260005b818110156103bd57602081860181015160408684010152016103a0565b506000604082850101526040601f19601f83011684010191505092915050565b6001600160a01b03811681146103f257600080fd5b50565b60008060006040848603121561040a57600080fd5b8335610415816103dd565b9250602084013567ffffffffffffffff81111561043157600080fd5b8401601f8101861361044257600080fd5b803567ffffffffffffffff81111561045957600080fd5b86602082840101111561046b57600080fd5b939660209190910195509293505050565b6000806000806080858703121561049257600080fd5b845160208601516040870151606088015192965090945092506104b4816103dd565b939692955090935050565b604051601f8201601f1916810167ffffffffffffffff811182821017156104f657634e487b7160e01b600052604160045260246000fd5b604052919050565b600082601f83011261050f57600080fd5b600061051b60406104bf565b905080604084018581111561052f57600080fd5b845b81811015610549578035835260209283019201610531565b509195945050505050565b6000806000806105c0858703121561056b57600080fd5b61057586866104fe565b935085605f86011261058657600080fd5b6040610591816104bf565b8060c08801898111156105a357600080fd5b8389015b818110156105c8576105b98b826104fe565b845260209093019284016105a7565b508196506105d68a826104fe565b9550505050506101008501600087601f8301126105f1578081fd5b806104c06105fe816104bf565b91508301818a82111561060f578384fd5b5b81851015610628578435815260209485019401610610565b509699959850939650929450505050565b634e487b7160e01b600052603260045260246000fd5b8060005b6002811015610672578151845260209384019390910190600101610653565b50505050565b6105c08101610687828761064f565b604082018560005b60028110156106b9576106a383835161064f565b604092909201916020919091019060010161068f565b5050506106c960c083018561064f565b61010082018360005b60268110156106f15781518352602092830192909101906001016106d2565b50505095945050505050565b60006020828403121561070f57600080fd5b8151801515811461071f57600080fd5b939250505056fea2646970667358221220b864de0ff540d1b150982af6939c7ac7cb55e8033d30fc2c2773a5da471ceaf064736f6c634300081c0033",
"linkReferences": {},
"deployedLinkReferences": {}
}