Skip to content

Commit

Permalink
cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
preston4896 committed Sep 5, 2024
1 parent ed37ade commit ebd81a6
Show file tree
Hide file tree
Showing 22 changed files with 186 additions and 7,738 deletions.
8 changes: 4 additions & 4 deletions forge-test/AutomataDcapAttestationTest.t.sol
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,8 @@ contract AutomataDcapAttestationTest is PCCSSetupBase {
vm.startPrank(admin);

// collateral upserts
string memory tcbInfoPath = "/assets/0624/tcbinfo.json";
string memory qeIdPath = "/assets/0624/identity.json";
string memory tcbInfoPath = "/forge-test/assets/0624/tcbinfo.json";
string memory qeIdPath = "/forge-test/assets/0624/identity.json";
qeIdDaoUpsert(3, qeIdPath);
fmspcTcbDaoUpsert(tcbInfoPath);

Expand Down Expand Up @@ -81,8 +81,8 @@ contract AutomataDcapAttestationTest is PCCSSetupBase {
vm.startPrank(admin);

// collateral upserts
string memory tcbInfoPath = "/assets/0624/tcbinfov3_00806f050000.json";
string memory qeIdPath = "/assets/0624/qeidentityv2_apiv4.json";
string memory tcbInfoPath = "/forge-test/assets/0624/tcbinfov3_00806f050000.json";
string memory qeIdPath = "/forge-test/assets/0624/qeidentityv2_apiv4.json";
qeIdDaoUpsert(4, qeIdPath);
fmspcTcbDaoUpsert(tcbInfoPath);

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion foundry.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[profile.default]
src = 'contracts'
out = 'out'
libs = ['node_modules', 'lib']
libs = ['lib']
script = 'forge-script'
test = 'forge-test'
cache_path = 'cache_forge'
Expand Down
1 change: 0 additions & 1 deletion groth16.json

This file was deleted.

43 changes: 0 additions & 43 deletions hardhat.config.ts

This file was deleted.

1 change: 1 addition & 0 deletions js/abi/AutomataDcapAttestation.json

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions js/abi/IAttestation.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"abi":[{"type":"function","name":"verifyAndAttestOnChain","inputs":[{"name":"input","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"success","type":"bool","internalType":"bool"},{"name":"output","type":"bytes","internalType":"bytes"}],"stateMutability":"nonpayable"},{"type":"function","name":"verifyAndAttestWithZKProof","inputs":[{"name":"journal","type":"bytes","internalType":"bytes"},{"name":"seal","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"success","type":"bool","internalType":"bool"},{"name":"output","type":"bytes","internalType":"bytes"}],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"verifyAndAttestOnChain(bytes)":"38d8480a","verifyAndAttestWithZKProof(bytes,bytes)":"13f19c80"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"input\",\"type\":\"bytes\"}],\"name\":\"verifyAndAttestOnChain\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"output\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"journal\",\"type\":\"bytes\"},{\"internalType\":\"bytes\",\"name\":\"seal\",\"type\":\"bytes\"}],\"name\":\"verifyAndAttestWithZKProof\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"internalType\":\"bytes\",\"name\":\"output\",\"type\":\"bytes\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"should also implement Risc0 Guest Program to use this interface. See https://dev.risczero.com/api/blockchain-integration/bonsai-on-eth to learn more\",\"kind\":\"dev\",\"methods\":{\"verifyAndAttestOnChain(bytes)\":{\"details\":\"must further specify the structure of inputs/outputs, to be serialized and passed to this methodcan directly type cast the failed output as a string\",\"params\":{\"input\":\"- serialized raw input as defined by the project\"},\"returns\":{\"output\":\"- the output upon completion of verification. The output data may require post-processing by the consumer. For verification failures, the output is simply a UTF-8 encoded string, describing the reason for failure.\",\"success\":\"- whether the quote has been successfully verified or not\"}},\"verifyAndAttestWithZKProof(bytes,bytes)\":{\"params\":{\"journal\":\"- The output of the Guest program, this includes: - VerifiedOutput struct - TcbInfo hash - QEID hash - RootCA hash - TCB Signing CA hash - Root CRL hash - Platform CRL hash - Processor CRL hash\",\"seal\":\"- The encoded cryptographic proof (i.e. SNARK).\"}}},\"title\":\"Interface standard that implement attestation contracts whose verification logic can be implemented both on-chain and with Risc0 ZK proofs\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"verifyAndAttestOnChain(bytes)\":{\"notice\":\"full on-chain verification for an attestation\"}},\"notice\":\"The interface simply provides two verification methods for a given attestation input. The user can either pay a possibly hefty gas cost to fully verify an attestation fully on-chain OR Provides ZK proofs from executing an off-chain program where the verification of such attestation is conducted.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/interfaces/IAttestation.sol\":\"IAttestation\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@automata-network/on-chain-pccs/=lib/automata-on-chain-pccs/src/\",\":@openzeppelin/contracts/=lib/automata-on-chain-pccs/lib/openzeppelin-contracts/contracts/\",\":automata-on-chain-pccs/=lib/automata-on-chain-pccs/\",\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":erc4626-tests/=lib/automata-on-chain-pccs/lib/openzeppelin-contracts/lib/erc4626-tests/\",\":eth-gas-reporter/=node_modules/eth-gas-reporter/\",\":forge-std/=lib/forge-std/src/\",\":halmos-cheatcodes/=lib/automata-on-chain-pccs/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/\",\":hardhat/=node_modules/hardhat/\",\":openzeppelin-contracts/=lib/automata-on-chain-pccs/lib/openzeppelin-contracts/\",\":openzeppelin/=lib/risc0-ethereum/lib/openzeppelin-contracts/\",\":p256-verifier/=lib/automata-on-chain-pccs/lib/p256-verifier/src/\",\":risc0-ethereum/=lib/risc0-ethereum/\",\":risc0/=lib/risc0-ethereum/contracts/src/\",\":solady/=lib/automata-on-chain-pccs/lib/solady/src/\"],\"viaIR\":true},\"sources\":{\"contracts/interfaces/IAttestation.sol\":{\"keccak256\":\"0x64954c9d466ead95796e876654ec5ac0d2ec03453ca5f726dee0b42ffcda3927\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e97ee5b35c188e99ed24dbca9b69f3f707750375238042ec00914e18d6ede04a\",\"dweb:/ipfs/QmNYREbdTv8hBP1TR9SPmaxSLp5LVNpvYUQbRyU23suoFq\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes","name":"input","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"verifyAndAttestOnChain","outputs":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"output","type":"bytes"}]},{"inputs":[{"internalType":"bytes","name":"journal","type":"bytes"},{"internalType":"bytes","name":"seal","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"verifyAndAttestWithZKProof","outputs":[{"internalType":"bool","name":"success","type":"bool"},{"internalType":"bytes","name":"output","type":"bytes"}]}],"devdoc":{"kind":"dev","methods":{"verifyAndAttestOnChain(bytes)":{"details":"must further specify the structure of inputs/outputs, to be serialized and passed to this methodcan directly type cast the failed output as a string","params":{"input":"- serialized raw input as defined by the project"},"returns":{"output":"- the output upon completion of verification. The output data may require post-processing by the consumer. For verification failures, the output is simply a UTF-8 encoded string, describing the reason for failure.","success":"- whether the quote has been successfully verified or not"}},"verifyAndAttestWithZKProof(bytes,bytes)":{"params":{"journal":"- The output of the Guest program, this includes: - VerifiedOutput struct - TcbInfo hash - QEID hash - RootCA hash - TCB Signing CA hash - Root CRL hash - Platform CRL hash - Processor CRL hash","seal":"- The encoded cryptographic proof (i.e. SNARK)."}}},"version":1},"userdoc":{"kind":"user","methods":{"verifyAndAttestOnChain(bytes)":{"notice":"full on-chain verification for an attestation"}},"version":1}},"settings":{"remappings":["@automata-network/on-chain-pccs/=lib/automata-on-chain-pccs/src/","@openzeppelin/contracts/=lib/automata-on-chain-pccs/lib/openzeppelin-contracts/contracts/","automata-on-chain-pccs/=lib/automata-on-chain-pccs/","ds-test/=lib/forge-std/lib/ds-test/src/","erc4626-tests/=lib/automata-on-chain-pccs/lib/openzeppelin-contracts/lib/erc4626-tests/","eth-gas-reporter/=node_modules/eth-gas-reporter/","forge-std/=lib/forge-std/src/","halmos-cheatcodes/=lib/automata-on-chain-pccs/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/","hardhat/=node_modules/hardhat/","openzeppelin-contracts/=lib/automata-on-chain-pccs/lib/openzeppelin-contracts/","openzeppelin/=lib/risc0-ethereum/lib/openzeppelin-contracts/","p256-verifier/=lib/automata-on-chain-pccs/lib/p256-verifier/src/","risc0-ethereum/=lib/risc0-ethereum/","risc0/=lib/risc0-ethereum/contracts/src/","solady/=lib/automata-on-chain-pccs/lib/solady/src/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"contracts/interfaces/IAttestation.sol":"IAttestation"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"contracts/interfaces/IAttestation.sol":{"keccak256":"0x64954c9d466ead95796e876654ec5ac0d2ec03453ca5f726dee0b42ffcda3927","urls":["bzz-raw://e97ee5b35c188e99ed24dbca9b69f3f707750375238042ec00914e18d6ede04a","dweb:/ipfs/QmNYREbdTv8hBP1TR9SPmaxSLp5LVNpvYUQbRyU23suoFq"],"license":"MIT"}},"version":1},"id":8}
1 change: 1 addition & 0 deletions js/data/quote.hex

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions js/data/quoteV3.hex
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
030002000000000009000e00939a7233f79c4ca9940a0db3957f0607ccb12a326354d33986ff47365f17ad4c000000000c0c100fffff0100000000000000000000000000000000000000000000000000000000000000000000000000000000000700000000000000e70000000000000046049af725ec3986eeb788693df7bc5f14d3f2705106a19cd09b9d89237db1a00000000000000000000000000000000000000000000000000000000000000000ef69011f29043f084e99ce420bfebdfa410aee1e132014e7ceff29efa9659bd90000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ca10000084af1f392be216944059f3fa05bf91e1b4e9b513c67493521eb4488af35f49c8f300d57955afc1df97d423c8718ed5b0af82f71047a229df221faa6817ad5daa44131b5c2ed877295959f7333543ba3f17994d767da194a27ba7a4e8a71940118a138dce8499572433c2cc4e4312f92e7144b26f84c59022bfc9aea59967f00d0c0c100fffff0100000000000000000000000000000000000000000000000000000000000000000000000000000000001500000000000000e700000000000000192aa50ce1c0cef03ccf89e7b5b16b0d7978f5c2b1edcf774d87702e8154d8bf00000000000000000000000000000000000000000000000000000000000000008c4f5775d796503e96137f77c68a829a0056ac8ded70140b081b094490c57bff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a654bcd78ffaa5cfc888fc90cbc24fb7f6e19bc8661671f1e3b2cc947db3b6340000000000000000000000000000000000000000000000000000000000000000839adce904d2aec1fc021ad0ec370c7176942d4b64939b95a2e1e1d3e09bf2e57093231f4308b64e8f53b81cd6ae36fc52f202e66ac77b93b13307ee577be36b2000000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f0500620e00002d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d494945386a4343424a696741774942416749554b6e314f2b2b58517264456161433535634a4c307470464867336b77436759494b6f5a497a6a3045417749770a634445694d434147413155454177775a535735305a577767553064594946424453794251624746305a6d397962534244515445614d42674741315545436777520a535735305a577767513239796347397959585270623234784644415342674e564241634d43314e68626e526849454e7359584a684d51737743515944565151490a44414a445154454c4d416b474131554542684d4356564d774868634e4d6a4d774f4449304d6a45304d444d775768634e4d7a41774f4449304d6a45304d444d770a576a42774d534977494159445651514444426c4a626e526c624342545231676755454e4c49454e6c636e52705a6d6c6a5958526c4d526f77474159445651514b0a4442464a626e526c6243424462334a7762334a6864476c76626a45554d424947413155454277774c553246756447456751327868636d4578437a414a42674e560a4241674d416b4e424d517377435159445651514745774a56557a425a4d424d4742797147534d34394167454743437147534d34394177454841304941424e47520a727a716c416d4a66617756324b67656a39576e774a736666457868445631756847396e6d57377430505a646e6276732f6c677872584255625657436d5043456f0a4f49587768563673736d6e6b6b48462b576d536a67674d4f4d494944436a416642674e5648534d4547444157674253566231334e765276683655424a796454300a4d383442567776655644427242674e56485238455a4442694d47436758714263686c706f64485277637a6f764c32467761533530636e567a6447566b633256790a646d6c6a5a584d75615735305a577775593239744c334e6e6543396a5a584a3061575a7059324630615739754c33597a4c33426a61324e796244396a595431770a624746305a6d397962535a6c626d4e765a476c755a7a316b5a584977485159445652304f424259454641337234524b62476e54316e584c775a5a7272515559410a4a6b776c4d41344741315564447745422f775145417749477744414d42674e5648524d4241663845416a41414d4949434f77594a4b6f5a496876684e415130420a424949434c444343416967774867594b4b6f5a496876684e415130424151515179753373424e6d7632566643337932772f445344627a434341575547436971470a534962345451454e41514977676746564d42414743797147534962345451454e415149424167454d4d42414743797147534962345451454e415149434167454d0a4d42414743797147534962345451454e41514944416745444d42414743797147534962345451454e41514945416745444d42454743797147534962345451454e0a41514946416749412f7a415242677371686b69472b4530424451454342674943415038774541594c4b6f5a496876684e4151304241676343415145774541594c0a4b6f5a496876684e4151304241676743415141774541594c4b6f5a496876684e4151304241676b43415141774541594c4b6f5a496876684e4151304241676f430a415141774541594c4b6f5a496876684e4151304241677343415141774541594c4b6f5a496876684e4151304241677743415141774541594c4b6f5a496876684e0a4151304241673043415141774541594c4b6f5a496876684e4151304241673443415141774541594c4b6f5a496876684e4151304241673843415141774541594c0a4b6f5a496876684e4151304241684143415141774541594c4b6f5a496876684e4151304241684543415130774877594c4b6f5a496876684e41513042416849450a4541774d4177502f2f7745414141414141414141414141774541594b4b6f5a496876684e4151304241775143414141774641594b4b6f5a496876684e415130420a4241514741474271414141414d41384743697147534962345451454e4151554b415145774867594b4b6f5a496876684e415130424267515136657645326f42790a6f684e362f30727741346d642b6a424542676f71686b69472b453042445145484d4459774541594c4b6f5a496876684e4151304242774542416638774541594c0a4b6f5a496876684e4151304242774942415141774541594c4b6f5a496876684e4151304242774d4241514177436759494b6f5a497a6a304541774944534141770a52514967522b344377346437476a73684848436c7a394c6269785a4a45632f31666c7a734449504d5451437a2b43304349514430516e6d514c2b4e6b4e374a7a0a655a666c5078644734687a374b652b3443595366744b416a48545a7539413d3d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d4949436c6a4343416a32674177494241674956414a567658633239472b487051456e4a3150517a7a674658433935554d416f4743437147534d343942414d430a4d476778476a415942674e5642414d4d45556c756447567349464e48574342536232393049454e424d526f77474159445651514b4442464a626e526c624342440a62334a7762334a6864476c76626a45554d424947413155454277774c553246756447456751327868636d4578437a414a42674e564241674d416b4e424d5173770a435159445651514745774a56557a4165467730784f4441314d6a45784d4455774d5442614677307a4d7a41314d6a45784d4455774d5442614d484178496a41670a42674e5642414d4d47556c756447567349464e4857434251513073675547786864475a76636d306751304578476a415942674e5642416f4d45556c75644756730a49454e76636e4276636d4630615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b474131554543417743513045780a437a414a42674e5642415954416c56544d466b77457759484b6f5a497a6a3043415159494b6f5a497a6a304441516344516741454e53422f377432316c58534f0a3243757a7078773734654a423732457944476757357258437478327456544c7136684b6b367a2b5569525a436e71523770734f766771466553786c6d546c4a6c0a65546d693257597a33714f42757a43427544416642674e5648534d4547444157674251695a517a575770303069664f44744a5653763141624f536347724442530a42674e5648523845537a424a4d45656752614244686b466f64485277637a6f764c324e6c636e52705a6d6c6a5958526c63793530636e567a6447566b633256790a646d6c6a5a584d75615735305a577775593239744c306c756447567355306459556d397664454e424c6d526c636a416442674e5648513445466751556c5739640a7a62306234656c4153636e553944504f4156634c336c517744675944565230504151482f42415144416745474d42494741315564457745422f7751494d4159420a4166384341514177436759494b6f5a497a6a30454177494452774177524149675873566b6930772b6936565947573355462f32327561586530594a446a3155650a6e412b546a44316169356343494359623153416d4435786b66545670766f34556f79695359787244574c6d5552344349394e4b7966504e2b0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a2d2d2d2d2d424547494e2043455254494649434154452d2d2d2d2d0a4d4949436a7a4343416a53674177494241674955496d554d316c71644e496e7a6737535655723951477a6b6e42717777436759494b6f5a497a6a3045417749770a614445614d4267474131554541777752535735305a5777675530645949464a766233516751304578476a415942674e5642416f4d45556c756447567349454e760a636e4276636d4630615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b47413155454341774351304578437a414a0a42674e5642415954416c56544d423458445445344d4455794d5445774e4455784d466f58445451354d54497a4d54497a4e546b314f566f77614445614d4267470a4131554541777752535735305a5777675530645949464a766233516751304578476a415942674e5642416f4d45556c756447567349454e76636e4276636d46300a615739754d5251774567594456515148444174545957353059534244624746795954454c4d416b47413155454341774351304578437a414a42674e56424159540a416c56544d466b77457759484b6f5a497a6a3043415159494b6f5a497a6a3044415163445167414543366e45774d4449595a4f6a2f69505773437a61454b69370a314f694f534c52466857476a626e42564a66566e6b59347533496a6b4459594c304d784f346d717379596a6c42616c54565978465032734a424b357a6c4b4f420a757a43427544416642674e5648534d4547444157674251695a517a575770303069664f44744a5653763141624f5363477244425342674e5648523845537a424a0a4d45656752614244686b466f64485277637a6f764c324e6c636e52705a6d6c6a5958526c63793530636e567a6447566b63325679646d6c6a5a584d75615735300a5a577775593239744c306c756447567355306459556d397664454e424c6d526c636a416442674e564851344546675155496d554d316c71644e496e7a673753560a55723951477a6b6e4271777744675944565230504151482f42415144416745474d42494741315564457745422f7751494d4159424166384341514577436759490a4b6f5a497a6a3045417749445351417752674968414f572f35516b522b533943695344634e6f6f774c7550524c735747662f59693747535839344267775477670a41694541344a306c72486f4d732b586f356f2f7358364f39515778485241765a55474f6452513763767152586171493d0a2d2d2d2d2d454e442043455254494649434154452d2d2d2d2d0a00
Loading

0 comments on commit ebd81a6

Please sign in to comment.