From a26870070ac2c0027c9c2198e9ac6d716a6c88c7 Mon Sep 17 00:00:00 2001 From: KONFeature Date: Mon, 18 Mar 2024 23:09:14 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=80=20Add=20deterministic=20deployment?= =?UTF-8?q?=20of=20the=20webauthn=20fcl=20validator?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 13 ++ .../137/run-1710798757.json | 120 ++++++++++++++++++ .../137/run-latest.json | 120 ++++++++++++++++++ .../80002/run-1710798602.json | 120 ++++++++++++++++++ .../80002/run-latest.json | 120 ++++++++++++++++++ script/DeployDeterministic.s.sol | 5 + script/DeployWebAuthnFclValidator.sol | 22 ---- .../deterministic/FclWebAuthNValidator.s.sol | 51 ++++++++ 8 files changed, 549 insertions(+), 22 deletions(-) create mode 100644 broadcast/DeployDeterministic.s.sol/137/run-1710798757.json create mode 100644 broadcast/DeployDeterministic.s.sol/137/run-latest.json create mode 100644 broadcast/DeployDeterministic.s.sol/80002/run-1710798602.json create mode 100644 broadcast/DeployDeterministic.s.sol/80002/run-latest.json delete mode 100644 script/DeployWebAuthnFclValidator.sol create mode 100644 script/deterministic/FclWebAuthNValidator.s.sol diff --git a/README.md b/README.md index f2bb9b3e..6b490334 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,19 @@ MIT ## Addresses +
+v TBD + +| Name | Address | +| -------------------- | ------------------------------------------ | +| Kernel | 0xd3082872F8B06073A021b4602e022d5A070d7cfC | +| KernelFactory | 0x5de4839a76cf55d0c90e2061ef4386d962E15ae3 | +| SessionKeyValidator | 0xB8E3c4bEaACAd06f6092793012DA4a8cB23D6123 | +| ECDSA Validator | 0xd9AB5096a832b9ce79914329DAEE236f8Eea0390 | +| FclWebAuthnValidator | 0x42085b533b27B9AfDAF3864a38c72eF853943DAB | +| P256VerifierWrapper | 0x738e3257EE928637fE62c37F91D3e722C45Dcc7C | +
+
v2.4 diff --git a/broadcast/DeployDeterministic.s.sol/137/run-1710798757.json b/broadcast/DeployDeterministic.s.sol/137/run-1710798757.json new file mode 100644 index 00000000..14a3014a --- /dev/null +++ b/broadcast/DeployDeterministic.s.sol/137/run-1710798757.json @@ -0,0 +1,120 @@ +{ + "transactions": [ + { + "hash": "0xfc0a1549dca8bc94f5255c6abd36ea6f0f6c3f6a66303cf2853fa70d8834e38e", + "transactionType": "CREATE2", + "contractName": "P256VerifierWrapper", + "contractAddress": "0x738e3257EE928637fE62c37F91D3e722C45Dcc7C", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xae4e57b886541829ba70efc84340653c41e2908c", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0x129f19", + "value": "0x0", + "data": "0x7a7683d175e8b5fc215ff42554ad65cdcf0caead93621fad19a86b9f78416d2a608060405234801561001057600080fd5b50610efb806100206000396000f3fe608060405234801561001057600080fd5b50600036606060a08214610040576040805160006020820152016040516020818303038152906040529050610113565b600061004f6020828587610e71565b61005891610e9b565b9050600061006a604060208688610e71565b61007391610e9b565b90506000610085606060408789610e71565b61008e91610e9b565b905060006100a060806060888a610e71565b6100a991610e9b565b905060006100bb60a06080898b610e71565b6100c491610e9b565b905060006100d5868686868661011e565b6100e05760006100e3565b60015b60ff169050806040516020016100fb91815260200190565b60405160208183030381529060405296505050505050505b915050805190602001f35b600084158061013b5750600080516020610edb8339815191528510155b80610144575083155b8061015d5750600080516020610edb8339815191528410155b1561016a575060006101fa565b6101748383610203565b610180575060006101fa565b600061018b856102ff565b90506000600080516020610edb83398151915282890990506000600080516020610edb833981519152838909905060006101c787878585610371565b9050600080516020610edb8339815191526101f08a600080516020610edb833981519152610eb9565b8208159450505050505b95945050505050565b600082158015610211575081155b806102295750600160601b63ffffffff60c01b031983145b806102415750600160601b63ffffffff60c01b031982145b1561024e575060006102f9565b6000600160601b63ffffffff60c01b031983840990506000600160601b63ffffffff60c01b0319807fffffffff00000001000000000000000000000000fffffffffffffffffffffffc8709600160601b63ffffffff60c01b031987600160601b63ffffffff60c01b0319898a0909089050600160601b63ffffffff60c01b03197f5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b8208919091149150505b92915050565b600060405160208152602080820152602060408201528260608201527fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254f6080820152600080516020610edb83398151915260a082015260208160c0836005600019fa61036a57600080fd5b5192915050565b600080808060ff818088158015610386575087155b1561039a5760009650505050505050610a33565b6103e67f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2967f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f58d8d610a3b565b9092509050811580156103f7575080155b1561042557600080516020610edb83398151915288600080516020610edb833981519152038a089850600097505b600189841c16600189851c1660011b015b806104585760018403935060018a851c1660018a861c1660011b019050610436565b50600189841c16600189851c1660011b019550600186036104ba577f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29696507f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f593505b600286036104c9578a96508993505b600386036104d8578196508093505b60018303925060019550600194505b8260001911156109bc57600160601b63ffffffff60c01b031984600209600160601b63ffffffff60c01b0319818209600160601b63ffffffff60c01b0319818a09600160601b63ffffffff60c01b03198284099250600160601b63ffffffff60c01b031980600160601b63ffffffff60c01b03198b8d08600160601b63ffffffff60c01b03198c600160601b63ffffffff60c01b0319038e0809600309600160601b63ffffffff60c01b03198985099850600160601b63ffffffff60c01b03198a84099950600160601b63ffffffff60c01b031980836002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319838409089a50600160601b63ffffffff60c01b03198083600160601b63ffffffff60c01b0319038d0882099250600160601b63ffffffff60c01b031983600160601b63ffffffff60c01b03198a870908975060018d881c1660018d891c1660011b019050806106645787600160601b63ffffffff60c01b0319039750505050506109b1565b600181036106b3577f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29693507f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f592505b600281036106c2578e93508d92505b600381036106d1578593508492505b896106ea57509198506001975087965094506109b19050565b600160601b63ffffffff60c01b031988600160601b63ffffffff60c01b03198b860908600160601b63ffffffff60c01b03198c600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b03198d8809089350806108a357836108a357600160601b63ffffffff60c01b0319896002600160601b0363ffffffff60c01b0319099450600160601b63ffffffff60c01b03198586099350600160601b63ffffffff60c01b0319848d099250600160601b63ffffffff60c01b03198486099450600160601b63ffffffff60c01b0319808c600160601b63ffffffff60c01b0319038e08600160601b63ffffffff60c01b03198d8f08099050600160601b63ffffffff60c01b0319816003099150600160601b63ffffffff60c01b03198a86099950600160601b63ffffffff60c01b03198b85099a50600160601b63ffffffff60c01b031980846002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319848509089b50600160601b63ffffffff60c01b0319808d600160601b63ffffffff60c01b031903850883099350600160601b63ffffffff60c01b0319808a87098508985050505050506109b1565b600160601b63ffffffff60c01b03198485099150600160601b63ffffffff60c01b0319848309600160601b63ffffffff60c01b0319838d099b50600160601b63ffffffff60c01b0319818c099a50600160601b63ffffffff60c01b0319838e09600160601b63ffffffff60c01b031980826002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b031984600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b031987880908089350600160601b63ffffffff60c01b031980838d09600160601b63ffffffff60c01b031985600160601b63ffffffff60c01b031988600160601b63ffffffff60c01b031903860809089a50505050809a50505050505b6001830392506104e7565b60405186606082015260208152602080820152602060408201526002600160601b0363ffffffff60c01b03196080820152600160601b63ffffffff60c01b031960a082015260208160c0836005600019fa610a1657600080fd5b600160601b63ffffffff60c01b0319815189099750505050505050505b949350505050565b600080808086610a52578585935093505050610ac0565b84610a64578787935093505050610ac0565b8588148015610a7257508487145b15610a9357610a848888600180610ac9565b929a5090985092509050610aad565b610aa288886001808a8a610c24565b929a50909850925090505b610ab988888484610da8565b9350935050505b94509492505050565b600080600080600160601b63ffffffff60c01b0319876002099350600160601b63ffffffff60c01b03198485099150600160601b63ffffffff60c01b03198289099050600160601b63ffffffff60c01b03198285099250600160601b63ffffffff60c01b03198683099150600160601b63ffffffff60c01b031980600160601b63ffffffff60c01b0319888b08600160601b63ffffffff60c01b031989600160601b63ffffffff60c01b0319038c08096003099550600160601b63ffffffff60c01b031980826002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319888909089350600160601b63ffffffff60c01b03198085600160601b63ffffffff60c01b031903830887099750600160601b63ffffffff60c01b03198584099050600160601b63ffffffff60c01b031980888509600160601b63ffffffff60c01b03190389089250945094509450949050565b60008060008088600003610c4357508492508391506001905080610d9b565b600160601b63ffffffff60c01b0319988903988981898809089450600160601b63ffffffff60c01b03198a600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b03198a8909089550600160601b63ffffffff60c01b03198687099350600160601b63ffffffff60c01b03198685099250600160601b63ffffffff60c01b03198489099150600160601b63ffffffff60c01b03198388099050600160601b63ffffffff60c01b0319848b099750600160601b63ffffffff60c01b031980896002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b031985600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b0319898a0908089350600160601b63ffffffff60c01b031980848b09600160601b63ffffffff60c01b031987600160601b63ffffffff60c01b031988600160601b63ffffffff60c01b0319038d08090892505b9650965096509692505050565b6000806000610db684610e15565b9050600160601b63ffffffff60c01b031981870991506000600160601b63ffffffff60c01b03198287099050600160601b63ffffffff60c01b03198182099150600160601b63ffffffff60c01b03198289099350505094509492505050565b600060405160208152602080820152602060408201528260608201526002600160601b0363ffffffff60c01b03196080820152600160601b63ffffffff60c01b031960a082015260208160c0836005600019fa61036a57600080fd5b60008085851115610e8157600080fd5b83861115610e8e57600080fd5b5050820193919092039150565b803560208310156102f957600019602084900360031b1b1692915050565b818103818111156102f957634e487b7160e01b600052601160045260246000fdfeffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "nonce": "0x14a", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x468cac557ddd12af1b3a4248a8a9e3a6dd74ad895db8c087f3781a4bde24d887", + "transactionType": "CREATE2", + "contractName": "WebAuthnFclValidator", + "contractAddress": "0x42085b533b27B9AfDAF3864a38c72eF853943DAB", + "function": null, + "arguments": [ + "0x738e3257EE928637fE62c37F91D3e722C45Dcc7C" + ], + "transaction": { + "type": "0x02", + "from": "0xae4e57b886541829ba70efc84340653c41e2908c", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0xf83b2", + "value": "0x0", + "data": "0x7a7683d175e8b5fc215ff42554ad65cdcf0caead93621fad19a86b9f78416d2a60a060405234801561001057600080fd5b50604051610cd6380380610cd683398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b608051610c4b61008b60003960006103a80152610c4b6000f3fe6080604052600436106100705760003560e01c8063857cdbb81161004e578063857cdbb8146100d05780638fc925aa146101235780639112b1ad1461014b5780639ea9bd591461017057600080fd5b80630c95955614610075578063333daf921461008a5780633a871cdd146100bd575b600080fd5b610088610083366004610874565b610190565b005b34801561009657600080fd5b506100aa6100a53660046108b6565b61021b565b6040519081526020015b60405180910390f35b6100aa6100cb366004610902565b61026a565b3480156100dc57600080fd5b5061010e6100eb366004610972565b6001600160a01b0316600090815260208190526040902080546001909101549091565b604080519283526020830191909152016100b4565b610088610131366004610874565b505033600090815260208190526040812081815560010155565b34801561015757600080fd5b506101606102c9565b60405190151581526020016100b4565b34801561017c57600080fd5b5061016061018b36600461098d565b610386565b600080806101a0848601866109dd565b33600090815260208190526040908190208381556001810183905590519396509194509250906101d1908590610ac5565b60408051918290038220858352602083018590529133917ff35f455f13928c63f3f93ef6e5c32ab67d30d0d3961c9aa4b5436265999fd65b910160405180910390a3505050505050565b33600090815260208181526040808320815180830190925280548252600101549181019190915261024e818686866103a1565b1561025d576000915050610263565b60019150505b9392505050565b600080808061027c6020880188610972565b6001600160a01b0316815260208082019290925260409081016000208151808301909252805482526001015491810191909152905061024e81856102c4610140890189610ae1565b6103a1565b6000806040518060c0016040528060a08152602001610bab60a0913990506000806101006001600160a01b0316836040516103049190610ac5565b600060405180830381855afa9150503d806000811461033f576040519150601f19603f3d011682016040523d82523d6000602084013e610344565b606091505b509150915081158061035557508051155b15610364576000935050505090565b60008180602001905181019061037a9190610b28565b60011495945050505050565b600060405163d623472560e01b815260040160405180910390fd5b60006103d97f000000000000000000000000000000000000000000000000000000000000000085858589600001518a602001516103e2565b95945050505050565b6000846103f26020820182610b41565b6103fc5761010097505b600061040888836104f3565b60408051602081018390526080858101358284015260a08087013560608401529082018990528082018890528251808303909101815260c09091019182905291925060009081906001600160a01b038d1690610465908590610ac5565b600060405180830381855afa9150503d80600081146104a0576040519150601f19603f3d011682016040523d82523d6000602084013e6104a5565b606091505b5090925090508115806104b757508051155b156104ca576000955050505050506104e9565b808060200190518101906104de9190610b28565b600114955050505050505b9695505050505050565b600036816105046020850185610ae1565b90925090503660006105196040870187610ae1565b909250905060608601356001810161053857879550505050505061073d565b600160f81b808686602081811061055157610551610b63565b9050013560f81c60f81b166001600160f81b031916146105845760405163408bbba360e11b815260040160405180910390fd5b60006105b38960405160200161059c91815260200190565b604051602081830303815290604052600180610743565b90506000815167ffffffffffffffff8111156105d1576105d16109c7565b6040519080825280601f01601f1916602001820160405280156105fb576020820181803683370190505b509050805183860160208301378151602083012081516020830120146106295763811777466000526004601cfd5b5060009050610639856020610b79565b67ffffffffffffffff811115610651576106516109c7565b6040519080825280601f01601f19166020018201604052801561067b576020820181803683370190505b50905084866020830137600060028585604051610699929190610b9a565b602060405180830381855afa1580156106b6573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906106d99190610b28565b905080602087018301526002826040516106f39190610ac5565b602060405180830381855afa158015610710573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906107339190610b28565b9750505050505050505b92915050565b606083518015610823576003600282010460021b60405192507f4142434445464748494a4b4c4d4e4f505152535455565758595a616263646566601f526106708515027f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392d5f18603f52602083018181015b6003880197508751603f8160121c1651600053603f81600c1c1651600153603f8160061c1651600253603f8116516003535060005182526004820191508082106107b357602001604052613d3d60f01b600384066002048083039190915260008615159091029182900352900382525b509392505050565b60008083601f84011261083d57600080fd5b50813567ffffffffffffffff81111561085557600080fd5b60208301915083602082850101111561086d57600080fd5b9250929050565b6000806020838503121561088757600080fd5b823567ffffffffffffffff81111561089e57600080fd5b6108aa8582860161082b565b90969095509350505050565b6000806000604084860312156108cb57600080fd5b83359250602084013567ffffffffffffffff8111156108e957600080fd5b6108f58682870161082b565b9497909650939450505050565b60008060006060848603121561091757600080fd5b833567ffffffffffffffff81111561092e57600080fd5b8401610160818703121561094157600080fd5b95602085013595506040909401359392505050565b80356001600160a01b038116811461096d57600080fd5b919050565b60006020828403121561098457600080fd5b61026382610956565b6000806000604084860312156109a257600080fd5b6109ab84610956565b9250602084013567ffffffffffffffff8111156108e957600080fd5b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156109f257600080fd5b833567ffffffffffffffff80821115610a0a57600080fd5b818601915086601f830112610a1e57600080fd5b813581811115610a3057610a306109c7565b604051601f8201601f19908116603f01168101908382118183101715610a5857610a586109c7565b81604052828152896020848701011115610a7157600080fd5b82602086016020830137600060208483010152809750505050505060208401359150604084013590509250925092565b60005b83811015610abc578181015183820152602001610aa4565b50506000910152565b60008251610ad7818460208701610aa1565b9190910192915050565b6000808335601e19843603018112610af857600080fd5b83018035915067ffffffffffffffff821115610b1357600080fd5b60200191503681900382131561086d57600080fd5b600060208284031215610b3a57600080fd5b5051919050565b600060208284031215610b5357600080fd5b8135801515811461026357600080fd5b634e487b7160e01b600052603260045260246000fd5b8082018082111561073d57634e487b7160e01b600052601160045260246000fd5b818382376000910190815291905056fe4cee90eb86eaa050036147a12d49004b6b9c72bd725d39d4785011fe190f0b4da73bd4903f0ce3b639bbbf6e8e80d16931ff4bcf5993d58468e8fb19086e8cac36dbcd03009df8c59286b162af3bd7fcc0450c9aa81be5d10d312af6c66b1d604aebd3099c618202fcfe16ae7770b0c49ab5eadf74b754204a3bb6060e44eff37618b065f9832de4ca6ca971a7a1adc826d0f7c00181a5fb2ddf79ae00b4e10e000000000000000000000000738e3257ee928637fe62c37f91d3e722c45dcc7c", + "nonce": "0x14b", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0xfc0a1549dca8bc94f5255c6abd36ea6f0f6c3f6a66303cf2853fa70d8834e38e", + "transactionIndex": "0x3f", + "blockHash": "0x5a342525888114eafea4c634add577df951c46f17d734c166b2fa45c6b12956e", + "blockNumber": "0x34472d0", + "from": "0xaE4e57b886541829BA70eFC84340653c41e2908C", + "to": "0x4e59b44847b379578588920cA78FbF26c0B4956C", + "cumulativeGasUsed": "0xa179a6", + "gasUsed": "0xd7c3e", + "contractAddress": null, + "logs": [ + { + "address": "0x0000000000000000000000000000000000001010", + "topics": [ + "0x4dfe1bbbcf077ddc3e01291eea2d5c70c2b422b415d95645b9adcfd678cb1d63", + "0x0000000000000000000000000000000000000000000000000000000000001010", + "0x000000000000000000000000ae4e57b886541829ba70efc84340653c41e2908c", + "0x000000000000000000000000b95d435df3f8b2a8d8b9c2b7c8766c9ae6ed8cc9" + ], + "data": "0x000000000000000000000000000000000000000000000000005e31a213f3a8000000000000000000000000000000000000000000000000007bcc682e0d9d8c6e00000000000000000000000000000000000000000000000cc28260214b01815b0000000000000000000000000000000000000000000000007b6e368bf9a9e46e00000000000000000000000000000000000000000000000cc2e091c35ef5295b", + "blockHash": "0x5a342525888114eafea4c634add577df951c46f17d734c166b2fa45c6b12956e", + "blockNumber": "0x34472d0", + "transactionHash": "0xfc0a1549dca8bc94f5255c6abd36ea6f0f6c3f6a66303cf2853fa70d8834e38e", + "transactionIndex": "0x3f", + "logIndex": "0x1c3", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000800000000000000000000000000000800000000000000000000100000000000100000000000000000000000000000000200000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000200000000020002000000000000000000000000000000000000000000000004000000000000000040001000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000100000", + "type": "0x2", + "effectiveGasPrice": "0x6fd1bbec0" + }, + { + "transactionHash": "0x468cac557ddd12af1b3a4248a8a9e3a6dd74ad895db8c087f3781a4bde24d887", + "transactionIndex": "0x40", + "blockHash": "0x5a342525888114eafea4c634add577df951c46f17d734c166b2fa45c6b12956e", + "blockNumber": "0x34472d0", + "from": "0xaE4e57b886541829BA70eFC84340653c41e2908C", + "to": "0x4e59b44847b379578588920cA78FbF26c0B4956C", + "cumulativeGasUsed": "0xacb5e6", + "gasUsed": "0xb3c40", + "contractAddress": null, + "logs": [ + { + "address": "0x0000000000000000000000000000000000001010", + "topics": [ + "0x4dfe1bbbcf077ddc3e01291eea2d5c70c2b422b415d95645b9adcfd678cb1d63", + "0x0000000000000000000000000000000000000000000000000000000000001010", + "0x000000000000000000000000ae4e57b886541829ba70efc84340653c41e2908c", + "0x000000000000000000000000b95d435df3f8b2a8d8b9c2b7c8766c9ae6ed8cc9" + ], + "data": "0x000000000000000000000000000000000000000000000000004e7a5fc93b00000000000000000000000000000000000000000000000000007b6e297aa0c059ee00000000000000000000000000000000000000000000000cc2e091c35ef5295b0000000000000000000000000000000000000000000000007b1faf1ad78559ee00000000000000000000000000000000000000000000000cc32f0c232830295b", + "blockHash": "0x5a342525888114eafea4c634add577df951c46f17d734c166b2fa45c6b12956e", + "blockNumber": "0x34472d0", + "transactionHash": "0x468cac557ddd12af1b3a4248a8a9e3a6dd74ad895db8c087f3781a4bde24d887", + "transactionIndex": "0x40", + "logIndex": "0x1c4", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000800000000000000000000000000000800000000000000000000100000000000100000000000000000000000000000000200000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000200000000020002000000000000000000000000000000000000000000000004000000000000000040001000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000100000", + "type": "0x2", + "effectiveGasPrice": "0x6fd1bbec0" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1710798757, + "chain": 137, + "commit": "7cf4583" +} \ No newline at end of file diff --git a/broadcast/DeployDeterministic.s.sol/137/run-latest.json b/broadcast/DeployDeterministic.s.sol/137/run-latest.json new file mode 100644 index 00000000..14a3014a --- /dev/null +++ b/broadcast/DeployDeterministic.s.sol/137/run-latest.json @@ -0,0 +1,120 @@ +{ + "transactions": [ + { + "hash": "0xfc0a1549dca8bc94f5255c6abd36ea6f0f6c3f6a66303cf2853fa70d8834e38e", + "transactionType": "CREATE2", + "contractName": "P256VerifierWrapper", + "contractAddress": "0x738e3257EE928637fE62c37F91D3e722C45Dcc7C", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0xae4e57b886541829ba70efc84340653c41e2908c", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0x129f19", + "value": "0x0", + "data": "0x7a7683d175e8b5fc215ff42554ad65cdcf0caead93621fad19a86b9f78416d2a608060405234801561001057600080fd5b50610efb806100206000396000f3fe608060405234801561001057600080fd5b50600036606060a08214610040576040805160006020820152016040516020818303038152906040529050610113565b600061004f6020828587610e71565b61005891610e9b565b9050600061006a604060208688610e71565b61007391610e9b565b90506000610085606060408789610e71565b61008e91610e9b565b905060006100a060806060888a610e71565b6100a991610e9b565b905060006100bb60a06080898b610e71565b6100c491610e9b565b905060006100d5868686868661011e565b6100e05760006100e3565b60015b60ff169050806040516020016100fb91815260200190565b60405160208183030381529060405296505050505050505b915050805190602001f35b600084158061013b5750600080516020610edb8339815191528510155b80610144575083155b8061015d5750600080516020610edb8339815191528410155b1561016a575060006101fa565b6101748383610203565b610180575060006101fa565b600061018b856102ff565b90506000600080516020610edb83398151915282890990506000600080516020610edb833981519152838909905060006101c787878585610371565b9050600080516020610edb8339815191526101f08a600080516020610edb833981519152610eb9565b8208159450505050505b95945050505050565b600082158015610211575081155b806102295750600160601b63ffffffff60c01b031983145b806102415750600160601b63ffffffff60c01b031982145b1561024e575060006102f9565b6000600160601b63ffffffff60c01b031983840990506000600160601b63ffffffff60c01b0319807fffffffff00000001000000000000000000000000fffffffffffffffffffffffc8709600160601b63ffffffff60c01b031987600160601b63ffffffff60c01b0319898a0909089050600160601b63ffffffff60c01b03197f5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b8208919091149150505b92915050565b600060405160208152602080820152602060408201528260608201527fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254f6080820152600080516020610edb83398151915260a082015260208160c0836005600019fa61036a57600080fd5b5192915050565b600080808060ff818088158015610386575087155b1561039a5760009650505050505050610a33565b6103e67f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2967f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f58d8d610a3b565b9092509050811580156103f7575080155b1561042557600080516020610edb83398151915288600080516020610edb833981519152038a089850600097505b600189841c16600189851c1660011b015b806104585760018403935060018a851c1660018a861c1660011b019050610436565b50600189841c16600189851c1660011b019550600186036104ba577f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29696507f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f593505b600286036104c9578a96508993505b600386036104d8578196508093505b60018303925060019550600194505b8260001911156109bc57600160601b63ffffffff60c01b031984600209600160601b63ffffffff60c01b0319818209600160601b63ffffffff60c01b0319818a09600160601b63ffffffff60c01b03198284099250600160601b63ffffffff60c01b031980600160601b63ffffffff60c01b03198b8d08600160601b63ffffffff60c01b03198c600160601b63ffffffff60c01b0319038e0809600309600160601b63ffffffff60c01b03198985099850600160601b63ffffffff60c01b03198a84099950600160601b63ffffffff60c01b031980836002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319838409089a50600160601b63ffffffff60c01b03198083600160601b63ffffffff60c01b0319038d0882099250600160601b63ffffffff60c01b031983600160601b63ffffffff60c01b03198a870908975060018d881c1660018d891c1660011b019050806106645787600160601b63ffffffff60c01b0319039750505050506109b1565b600181036106b3577f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29693507f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f592505b600281036106c2578e93508d92505b600381036106d1578593508492505b896106ea57509198506001975087965094506109b19050565b600160601b63ffffffff60c01b031988600160601b63ffffffff60c01b03198b860908600160601b63ffffffff60c01b03198c600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b03198d8809089350806108a357836108a357600160601b63ffffffff60c01b0319896002600160601b0363ffffffff60c01b0319099450600160601b63ffffffff60c01b03198586099350600160601b63ffffffff60c01b0319848d099250600160601b63ffffffff60c01b03198486099450600160601b63ffffffff60c01b0319808c600160601b63ffffffff60c01b0319038e08600160601b63ffffffff60c01b03198d8f08099050600160601b63ffffffff60c01b0319816003099150600160601b63ffffffff60c01b03198a86099950600160601b63ffffffff60c01b03198b85099a50600160601b63ffffffff60c01b031980846002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319848509089b50600160601b63ffffffff60c01b0319808d600160601b63ffffffff60c01b031903850883099350600160601b63ffffffff60c01b0319808a87098508985050505050506109b1565b600160601b63ffffffff60c01b03198485099150600160601b63ffffffff60c01b0319848309600160601b63ffffffff60c01b0319838d099b50600160601b63ffffffff60c01b0319818c099a50600160601b63ffffffff60c01b0319838e09600160601b63ffffffff60c01b031980826002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b031984600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b031987880908089350600160601b63ffffffff60c01b031980838d09600160601b63ffffffff60c01b031985600160601b63ffffffff60c01b031988600160601b63ffffffff60c01b031903860809089a50505050809a50505050505b6001830392506104e7565b60405186606082015260208152602080820152602060408201526002600160601b0363ffffffff60c01b03196080820152600160601b63ffffffff60c01b031960a082015260208160c0836005600019fa610a1657600080fd5b600160601b63ffffffff60c01b0319815189099750505050505050505b949350505050565b600080808086610a52578585935093505050610ac0565b84610a64578787935093505050610ac0565b8588148015610a7257508487145b15610a9357610a848888600180610ac9565b929a5090985092509050610aad565b610aa288886001808a8a610c24565b929a50909850925090505b610ab988888484610da8565b9350935050505b94509492505050565b600080600080600160601b63ffffffff60c01b0319876002099350600160601b63ffffffff60c01b03198485099150600160601b63ffffffff60c01b03198289099050600160601b63ffffffff60c01b03198285099250600160601b63ffffffff60c01b03198683099150600160601b63ffffffff60c01b031980600160601b63ffffffff60c01b0319888b08600160601b63ffffffff60c01b031989600160601b63ffffffff60c01b0319038c08096003099550600160601b63ffffffff60c01b031980826002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319888909089350600160601b63ffffffff60c01b03198085600160601b63ffffffff60c01b031903830887099750600160601b63ffffffff60c01b03198584099050600160601b63ffffffff60c01b031980888509600160601b63ffffffff60c01b03190389089250945094509450949050565b60008060008088600003610c4357508492508391506001905080610d9b565b600160601b63ffffffff60c01b0319988903988981898809089450600160601b63ffffffff60c01b03198a600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b03198a8909089550600160601b63ffffffff60c01b03198687099350600160601b63ffffffff60c01b03198685099250600160601b63ffffffff60c01b03198489099150600160601b63ffffffff60c01b03198388099050600160601b63ffffffff60c01b0319848b099750600160601b63ffffffff60c01b031980896002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b031985600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b0319898a0908089350600160601b63ffffffff60c01b031980848b09600160601b63ffffffff60c01b031987600160601b63ffffffff60c01b031988600160601b63ffffffff60c01b0319038d08090892505b9650965096509692505050565b6000806000610db684610e15565b9050600160601b63ffffffff60c01b031981870991506000600160601b63ffffffff60c01b03198287099050600160601b63ffffffff60c01b03198182099150600160601b63ffffffff60c01b03198289099350505094509492505050565b600060405160208152602080820152602060408201528260608201526002600160601b0363ffffffff60c01b03196080820152600160601b63ffffffff60c01b031960a082015260208160c0836005600019fa61036a57600080fd5b60008085851115610e8157600080fd5b83861115610e8e57600080fd5b5050820193919092039150565b803560208310156102f957600019602084900360031b1b1692915050565b818103818111156102f957634e487b7160e01b600052601160045260246000fdfeffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "nonce": "0x14a", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x468cac557ddd12af1b3a4248a8a9e3a6dd74ad895db8c087f3781a4bde24d887", + "transactionType": "CREATE2", + "contractName": "WebAuthnFclValidator", + "contractAddress": "0x42085b533b27B9AfDAF3864a38c72eF853943DAB", + "function": null, + "arguments": [ + "0x738e3257EE928637fE62c37F91D3e722C45Dcc7C" + ], + "transaction": { + "type": "0x02", + "from": "0xae4e57b886541829ba70efc84340653c41e2908c", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0xf83b2", + "value": "0x0", + "data": "0x7a7683d175e8b5fc215ff42554ad65cdcf0caead93621fad19a86b9f78416d2a60a060405234801561001057600080fd5b50604051610cd6380380610cd683398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b608051610c4b61008b60003960006103a80152610c4b6000f3fe6080604052600436106100705760003560e01c8063857cdbb81161004e578063857cdbb8146100d05780638fc925aa146101235780639112b1ad1461014b5780639ea9bd591461017057600080fd5b80630c95955614610075578063333daf921461008a5780633a871cdd146100bd575b600080fd5b610088610083366004610874565b610190565b005b34801561009657600080fd5b506100aa6100a53660046108b6565b61021b565b6040519081526020015b60405180910390f35b6100aa6100cb366004610902565b61026a565b3480156100dc57600080fd5b5061010e6100eb366004610972565b6001600160a01b0316600090815260208190526040902080546001909101549091565b604080519283526020830191909152016100b4565b610088610131366004610874565b505033600090815260208190526040812081815560010155565b34801561015757600080fd5b506101606102c9565b60405190151581526020016100b4565b34801561017c57600080fd5b5061016061018b36600461098d565b610386565b600080806101a0848601866109dd565b33600090815260208190526040908190208381556001810183905590519396509194509250906101d1908590610ac5565b60408051918290038220858352602083018590529133917ff35f455f13928c63f3f93ef6e5c32ab67d30d0d3961c9aa4b5436265999fd65b910160405180910390a3505050505050565b33600090815260208181526040808320815180830190925280548252600101549181019190915261024e818686866103a1565b1561025d576000915050610263565b60019150505b9392505050565b600080808061027c6020880188610972565b6001600160a01b0316815260208082019290925260409081016000208151808301909252805482526001015491810191909152905061024e81856102c4610140890189610ae1565b6103a1565b6000806040518060c0016040528060a08152602001610bab60a0913990506000806101006001600160a01b0316836040516103049190610ac5565b600060405180830381855afa9150503d806000811461033f576040519150601f19603f3d011682016040523d82523d6000602084013e610344565b606091505b509150915081158061035557508051155b15610364576000935050505090565b60008180602001905181019061037a9190610b28565b60011495945050505050565b600060405163d623472560e01b815260040160405180910390fd5b60006103d97f000000000000000000000000000000000000000000000000000000000000000085858589600001518a602001516103e2565b95945050505050565b6000846103f26020820182610b41565b6103fc5761010097505b600061040888836104f3565b60408051602081018390526080858101358284015260a08087013560608401529082018990528082018890528251808303909101815260c09091019182905291925060009081906001600160a01b038d1690610465908590610ac5565b600060405180830381855afa9150503d80600081146104a0576040519150601f19603f3d011682016040523d82523d6000602084013e6104a5565b606091505b5090925090508115806104b757508051155b156104ca576000955050505050506104e9565b808060200190518101906104de9190610b28565b600114955050505050505b9695505050505050565b600036816105046020850185610ae1565b90925090503660006105196040870187610ae1565b909250905060608601356001810161053857879550505050505061073d565b600160f81b808686602081811061055157610551610b63565b9050013560f81c60f81b166001600160f81b031916146105845760405163408bbba360e11b815260040160405180910390fd5b60006105b38960405160200161059c91815260200190565b604051602081830303815290604052600180610743565b90506000815167ffffffffffffffff8111156105d1576105d16109c7565b6040519080825280601f01601f1916602001820160405280156105fb576020820181803683370190505b509050805183860160208301378151602083012081516020830120146106295763811777466000526004601cfd5b5060009050610639856020610b79565b67ffffffffffffffff811115610651576106516109c7565b6040519080825280601f01601f19166020018201604052801561067b576020820181803683370190505b50905084866020830137600060028585604051610699929190610b9a565b602060405180830381855afa1580156106b6573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906106d99190610b28565b905080602087018301526002826040516106f39190610ac5565b602060405180830381855afa158015610710573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906107339190610b28565b9750505050505050505b92915050565b606083518015610823576003600282010460021b60405192507f4142434445464748494a4b4c4d4e4f505152535455565758595a616263646566601f526106708515027f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392d5f18603f52602083018181015b6003880197508751603f8160121c1651600053603f81600c1c1651600153603f8160061c1651600253603f8116516003535060005182526004820191508082106107b357602001604052613d3d60f01b600384066002048083039190915260008615159091029182900352900382525b509392505050565b60008083601f84011261083d57600080fd5b50813567ffffffffffffffff81111561085557600080fd5b60208301915083602082850101111561086d57600080fd5b9250929050565b6000806020838503121561088757600080fd5b823567ffffffffffffffff81111561089e57600080fd5b6108aa8582860161082b565b90969095509350505050565b6000806000604084860312156108cb57600080fd5b83359250602084013567ffffffffffffffff8111156108e957600080fd5b6108f58682870161082b565b9497909650939450505050565b60008060006060848603121561091757600080fd5b833567ffffffffffffffff81111561092e57600080fd5b8401610160818703121561094157600080fd5b95602085013595506040909401359392505050565b80356001600160a01b038116811461096d57600080fd5b919050565b60006020828403121561098457600080fd5b61026382610956565b6000806000604084860312156109a257600080fd5b6109ab84610956565b9250602084013567ffffffffffffffff8111156108e957600080fd5b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156109f257600080fd5b833567ffffffffffffffff80821115610a0a57600080fd5b818601915086601f830112610a1e57600080fd5b813581811115610a3057610a306109c7565b604051601f8201601f19908116603f01168101908382118183101715610a5857610a586109c7565b81604052828152896020848701011115610a7157600080fd5b82602086016020830137600060208483010152809750505050505060208401359150604084013590509250925092565b60005b83811015610abc578181015183820152602001610aa4565b50506000910152565b60008251610ad7818460208701610aa1565b9190910192915050565b6000808335601e19843603018112610af857600080fd5b83018035915067ffffffffffffffff821115610b1357600080fd5b60200191503681900382131561086d57600080fd5b600060208284031215610b3a57600080fd5b5051919050565b600060208284031215610b5357600080fd5b8135801515811461026357600080fd5b634e487b7160e01b600052603260045260246000fd5b8082018082111561073d57634e487b7160e01b600052601160045260246000fd5b818382376000910190815291905056fe4cee90eb86eaa050036147a12d49004b6b9c72bd725d39d4785011fe190f0b4da73bd4903f0ce3b639bbbf6e8e80d16931ff4bcf5993d58468e8fb19086e8cac36dbcd03009df8c59286b162af3bd7fcc0450c9aa81be5d10d312af6c66b1d604aebd3099c618202fcfe16ae7770b0c49ab5eadf74b754204a3bb6060e44eff37618b065f9832de4ca6ca971a7a1adc826d0f7c00181a5fb2ddf79ae00b4e10e000000000000000000000000738e3257ee928637fe62c37f91d3e722c45dcc7c", + "nonce": "0x14b", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0xfc0a1549dca8bc94f5255c6abd36ea6f0f6c3f6a66303cf2853fa70d8834e38e", + "transactionIndex": "0x3f", + "blockHash": "0x5a342525888114eafea4c634add577df951c46f17d734c166b2fa45c6b12956e", + "blockNumber": "0x34472d0", + "from": "0xaE4e57b886541829BA70eFC84340653c41e2908C", + "to": "0x4e59b44847b379578588920cA78FbF26c0B4956C", + "cumulativeGasUsed": "0xa179a6", + "gasUsed": "0xd7c3e", + "contractAddress": null, + "logs": [ + { + "address": "0x0000000000000000000000000000000000001010", + "topics": [ + "0x4dfe1bbbcf077ddc3e01291eea2d5c70c2b422b415d95645b9adcfd678cb1d63", + "0x0000000000000000000000000000000000000000000000000000000000001010", + "0x000000000000000000000000ae4e57b886541829ba70efc84340653c41e2908c", + "0x000000000000000000000000b95d435df3f8b2a8d8b9c2b7c8766c9ae6ed8cc9" + ], + "data": "0x000000000000000000000000000000000000000000000000005e31a213f3a8000000000000000000000000000000000000000000000000007bcc682e0d9d8c6e00000000000000000000000000000000000000000000000cc28260214b01815b0000000000000000000000000000000000000000000000007b6e368bf9a9e46e00000000000000000000000000000000000000000000000cc2e091c35ef5295b", + "blockHash": "0x5a342525888114eafea4c634add577df951c46f17d734c166b2fa45c6b12956e", + "blockNumber": "0x34472d0", + "transactionHash": "0xfc0a1549dca8bc94f5255c6abd36ea6f0f6c3f6a66303cf2853fa70d8834e38e", + "transactionIndex": "0x3f", + "logIndex": "0x1c3", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000800000000000000000000000000000800000000000000000000100000000000100000000000000000000000000000000200000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000200000000020002000000000000000000000000000000000000000000000004000000000000000040001000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000100000", + "type": "0x2", + "effectiveGasPrice": "0x6fd1bbec0" + }, + { + "transactionHash": "0x468cac557ddd12af1b3a4248a8a9e3a6dd74ad895db8c087f3781a4bde24d887", + "transactionIndex": "0x40", + "blockHash": "0x5a342525888114eafea4c634add577df951c46f17d734c166b2fa45c6b12956e", + "blockNumber": "0x34472d0", + "from": "0xaE4e57b886541829BA70eFC84340653c41e2908C", + "to": "0x4e59b44847b379578588920cA78FbF26c0B4956C", + "cumulativeGasUsed": "0xacb5e6", + "gasUsed": "0xb3c40", + "contractAddress": null, + "logs": [ + { + "address": "0x0000000000000000000000000000000000001010", + "topics": [ + "0x4dfe1bbbcf077ddc3e01291eea2d5c70c2b422b415d95645b9adcfd678cb1d63", + "0x0000000000000000000000000000000000000000000000000000000000001010", + "0x000000000000000000000000ae4e57b886541829ba70efc84340653c41e2908c", + "0x000000000000000000000000b95d435df3f8b2a8d8b9c2b7c8766c9ae6ed8cc9" + ], + "data": "0x000000000000000000000000000000000000000000000000004e7a5fc93b00000000000000000000000000000000000000000000000000007b6e297aa0c059ee00000000000000000000000000000000000000000000000cc2e091c35ef5295b0000000000000000000000000000000000000000000000007b1faf1ad78559ee00000000000000000000000000000000000000000000000cc32f0c232830295b", + "blockHash": "0x5a342525888114eafea4c634add577df951c46f17d734c166b2fa45c6b12956e", + "blockNumber": "0x34472d0", + "transactionHash": "0x468cac557ddd12af1b3a4248a8a9e3a6dd74ad895db8c087f3781a4bde24d887", + "transactionIndex": "0x40", + "logIndex": "0x1c4", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000800000000000000000000000000000800000000000000000000100000000000100000000000000000000000000000000200000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000200000000020002000000000000000000000000000000000000000000000004000000000000000040001000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000100000", + "type": "0x2", + "effectiveGasPrice": "0x6fd1bbec0" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1710798757, + "chain": 137, + "commit": "7cf4583" +} \ No newline at end of file diff --git a/broadcast/DeployDeterministic.s.sol/80002/run-1710798602.json b/broadcast/DeployDeterministic.s.sol/80002/run-1710798602.json new file mode 100644 index 00000000..64dff567 --- /dev/null +++ b/broadcast/DeployDeterministic.s.sol/80002/run-1710798602.json @@ -0,0 +1,120 @@ +{ + "transactions": [ + { + "hash": "0xb01505a4fb9ae3db32b20cacfd6fb045c229299fb78ea0516da1026fe175cee3", + "transactionType": "CREATE2", + "contractName": "P256VerifierWrapper", + "contractAddress": "0x738e3257EE928637fE62c37F91D3e722C45Dcc7C", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x7caf754c934710d7c73bc453654552beca38223f", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0x129f19", + "value": "0x0", + "data": "0x7a7683d175e8b5fc215ff42554ad65cdcf0caead93621fad19a86b9f78416d2a608060405234801561001057600080fd5b50610efb806100206000396000f3fe608060405234801561001057600080fd5b50600036606060a08214610040576040805160006020820152016040516020818303038152906040529050610113565b600061004f6020828587610e71565b61005891610e9b565b9050600061006a604060208688610e71565b61007391610e9b565b90506000610085606060408789610e71565b61008e91610e9b565b905060006100a060806060888a610e71565b6100a991610e9b565b905060006100bb60a06080898b610e71565b6100c491610e9b565b905060006100d5868686868661011e565b6100e05760006100e3565b60015b60ff169050806040516020016100fb91815260200190565b60405160208183030381529060405296505050505050505b915050805190602001f35b600084158061013b5750600080516020610edb8339815191528510155b80610144575083155b8061015d5750600080516020610edb8339815191528410155b1561016a575060006101fa565b6101748383610203565b610180575060006101fa565b600061018b856102ff565b90506000600080516020610edb83398151915282890990506000600080516020610edb833981519152838909905060006101c787878585610371565b9050600080516020610edb8339815191526101f08a600080516020610edb833981519152610eb9565b8208159450505050505b95945050505050565b600082158015610211575081155b806102295750600160601b63ffffffff60c01b031983145b806102415750600160601b63ffffffff60c01b031982145b1561024e575060006102f9565b6000600160601b63ffffffff60c01b031983840990506000600160601b63ffffffff60c01b0319807fffffffff00000001000000000000000000000000fffffffffffffffffffffffc8709600160601b63ffffffff60c01b031987600160601b63ffffffff60c01b0319898a0909089050600160601b63ffffffff60c01b03197f5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b8208919091149150505b92915050565b600060405160208152602080820152602060408201528260608201527fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254f6080820152600080516020610edb83398151915260a082015260208160c0836005600019fa61036a57600080fd5b5192915050565b600080808060ff818088158015610386575087155b1561039a5760009650505050505050610a33565b6103e67f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2967f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f58d8d610a3b565b9092509050811580156103f7575080155b1561042557600080516020610edb83398151915288600080516020610edb833981519152038a089850600097505b600189841c16600189851c1660011b015b806104585760018403935060018a851c1660018a861c1660011b019050610436565b50600189841c16600189851c1660011b019550600186036104ba577f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29696507f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f593505b600286036104c9578a96508993505b600386036104d8578196508093505b60018303925060019550600194505b8260001911156109bc57600160601b63ffffffff60c01b031984600209600160601b63ffffffff60c01b0319818209600160601b63ffffffff60c01b0319818a09600160601b63ffffffff60c01b03198284099250600160601b63ffffffff60c01b031980600160601b63ffffffff60c01b03198b8d08600160601b63ffffffff60c01b03198c600160601b63ffffffff60c01b0319038e0809600309600160601b63ffffffff60c01b03198985099850600160601b63ffffffff60c01b03198a84099950600160601b63ffffffff60c01b031980836002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319838409089a50600160601b63ffffffff60c01b03198083600160601b63ffffffff60c01b0319038d0882099250600160601b63ffffffff60c01b031983600160601b63ffffffff60c01b03198a870908975060018d881c1660018d891c1660011b019050806106645787600160601b63ffffffff60c01b0319039750505050506109b1565b600181036106b3577f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29693507f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f592505b600281036106c2578e93508d92505b600381036106d1578593508492505b896106ea57509198506001975087965094506109b19050565b600160601b63ffffffff60c01b031988600160601b63ffffffff60c01b03198b860908600160601b63ffffffff60c01b03198c600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b03198d8809089350806108a357836108a357600160601b63ffffffff60c01b0319896002600160601b0363ffffffff60c01b0319099450600160601b63ffffffff60c01b03198586099350600160601b63ffffffff60c01b0319848d099250600160601b63ffffffff60c01b03198486099450600160601b63ffffffff60c01b0319808c600160601b63ffffffff60c01b0319038e08600160601b63ffffffff60c01b03198d8f08099050600160601b63ffffffff60c01b0319816003099150600160601b63ffffffff60c01b03198a86099950600160601b63ffffffff60c01b03198b85099a50600160601b63ffffffff60c01b031980846002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319848509089b50600160601b63ffffffff60c01b0319808d600160601b63ffffffff60c01b031903850883099350600160601b63ffffffff60c01b0319808a87098508985050505050506109b1565b600160601b63ffffffff60c01b03198485099150600160601b63ffffffff60c01b0319848309600160601b63ffffffff60c01b0319838d099b50600160601b63ffffffff60c01b0319818c099a50600160601b63ffffffff60c01b0319838e09600160601b63ffffffff60c01b031980826002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b031984600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b031987880908089350600160601b63ffffffff60c01b031980838d09600160601b63ffffffff60c01b031985600160601b63ffffffff60c01b031988600160601b63ffffffff60c01b031903860809089a50505050809a50505050505b6001830392506104e7565b60405186606082015260208152602080820152602060408201526002600160601b0363ffffffff60c01b03196080820152600160601b63ffffffff60c01b031960a082015260208160c0836005600019fa610a1657600080fd5b600160601b63ffffffff60c01b0319815189099750505050505050505b949350505050565b600080808086610a52578585935093505050610ac0565b84610a64578787935093505050610ac0565b8588148015610a7257508487145b15610a9357610a848888600180610ac9565b929a5090985092509050610aad565b610aa288886001808a8a610c24565b929a50909850925090505b610ab988888484610da8565b9350935050505b94509492505050565b600080600080600160601b63ffffffff60c01b0319876002099350600160601b63ffffffff60c01b03198485099150600160601b63ffffffff60c01b03198289099050600160601b63ffffffff60c01b03198285099250600160601b63ffffffff60c01b03198683099150600160601b63ffffffff60c01b031980600160601b63ffffffff60c01b0319888b08600160601b63ffffffff60c01b031989600160601b63ffffffff60c01b0319038c08096003099550600160601b63ffffffff60c01b031980826002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319888909089350600160601b63ffffffff60c01b03198085600160601b63ffffffff60c01b031903830887099750600160601b63ffffffff60c01b03198584099050600160601b63ffffffff60c01b031980888509600160601b63ffffffff60c01b03190389089250945094509450949050565b60008060008088600003610c4357508492508391506001905080610d9b565b600160601b63ffffffff60c01b0319988903988981898809089450600160601b63ffffffff60c01b03198a600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b03198a8909089550600160601b63ffffffff60c01b03198687099350600160601b63ffffffff60c01b03198685099250600160601b63ffffffff60c01b03198489099150600160601b63ffffffff60c01b03198388099050600160601b63ffffffff60c01b0319848b099750600160601b63ffffffff60c01b031980896002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b031985600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b0319898a0908089350600160601b63ffffffff60c01b031980848b09600160601b63ffffffff60c01b031987600160601b63ffffffff60c01b031988600160601b63ffffffff60c01b0319038d08090892505b9650965096509692505050565b6000806000610db684610e15565b9050600160601b63ffffffff60c01b031981870991506000600160601b63ffffffff60c01b03198287099050600160601b63ffffffff60c01b03198182099150600160601b63ffffffff60c01b03198289099350505094509492505050565b600060405160208152602080820152602060408201528260608201526002600160601b0363ffffffff60c01b03196080820152600160601b63ffffffff60c01b031960a082015260208160c0836005600019fa61036a57600080fd5b60008085851115610e8157600080fd5b83861115610e8e57600080fd5b5050820193919092039150565b803560208310156102f957600019602084900360031b1b1692915050565b818103818111156102f957634e487b7160e01b600052601160045260246000fdfeffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "nonce": "0x21", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x3f20c892b7e2c3b56f10b9131d7aa933374c50281e3f565d9727d8a5f248cd98", + "transactionType": "CREATE2", + "contractName": "WebAuthnFclValidator", + "contractAddress": "0x42085b533b27B9AfDAF3864a38c72eF853943DAB", + "function": null, + "arguments": [ + "0x738e3257EE928637fE62c37F91D3e722C45Dcc7C" + ], + "transaction": { + "type": "0x02", + "from": "0x7caf754c934710d7c73bc453654552beca38223f", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0xf83b2", + "value": "0x0", + "data": "0x7a7683d175e8b5fc215ff42554ad65cdcf0caead93621fad19a86b9f78416d2a60a060405234801561001057600080fd5b50604051610cd6380380610cd683398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b608051610c4b61008b60003960006103a80152610c4b6000f3fe6080604052600436106100705760003560e01c8063857cdbb81161004e578063857cdbb8146100d05780638fc925aa146101235780639112b1ad1461014b5780639ea9bd591461017057600080fd5b80630c95955614610075578063333daf921461008a5780633a871cdd146100bd575b600080fd5b610088610083366004610874565b610190565b005b34801561009657600080fd5b506100aa6100a53660046108b6565b61021b565b6040519081526020015b60405180910390f35b6100aa6100cb366004610902565b61026a565b3480156100dc57600080fd5b5061010e6100eb366004610972565b6001600160a01b0316600090815260208190526040902080546001909101549091565b604080519283526020830191909152016100b4565b610088610131366004610874565b505033600090815260208190526040812081815560010155565b34801561015757600080fd5b506101606102c9565b60405190151581526020016100b4565b34801561017c57600080fd5b5061016061018b36600461098d565b610386565b600080806101a0848601866109dd565b33600090815260208190526040908190208381556001810183905590519396509194509250906101d1908590610ac5565b60408051918290038220858352602083018590529133917ff35f455f13928c63f3f93ef6e5c32ab67d30d0d3961c9aa4b5436265999fd65b910160405180910390a3505050505050565b33600090815260208181526040808320815180830190925280548252600101549181019190915261024e818686866103a1565b1561025d576000915050610263565b60019150505b9392505050565b600080808061027c6020880188610972565b6001600160a01b0316815260208082019290925260409081016000208151808301909252805482526001015491810191909152905061024e81856102c4610140890189610ae1565b6103a1565b6000806040518060c0016040528060a08152602001610bab60a0913990506000806101006001600160a01b0316836040516103049190610ac5565b600060405180830381855afa9150503d806000811461033f576040519150601f19603f3d011682016040523d82523d6000602084013e610344565b606091505b509150915081158061035557508051155b15610364576000935050505090565b60008180602001905181019061037a9190610b28565b60011495945050505050565b600060405163d623472560e01b815260040160405180910390fd5b60006103d97f000000000000000000000000000000000000000000000000000000000000000085858589600001518a602001516103e2565b95945050505050565b6000846103f26020820182610b41565b6103fc5761010097505b600061040888836104f3565b60408051602081018390526080858101358284015260a08087013560608401529082018990528082018890528251808303909101815260c09091019182905291925060009081906001600160a01b038d1690610465908590610ac5565b600060405180830381855afa9150503d80600081146104a0576040519150601f19603f3d011682016040523d82523d6000602084013e6104a5565b606091505b5090925090508115806104b757508051155b156104ca576000955050505050506104e9565b808060200190518101906104de9190610b28565b600114955050505050505b9695505050505050565b600036816105046020850185610ae1565b90925090503660006105196040870187610ae1565b909250905060608601356001810161053857879550505050505061073d565b600160f81b808686602081811061055157610551610b63565b9050013560f81c60f81b166001600160f81b031916146105845760405163408bbba360e11b815260040160405180910390fd5b60006105b38960405160200161059c91815260200190565b604051602081830303815290604052600180610743565b90506000815167ffffffffffffffff8111156105d1576105d16109c7565b6040519080825280601f01601f1916602001820160405280156105fb576020820181803683370190505b509050805183860160208301378151602083012081516020830120146106295763811777466000526004601cfd5b5060009050610639856020610b79565b67ffffffffffffffff811115610651576106516109c7565b6040519080825280601f01601f19166020018201604052801561067b576020820181803683370190505b50905084866020830137600060028585604051610699929190610b9a565b602060405180830381855afa1580156106b6573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906106d99190610b28565b905080602087018301526002826040516106f39190610ac5565b602060405180830381855afa158015610710573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906107339190610b28565b9750505050505050505b92915050565b606083518015610823576003600282010460021b60405192507f4142434445464748494a4b4c4d4e4f505152535455565758595a616263646566601f526106708515027f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392d5f18603f52602083018181015b6003880197508751603f8160121c1651600053603f81600c1c1651600153603f8160061c1651600253603f8116516003535060005182526004820191508082106107b357602001604052613d3d60f01b600384066002048083039190915260008615159091029182900352900382525b509392505050565b60008083601f84011261083d57600080fd5b50813567ffffffffffffffff81111561085557600080fd5b60208301915083602082850101111561086d57600080fd5b9250929050565b6000806020838503121561088757600080fd5b823567ffffffffffffffff81111561089e57600080fd5b6108aa8582860161082b565b90969095509350505050565b6000806000604084860312156108cb57600080fd5b83359250602084013567ffffffffffffffff8111156108e957600080fd5b6108f58682870161082b565b9497909650939450505050565b60008060006060848603121561091757600080fd5b833567ffffffffffffffff81111561092e57600080fd5b8401610160818703121561094157600080fd5b95602085013595506040909401359392505050565b80356001600160a01b038116811461096d57600080fd5b919050565b60006020828403121561098457600080fd5b61026382610956565b6000806000604084860312156109a257600080fd5b6109ab84610956565b9250602084013567ffffffffffffffff8111156108e957600080fd5b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156109f257600080fd5b833567ffffffffffffffff80821115610a0a57600080fd5b818601915086601f830112610a1e57600080fd5b813581811115610a3057610a306109c7565b604051601f8201601f19908116603f01168101908382118183101715610a5857610a586109c7565b81604052828152896020848701011115610a7157600080fd5b82602086016020830137600060208483010152809750505050505060208401359150604084013590509250925092565b60005b83811015610abc578181015183820152602001610aa4565b50506000910152565b60008251610ad7818460208701610aa1565b9190910192915050565b6000808335601e19843603018112610af857600080fd5b83018035915067ffffffffffffffff821115610b1357600080fd5b60200191503681900382131561086d57600080fd5b600060208284031215610b3a57600080fd5b5051919050565b600060208284031215610b5357600080fd5b8135801515811461026357600080fd5b634e487b7160e01b600052603260045260246000fd5b8082018082111561073d57634e487b7160e01b600052601160045260246000fd5b818382376000910190815291905056fe4cee90eb86eaa050036147a12d49004b6b9c72bd725d39d4785011fe190f0b4da73bd4903f0ce3b639bbbf6e8e80d16931ff4bcf5993d58468e8fb19086e8cac36dbcd03009df8c59286b162af3bd7fcc0450c9aa81be5d10d312af6c66b1d604aebd3099c618202fcfe16ae7770b0c49ab5eadf74b754204a3bb6060e44eff37618b065f9832de4ca6ca971a7a1adc826d0f7c00181a5fb2ddf79ae00b4e10e000000000000000000000000738e3257ee928637fe62c37f91d3e722c45dcc7c", + "nonce": "0x22", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0xb01505a4fb9ae3db32b20cacfd6fb045c229299fb78ea0516da1026fe175cee3", + "transactionIndex": "0x0", + "blockHash": "0x1810259d916370362970fd8cfee7ec8f35ade7ae35a3427cdbc9fa242a4c5d5c", + "blockNumber": "0x49641f", + "from": "0x7caF754C934710D7C73bc453654552BEcA38223F", + "to": "0x4e59b44847b379578588920cA78FbF26c0B4956C", + "cumulativeGasUsed": "0xd7c3e", + "gasUsed": "0xd7c3e", + "contractAddress": null, + "logs": [ + { + "address": "0x0000000000000000000000000000000000001010", + "topics": [ + "0x4dfe1bbbcf077ddc3e01291eea2d5c70c2b422b415d95645b9adcfd678cb1d63", + "0x0000000000000000000000000000000000000000000000000000000000001010", + "0x0000000000000000000000007caf754c934710d7c73bc453654552beca38223f", + "0x000000000000000000000000915a2284d28bd93de7d6f31173b981204bb666e6" + ], + "data": "0x00000000000000000000000000000000000000000000000000096b5d01fec400000000000000000000000000000000000000000000000000122c037a518e05280000000000000000000000000000000000000000000000095644a6b4d2d2b4a50000000000000000000000000000000000000000000000001222981d4f8f4128000000000000000000000000000000000000000000000009564e1211d4d178a5", + "blockHash": "0x1810259d916370362970fd8cfee7ec8f35ade7ae35a3427cdbc9fa242a4c5d5c", + "blockNumber": "0x49641f", + "transactionHash": "0xb01505a4fb9ae3db32b20cacfd6fb045c229299fb78ea0516da1026fe175cee3", + "transactionIndex": "0x0", + "logIndex": "0x0", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000010000000000000000200000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000800000000000000000000100000000000000000000000000000000000000000002000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000008000000000000000004000000000000000000001000000000000000002000000000000100000000000000000000000000000000000000000000000000000400000000000000000100000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05e0f" + }, + { + "transactionHash": "0x3f20c892b7e2c3b56f10b9131d7aa933374c50281e3f565d9727d8a5f248cd98", + "transactionIndex": "0x1", + "blockHash": "0x1810259d916370362970fd8cfee7ec8f35ade7ae35a3427cdbc9fa242a4c5d5c", + "blockNumber": "0x49641f", + "from": "0x7caF754C934710D7C73bc453654552BEcA38223F", + "to": "0x4e59b44847b379578588920cA78FbF26c0B4956C", + "cumulativeGasUsed": "0x18b87e", + "gasUsed": "0xb3c40", + "contractAddress": null, + "logs": [ + { + "address": "0x0000000000000000000000000000000000001010", + "topics": [ + "0x4dfe1bbbcf077ddc3e01291eea2d5c70c2b422b415d95645b9adcfd678cb1d63", + "0x0000000000000000000000000000000000000000000000000000000000001010", + "0x0000000000000000000000007caf754c934710d7c73bc453654552beca38223f", + "0x000000000000000000000000915a2284d28bd93de7d6f31173b981204bb666e6" + ], + "data": "0x0000000000000000000000000000000000000000000000000007d909941f80000000000000000000000000000000000000000000000000001222981d4ec4f986000000000000000000000000000000000000000000000009564e1211d4d178a5000000000000000000000000000000000000000000000000121abf13baa579860000000000000000000000000000000000000000000000095655eb1b68f0f8a5", + "blockHash": "0x1810259d916370362970fd8cfee7ec8f35ade7ae35a3427cdbc9fa242a4c5d5c", + "blockNumber": "0x49641f", + "transactionHash": "0x3f20c892b7e2c3b56f10b9131d7aa933374c50281e3f565d9727d8a5f248cd98", + "transactionIndex": "0x1", + "logIndex": "0x1", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000010000000000000000200000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000800000000000000000000100000000000000000000000000000000000000000002000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000008000000000000000004000000000000000000001000000000000000002000000000000100000000000000000000000000000000000000000000000000000400000000000000000100000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05e0f" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1710798602, + "chain": 80002, + "commit": "7cf4583" +} \ No newline at end of file diff --git a/broadcast/DeployDeterministic.s.sol/80002/run-latest.json b/broadcast/DeployDeterministic.s.sol/80002/run-latest.json new file mode 100644 index 00000000..64dff567 --- /dev/null +++ b/broadcast/DeployDeterministic.s.sol/80002/run-latest.json @@ -0,0 +1,120 @@ +{ + "transactions": [ + { + "hash": "0xb01505a4fb9ae3db32b20cacfd6fb045c229299fb78ea0516da1026fe175cee3", + "transactionType": "CREATE2", + "contractName": "P256VerifierWrapper", + "contractAddress": "0x738e3257EE928637fE62c37F91D3e722C45Dcc7C", + "function": null, + "arguments": null, + "transaction": { + "type": "0x02", + "from": "0x7caf754c934710d7c73bc453654552beca38223f", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0x129f19", + "value": "0x0", + "data": "0x7a7683d175e8b5fc215ff42554ad65cdcf0caead93621fad19a86b9f78416d2a608060405234801561001057600080fd5b50610efb806100206000396000f3fe608060405234801561001057600080fd5b50600036606060a08214610040576040805160006020820152016040516020818303038152906040529050610113565b600061004f6020828587610e71565b61005891610e9b565b9050600061006a604060208688610e71565b61007391610e9b565b90506000610085606060408789610e71565b61008e91610e9b565b905060006100a060806060888a610e71565b6100a991610e9b565b905060006100bb60a06080898b610e71565b6100c491610e9b565b905060006100d5868686868661011e565b6100e05760006100e3565b60015b60ff169050806040516020016100fb91815260200190565b60405160208183030381529060405296505050505050505b915050805190602001f35b600084158061013b5750600080516020610edb8339815191528510155b80610144575083155b8061015d5750600080516020610edb8339815191528410155b1561016a575060006101fa565b6101748383610203565b610180575060006101fa565b600061018b856102ff565b90506000600080516020610edb83398151915282890990506000600080516020610edb833981519152838909905060006101c787878585610371565b9050600080516020610edb8339815191526101f08a600080516020610edb833981519152610eb9565b8208159450505050505b95945050505050565b600082158015610211575081155b806102295750600160601b63ffffffff60c01b031983145b806102415750600160601b63ffffffff60c01b031982145b1561024e575060006102f9565b6000600160601b63ffffffff60c01b031983840990506000600160601b63ffffffff60c01b0319807fffffffff00000001000000000000000000000000fffffffffffffffffffffffc8709600160601b63ffffffff60c01b031987600160601b63ffffffff60c01b0319898a0909089050600160601b63ffffffff60c01b03197f5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b8208919091149150505b92915050565b600060405160208152602080820152602060408201528260608201527fffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc63254f6080820152600080516020610edb83398151915260a082015260208160c0836005600019fa61036a57600080fd5b5192915050565b600080808060ff818088158015610386575087155b1561039a5760009650505050505050610a33565b6103e67f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c2967f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f58d8d610a3b565b9092509050811580156103f7575080155b1561042557600080516020610edb83398151915288600080516020610edb833981519152038a089850600097505b600189841c16600189851c1660011b015b806104585760018403935060018a851c1660018a861c1660011b019050610436565b50600189841c16600189851c1660011b019550600186036104ba577f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29696507f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f593505b600286036104c9578a96508993505b600386036104d8578196508093505b60018303925060019550600194505b8260001911156109bc57600160601b63ffffffff60c01b031984600209600160601b63ffffffff60c01b0319818209600160601b63ffffffff60c01b0319818a09600160601b63ffffffff60c01b03198284099250600160601b63ffffffff60c01b031980600160601b63ffffffff60c01b03198b8d08600160601b63ffffffff60c01b03198c600160601b63ffffffff60c01b0319038e0809600309600160601b63ffffffff60c01b03198985099850600160601b63ffffffff60c01b03198a84099950600160601b63ffffffff60c01b031980836002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319838409089a50600160601b63ffffffff60c01b03198083600160601b63ffffffff60c01b0319038d0882099250600160601b63ffffffff60c01b031983600160601b63ffffffff60c01b03198a870908975060018d881c1660018d891c1660011b019050806106645787600160601b63ffffffff60c01b0319039750505050506109b1565b600181036106b3577f6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c29693507f4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f592505b600281036106c2578e93508d92505b600381036106d1578593508492505b896106ea57509198506001975087965094506109b19050565b600160601b63ffffffff60c01b031988600160601b63ffffffff60c01b03198b860908600160601b63ffffffff60c01b03198c600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b03198d8809089350806108a357836108a357600160601b63ffffffff60c01b0319896002600160601b0363ffffffff60c01b0319099450600160601b63ffffffff60c01b03198586099350600160601b63ffffffff60c01b0319848d099250600160601b63ffffffff60c01b03198486099450600160601b63ffffffff60c01b0319808c600160601b63ffffffff60c01b0319038e08600160601b63ffffffff60c01b03198d8f08099050600160601b63ffffffff60c01b0319816003099150600160601b63ffffffff60c01b03198a86099950600160601b63ffffffff60c01b03198b85099a50600160601b63ffffffff60c01b031980846002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319848509089b50600160601b63ffffffff60c01b0319808d600160601b63ffffffff60c01b031903850883099350600160601b63ffffffff60c01b0319808a87098508985050505050506109b1565b600160601b63ffffffff60c01b03198485099150600160601b63ffffffff60c01b0319848309600160601b63ffffffff60c01b0319838d099b50600160601b63ffffffff60c01b0319818c099a50600160601b63ffffffff60c01b0319838e09600160601b63ffffffff60c01b031980826002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b031984600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b031987880908089350600160601b63ffffffff60c01b031980838d09600160601b63ffffffff60c01b031985600160601b63ffffffff60c01b031988600160601b63ffffffff60c01b031903860809089a50505050809a50505050505b6001830392506104e7565b60405186606082015260208152602080820152602060408201526002600160601b0363ffffffff60c01b03196080820152600160601b63ffffffff60c01b031960a082015260208160c0836005600019fa610a1657600080fd5b600160601b63ffffffff60c01b0319815189099750505050505050505b949350505050565b600080808086610a52578585935093505050610ac0565b84610a64578787935093505050610ac0565b8588148015610a7257508487145b15610a9357610a848888600180610ac9565b929a5090985092509050610aad565b610aa288886001808a8a610c24565b929a50909850925090505b610ab988888484610da8565b9350935050505b94509492505050565b600080600080600160601b63ffffffff60c01b0319876002099350600160601b63ffffffff60c01b03198485099150600160601b63ffffffff60c01b03198289099050600160601b63ffffffff60c01b03198285099250600160601b63ffffffff60c01b03198683099150600160601b63ffffffff60c01b031980600160601b63ffffffff60c01b0319888b08600160601b63ffffffff60c01b031989600160601b63ffffffff60c01b0319038c08096003099550600160601b63ffffffff60c01b031980826002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b0319888909089350600160601b63ffffffff60c01b03198085600160601b63ffffffff60c01b031903830887099750600160601b63ffffffff60c01b03198584099050600160601b63ffffffff60c01b031980888509600160601b63ffffffff60c01b03190389089250945094509450949050565b60008060008088600003610c4357508492508391506001905080610d9b565b600160601b63ffffffff60c01b0319988903988981898809089450600160601b63ffffffff60c01b03198a600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b03198a8909089550600160601b63ffffffff60c01b03198687099350600160601b63ffffffff60c01b03198685099250600160601b63ffffffff60c01b03198489099150600160601b63ffffffff60c01b03198388099050600160601b63ffffffff60c01b0319848b099750600160601b63ffffffff60c01b031980896002600160601b0363ffffffff60c01b031909600160601b63ffffffff60c01b031985600160601b63ffffffff60c01b031903600160601b63ffffffff60c01b0319898a0908089350600160601b63ffffffff60c01b031980848b09600160601b63ffffffff60c01b031987600160601b63ffffffff60c01b031988600160601b63ffffffff60c01b0319038d08090892505b9650965096509692505050565b6000806000610db684610e15565b9050600160601b63ffffffff60c01b031981870991506000600160601b63ffffffff60c01b03198287099050600160601b63ffffffff60c01b03198182099150600160601b63ffffffff60c01b03198289099350505094509492505050565b600060405160208152602080820152602060408201528260608201526002600160601b0363ffffffff60c01b03196080820152600160601b63ffffffff60c01b031960a082015260208160c0836005600019fa61036a57600080fd5b60008085851115610e8157600080fd5b83861115610e8e57600080fd5b5050820193919092039150565b803560208310156102f957600019602084900360031b1b1692915050565b818103818111156102f957634e487b7160e01b600052601160045260246000fdfeffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551", + "nonce": "0x21", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x3f20c892b7e2c3b56f10b9131d7aa933374c50281e3f565d9727d8a5f248cd98", + "transactionType": "CREATE2", + "contractName": "WebAuthnFclValidator", + "contractAddress": "0x42085b533b27B9AfDAF3864a38c72eF853943DAB", + "function": null, + "arguments": [ + "0x738e3257EE928637fE62c37F91D3e722C45Dcc7C" + ], + "transaction": { + "type": "0x02", + "from": "0x7caf754c934710d7c73bc453654552beca38223f", + "to": "0x4e59b44847b379578588920ca78fbf26c0b4956c", + "gas": "0xf83b2", + "value": "0x0", + "data": "0x7a7683d175e8b5fc215ff42554ad65cdcf0caead93621fad19a86b9f78416d2a60a060405234801561001057600080fd5b50604051610cd6380380610cd683398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b608051610c4b61008b60003960006103a80152610c4b6000f3fe6080604052600436106100705760003560e01c8063857cdbb81161004e578063857cdbb8146100d05780638fc925aa146101235780639112b1ad1461014b5780639ea9bd591461017057600080fd5b80630c95955614610075578063333daf921461008a5780633a871cdd146100bd575b600080fd5b610088610083366004610874565b610190565b005b34801561009657600080fd5b506100aa6100a53660046108b6565b61021b565b6040519081526020015b60405180910390f35b6100aa6100cb366004610902565b61026a565b3480156100dc57600080fd5b5061010e6100eb366004610972565b6001600160a01b0316600090815260208190526040902080546001909101549091565b604080519283526020830191909152016100b4565b610088610131366004610874565b505033600090815260208190526040812081815560010155565b34801561015757600080fd5b506101606102c9565b60405190151581526020016100b4565b34801561017c57600080fd5b5061016061018b36600461098d565b610386565b600080806101a0848601866109dd565b33600090815260208190526040908190208381556001810183905590519396509194509250906101d1908590610ac5565b60408051918290038220858352602083018590529133917ff35f455f13928c63f3f93ef6e5c32ab67d30d0d3961c9aa4b5436265999fd65b910160405180910390a3505050505050565b33600090815260208181526040808320815180830190925280548252600101549181019190915261024e818686866103a1565b1561025d576000915050610263565b60019150505b9392505050565b600080808061027c6020880188610972565b6001600160a01b0316815260208082019290925260409081016000208151808301909252805482526001015491810191909152905061024e81856102c4610140890189610ae1565b6103a1565b6000806040518060c0016040528060a08152602001610bab60a0913990506000806101006001600160a01b0316836040516103049190610ac5565b600060405180830381855afa9150503d806000811461033f576040519150601f19603f3d011682016040523d82523d6000602084013e610344565b606091505b509150915081158061035557508051155b15610364576000935050505090565b60008180602001905181019061037a9190610b28565b60011495945050505050565b600060405163d623472560e01b815260040160405180910390fd5b60006103d97f000000000000000000000000000000000000000000000000000000000000000085858589600001518a602001516103e2565b95945050505050565b6000846103f26020820182610b41565b6103fc5761010097505b600061040888836104f3565b60408051602081018390526080858101358284015260a08087013560608401529082018990528082018890528251808303909101815260c09091019182905291925060009081906001600160a01b038d1690610465908590610ac5565b600060405180830381855afa9150503d80600081146104a0576040519150601f19603f3d011682016040523d82523d6000602084013e6104a5565b606091505b5090925090508115806104b757508051155b156104ca576000955050505050506104e9565b808060200190518101906104de9190610b28565b600114955050505050505b9695505050505050565b600036816105046020850185610ae1565b90925090503660006105196040870187610ae1565b909250905060608601356001810161053857879550505050505061073d565b600160f81b808686602081811061055157610551610b63565b9050013560f81c60f81b166001600160f81b031916146105845760405163408bbba360e11b815260040160405180910390fd5b60006105b38960405160200161059c91815260200190565b604051602081830303815290604052600180610743565b90506000815167ffffffffffffffff8111156105d1576105d16109c7565b6040519080825280601f01601f1916602001820160405280156105fb576020820181803683370190505b509050805183860160208301378151602083012081516020830120146106295763811777466000526004601cfd5b5060009050610639856020610b79565b67ffffffffffffffff811115610651576106516109c7565b6040519080825280601f01601f19166020018201604052801561067b576020820181803683370190505b50905084866020830137600060028585604051610699929190610b9a565b602060405180830381855afa1580156106b6573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906106d99190610b28565b905080602087018301526002826040516106f39190610ac5565b602060405180830381855afa158015610710573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906107339190610b28565b9750505050505050505b92915050565b606083518015610823576003600282010460021b60405192507f4142434445464748494a4b4c4d4e4f505152535455565758595a616263646566601f526106708515027f6768696a6b6c6d6e6f707172737475767778797a303132333435363738392d5f18603f52602083018181015b6003880197508751603f8160121c1651600053603f81600c1c1651600153603f8160061c1651600253603f8116516003535060005182526004820191508082106107b357602001604052613d3d60f01b600384066002048083039190915260008615159091029182900352900382525b509392505050565b60008083601f84011261083d57600080fd5b50813567ffffffffffffffff81111561085557600080fd5b60208301915083602082850101111561086d57600080fd5b9250929050565b6000806020838503121561088757600080fd5b823567ffffffffffffffff81111561089e57600080fd5b6108aa8582860161082b565b90969095509350505050565b6000806000604084860312156108cb57600080fd5b83359250602084013567ffffffffffffffff8111156108e957600080fd5b6108f58682870161082b565b9497909650939450505050565b60008060006060848603121561091757600080fd5b833567ffffffffffffffff81111561092e57600080fd5b8401610160818703121561094157600080fd5b95602085013595506040909401359392505050565b80356001600160a01b038116811461096d57600080fd5b919050565b60006020828403121561098457600080fd5b61026382610956565b6000806000604084860312156109a257600080fd5b6109ab84610956565b9250602084013567ffffffffffffffff8111156108e957600080fd5b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156109f257600080fd5b833567ffffffffffffffff80821115610a0a57600080fd5b818601915086601f830112610a1e57600080fd5b813581811115610a3057610a306109c7565b604051601f8201601f19908116603f01168101908382118183101715610a5857610a586109c7565b81604052828152896020848701011115610a7157600080fd5b82602086016020830137600060208483010152809750505050505060208401359150604084013590509250925092565b60005b83811015610abc578181015183820152602001610aa4565b50506000910152565b60008251610ad7818460208701610aa1565b9190910192915050565b6000808335601e19843603018112610af857600080fd5b83018035915067ffffffffffffffff821115610b1357600080fd5b60200191503681900382131561086d57600080fd5b600060208284031215610b3a57600080fd5b5051919050565b600060208284031215610b5357600080fd5b8135801515811461026357600080fd5b634e487b7160e01b600052603260045260246000fd5b8082018082111561073d57634e487b7160e01b600052601160045260246000fd5b818382376000910190815291905056fe4cee90eb86eaa050036147a12d49004b6b9c72bd725d39d4785011fe190f0b4da73bd4903f0ce3b639bbbf6e8e80d16931ff4bcf5993d58468e8fb19086e8cac36dbcd03009df8c59286b162af3bd7fcc0450c9aa81be5d10d312af6c66b1d604aebd3099c618202fcfe16ae7770b0c49ab5eadf74b754204a3bb6060e44eff37618b065f9832de4ca6ca971a7a1adc826d0f7c00181a5fb2ddf79ae00b4e10e000000000000000000000000738e3257ee928637fe62c37f91d3e722c45dcc7c", + "nonce": "0x22", + "accessList": [] + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0xb01505a4fb9ae3db32b20cacfd6fb045c229299fb78ea0516da1026fe175cee3", + "transactionIndex": "0x0", + "blockHash": "0x1810259d916370362970fd8cfee7ec8f35ade7ae35a3427cdbc9fa242a4c5d5c", + "blockNumber": "0x49641f", + "from": "0x7caF754C934710D7C73bc453654552BEcA38223F", + "to": "0x4e59b44847b379578588920cA78FbF26c0B4956C", + "cumulativeGasUsed": "0xd7c3e", + "gasUsed": "0xd7c3e", + "contractAddress": null, + "logs": [ + { + "address": "0x0000000000000000000000000000000000001010", + "topics": [ + "0x4dfe1bbbcf077ddc3e01291eea2d5c70c2b422b415d95645b9adcfd678cb1d63", + "0x0000000000000000000000000000000000000000000000000000000000001010", + "0x0000000000000000000000007caf754c934710d7c73bc453654552beca38223f", + "0x000000000000000000000000915a2284d28bd93de7d6f31173b981204bb666e6" + ], + "data": "0x00000000000000000000000000000000000000000000000000096b5d01fec400000000000000000000000000000000000000000000000000122c037a518e05280000000000000000000000000000000000000000000000095644a6b4d2d2b4a50000000000000000000000000000000000000000000000001222981d4f8f4128000000000000000000000000000000000000000000000009564e1211d4d178a5", + "blockHash": "0x1810259d916370362970fd8cfee7ec8f35ade7ae35a3427cdbc9fa242a4c5d5c", + "blockNumber": "0x49641f", + "transactionHash": "0xb01505a4fb9ae3db32b20cacfd6fb045c229299fb78ea0516da1026fe175cee3", + "transactionIndex": "0x0", + "logIndex": "0x0", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000010000000000000000200000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000800000000000000000000100000000000000000000000000000000000000000002000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000008000000000000000004000000000000000000001000000000000000002000000000000100000000000000000000000000000000000000000000000000000400000000000000000100000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05e0f" + }, + { + "transactionHash": "0x3f20c892b7e2c3b56f10b9131d7aa933374c50281e3f565d9727d8a5f248cd98", + "transactionIndex": "0x1", + "blockHash": "0x1810259d916370362970fd8cfee7ec8f35ade7ae35a3427cdbc9fa242a4c5d5c", + "blockNumber": "0x49641f", + "from": "0x7caF754C934710D7C73bc453654552BEcA38223F", + "to": "0x4e59b44847b379578588920cA78FbF26c0B4956C", + "cumulativeGasUsed": "0x18b87e", + "gasUsed": "0xb3c40", + "contractAddress": null, + "logs": [ + { + "address": "0x0000000000000000000000000000000000001010", + "topics": [ + "0x4dfe1bbbcf077ddc3e01291eea2d5c70c2b422b415d95645b9adcfd678cb1d63", + "0x0000000000000000000000000000000000000000000000000000000000001010", + "0x0000000000000000000000007caf754c934710d7c73bc453654552beca38223f", + "0x000000000000000000000000915a2284d28bd93de7d6f31173b981204bb666e6" + ], + "data": "0x0000000000000000000000000000000000000000000000000007d909941f80000000000000000000000000000000000000000000000000001222981d4ec4f986000000000000000000000000000000000000000000000009564e1211d4d178a5000000000000000000000000000000000000000000000000121abf13baa579860000000000000000000000000000000000000000000000095655eb1b68f0f8a5", + "blockHash": "0x1810259d916370362970fd8cfee7ec8f35ade7ae35a3427cdbc9fa242a4c5d5c", + "blockNumber": "0x49641f", + "transactionHash": "0x3f20c892b7e2c3b56f10b9131d7aa933374c50281e3f565d9727d8a5f248cd98", + "transactionIndex": "0x1", + "logIndex": "0x1", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000010000000000000000200000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000800000000000000000000100000000000000000000000000000000000000000002000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000008000000000000000004000000000000000000001000000000000000002000000000000100000000000000000000000000000000000000000000000000000400000000000000000100000", + "type": "0x2", + "effectiveGasPrice": "0xb2d05e0f" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1710798602, + "chain": 80002, + "commit": "7cf4583" +} \ No newline at end of file diff --git a/script/DeployDeterministic.s.sol b/script/DeployDeterministic.s.sol index caae47ac..5674e023 100644 --- a/script/DeployDeterministic.s.sol +++ b/script/DeployDeterministic.s.sol @@ -8,6 +8,7 @@ import "./deterministic/Factory.s.sol"; import "./deterministic/SessionKey.s.sol"; import "./deterministic/Kernel2_2.s.sol"; import "./deterministic/Kernel2_3.s.sol"; +import "./deterministic/FclWebAuthNValidator.s.sol"; contract DeployDeterministic is Script { address constant DEPLOYER = 0x9775137314fE595c943712B0b336327dfa80aE8A; @@ -35,6 +36,10 @@ contract DeployDeterministic is Script { if (!factory.isAllowedImplementation(k23lite)) { factory.setImplementation(k23lite, true); } + + // Deploy the webauthn fcl validators + FclWebAuthnValidatorDeploy.deployWebAuthnFclVerifier(); + vm.stopBroadcast(); } } diff --git a/script/DeployWebAuthnFclValidator.sol b/script/DeployWebAuthnFclValidator.sol deleted file mode 100644 index 94437add..00000000 --- a/script/DeployWebAuthnFclValidator.sol +++ /dev/null @@ -1,22 +0,0 @@ -pragma solidity ^0.8.0; - -import "src/factory/KernelFactory.sol"; -import "src/utils/P256VerifierWrapper.sol"; -import "src/validator/webauthn//WebAuthnFclValidator.sol"; -import "forge-std/Script.sol"; -import "forge-std/console.sol"; - -contract DeployWebAuthnFclValidator is Script { - function run() public { - uint256 key = vm.envUint("DEPLOYER_PRIVATE_KEY"); - vm.startBroadcast(key); - - P256VerifierWrapper p256VerifierWrapper = new P256VerifierWrapper{salt: 0}(); - console.log("p256 wrapper address: %s", address(p256VerifierWrapper)); - - WebAuthnFclValidator validator = new WebAuthnFclValidator{salt: 0}(address(p256VerifierWrapper)); - console.log("validator address: %s", address(validator)); - - vm.stopBroadcast(); - } -} diff --git a/script/deterministic/FclWebAuthNValidator.s.sol b/script/deterministic/FclWebAuthNValidator.s.sol new file mode 100644 index 00000000..31f9ad37 --- /dev/null +++ b/script/deterministic/FclWebAuthNValidator.s.sol @@ -0,0 +1,51 @@ +pragma solidity ^0.8.0; + +import "src/utils/P256VerifierWrapper.sol"; +import "src/validator/webauthn//WebAuthnFclValidator.sol"; +import "./DeterministicDeploy.s.sol"; +import "forge-std/console.sol"; + +/// @dev Deterministic deployment of FclWebAuthNValidator +library FclWebAuthnValidatorDeploy { + address constant EXPECTED_P256_VERIFIER_VALIDATOR_ADDRESS = 0x738e3257EE928637fE62c37F91D3e722C45Dcc7C; + + address constant EXPECTED_WEBAUTHN_VALIDATOR_ADDRESS = 0x42085b533b27B9AfDAF3864a38c72eF853943DAB; + + bytes32 constant DEPLOYMENT_SALT = keccak256("WebAuthNValidator by Frak"); + + /// @dev Deploy the P256VerifierWrapper and WebAuthnFclValidator + function deployWebAuthnFclVerifier() internal { + // Check if the contract of the p256 verifier is already deployed + if (EXPECTED_P256_VERIFIER_VALIDATOR_ADDRESS.code.length == 0) { + _deployOnChainP256(); + } else { + console.log("P256VerifierWrapper: already deployed"); + } + + // Deploy the WebAuthnFclValidator + if (EXPECTED_WEBAUTHN_VALIDATOR_ADDRESS.code.length == 0) { + _deployValidator(); + } else { + console.log("WebAuthnFclValidator: already deployed"); + } + } + + /// @dev Deploy the P256VerifierWrapper contract + function _deployOnChainP256() private { + P256VerifierWrapper p256Wrapper = new P256VerifierWrapper{salt: DEPLOYMENT_SALT}(); + require( + address(p256Wrapper) == EXPECTED_P256_VERIFIER_VALIDATOR_ADDRESS, + "FclWebAuthnValidatorDeploy: p256 wrapper address mismatch" + ); + } + + /// @dev Deploy the P256VerifierWrapper contract + function _deployValidator() private { + WebAuthnFclValidator validator = + new WebAuthnFclValidator{salt: DEPLOYMENT_SALT}(EXPECTED_P256_VERIFIER_VALIDATOR_ADDRESS); + require( + address(validator) == EXPECTED_WEBAUTHN_VALIDATOR_ADDRESS, + "FclWebAuthnValidatorDeploy: validator address mismatch" + ); + } +}