Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Reference] Changes from the last audit #37

Closed
wants to merge 65 commits into from
Closed

[Reference] Changes from the last audit #37

wants to merge 65 commits into from

Conversation

SoraSuegami
Copy link
Contributor

@SoraSuegami SoraSuegami commented Jul 16, 2024

This is a reference commit that specifies the precise diff that Zellic is auditing. It can be closed after the audit, once the fixes are merged.

SoraSuegami and others added 30 commits April 25, 2024 18:40
* Update the zk-email version

* Update groth16 verifier

* Modify the proving key path
* Reflect the latest changes on the main branch to the audit branch. (#7)

* Change modal server name.

* Add test to invitation code.

* Update zk-regex versions.

* update readme.

* Update modal server version.

* Fix typo.

* Fix contract unit tests.

* Fix Dockerfile in prover.

* feat: Add Relayer (#3)

* Add ECDSAOwnedDKIMRegistry.

* Update dev-setup.ts that generates Groth16Verifier.sol.

* Implement verifyEmailProof function.

* [WIP] Add implementations regarding authEmail function till step 7.

* Add isValidSignature function.

* Add EmailAccountRecovery.

* Move usedNullifiers from Verifier to EmailAuth.

* Tweak variable name.

* Update correct timestamp validation condition.

* Update isValidSignature function.

* Add unit test functions.

* Add testAuthEmail.

* Remove comment.

* Delete unused mock directory.

* Add testIsValidSignature.

* Format solidity files.

* Add deploy script.

* Modify ECSDSAOwnedDKIMRegistry to be independent of the chain id.

* Refactor EmailAuth contracts.

* Refactor EmailAccountRecovery.

* Add simple wallet to be recovered with emails.

* Fix EmailAuth.t.sol.

* Add DeploymentHelper.

* Add create SimpleWallet instance in setUp function.

* Add test EmailAccountRecovery.

* Fix EmailAccountRecovery.t.sol.

* Fix parameter decoding in recoverWallet method.

* Rename recoverWallet to processRecovery and add completeRecovery.

* Add recipient's email address commitment to the circuit.

* Add script to generate circuit inputs.

* Add prover.

* Add relayer.

* Update utils and relayer.

* Fix database.

* Remove unused code.

* Update database and web_server

* Fix config.rs

* Add ECDSAOwnedDKIMRegistry.

* Implement verifyEmailProof function.

* [WIP] Add implementations regarding authEmail function till step 7.

* Add isValidSignature function.

* Add EmailAccountRecovery.

* Move usedNullifiers from Verifier to EmailAuth.

* Tweak variable name.

* Update correct timestamp validation condition.

* Update isValidSignature function.

* Add unit test functions.

* Add testAuthEmail.

* Remove comment.

* Delete unused mock directory.

* Add testIsValidSignature.

* Format solidity files.

* Add deploy script.

* Modify ECSDSAOwnedDKIMRegistry to be independent of the chain id.

* Refactor EmailAuth contracts.

* Refactor EmailAccountRecovery.

* Add simple wallet to be recovered with emails.

* Fix EmailAuth.t.sol.

* Add DeploymentHelper.

* Add create SimpleWallet instance in setUp function.

* Add test EmailAccountRecovery.

* Fix EmailAccountRecovery.t.sol.

* Fix parameter decoding in recoverWallet method.

* Rename recoverWallet to processRecovery and add completeRecovery.

* Add recipient's email address commitment to the circuit.

* Add relayer.

* Update deployment helper.

* Fix unit testing

* Create Integration.t.sol.

* Add integration test for acceptance.

* Add integration test for recovery.

* Update README.md

* Call handleAcceptance and handleRecovery.

* Add require conditions and check the simpleWallet owner change.

* Add blank line.

* Fix database.

* Remove unused code.

* Update database and web_server

* Fix config.rs

* feat: relayer init

* feat: basic changes

* feat: changes

* feat: partial accept api

* feat: rebase

* feat: fixes

* feat: finish accept api before handling email

* feat: handle email stub

* feat: clean up

* feat: add all apis

* chore: refactor

* feat: add email templates

* feat: handle email

* Fix contract deployment scripts.

* Add github workflow.

* Add ETHERSCAN_API_KEY to env.sample.

* Add unit test functions.

* Add deploy script.

* Refactor EmailAuth contracts.

* feat: rebase

* feat: fixes

* Fix modal server name.

* feat: fixes

* feat: fixes

* Fix typo of EmailAccountRecoery.t.sol.

* feat: complete flow

* feat: fixes and refactoring

* chore: update .env.example

* Update utils package.

* feat: fixes

* feat: add k8s manifests

(cherry picked from commit 6f154f5)

* chore: fix Dockerfile

* Update the version of zk-regex-utils

---------

Co-authored-by: wshino <wshinohara@gmail.com>
Co-authored-by: SoraSuegami <suegamisora@gmail.com>

* Update OpenZeppelin libraries  (#5)

* Update @zk-email/contracts ^4.1.0 -> ^6.0.0.
Update @OpenZeppelin ^4.9.2 -> ^5.0.0.

* Regenerate verifier contract.

* Update integration test contract with regenerate eml files.

* Remove uniswap dependencies.

* Remove account abstraction dependency.

* Update the link for build_integration in google drive.

* forge install: forge-std

v1.8.1

* Re-generate yarn.lock.

* chore: update k8s manifests

(cherry picked from commit 72783078e6170f93665e5b6012d7ddd765fb44f9)

* Fix DeploySimpleWallet script to add initial owner.

* fix DeploySimpleWallet about init owner.

* Fix Groth16Verifier.

* Feat/unit testing for contracts (#6)

* Add configureTimelockPeriod to SimpleWallet.

---------

Co-authored-by: Aditya Bisht <44467788+Bisht13@users.noreply.github.com>
Co-authored-by: wshino <wshinohara@gmail.com>
Co-authored-by: Aditya Bisht <adityabisht64@gmail.com>

* Add more docs.

* Add Security Notes.

* Add Application.

* Add UX of the account recovery.

* Fix mistakes in README

* small modifications in README

* small modification to README

* Add remaining subsections.

* Write Integration to your Wallet.

* Fix mistakes.

* Add fronend description.

* Update specs.

* Complete the contracts spec.

* Add README to relayer.

---------

Co-authored-by: Aditya Bisht <44467788+Bisht13@users.noreply.github.com>
Co-authored-by: wshino <wshinohara@gmail.com>
Co-authored-by: Aditya Bisht <adityabisht64@gmail.com>
* Reflect the latest changes on the main branch to the audit branch. (#7)

* Change modal server name.

* Add test to invitation code.

* Update zk-regex versions.

* update readme.

* Update modal server version.

* Fix typo.

* Fix contract unit tests.

* Fix Dockerfile in prover.

* feat: Add Relayer (#3)

* Add ECDSAOwnedDKIMRegistry.

* Update dev-setup.ts that generates Groth16Verifier.sol.

* Implement verifyEmailProof function.

* [WIP] Add implementations regarding authEmail function till step 7.

* Add isValidSignature function.

* Add EmailAccountRecovery.

* Move usedNullifiers from Verifier to EmailAuth.

* Tweak variable name.

* Update correct timestamp validation condition.

* Update isValidSignature function.

* Add unit test functions.

* Add testAuthEmail.

* Remove comment.

* Delete unused mock directory.

* Add testIsValidSignature.

* Format solidity files.

* Add deploy script.

* Modify ECSDSAOwnedDKIMRegistry to be independent of the chain id.

* Refactor EmailAuth contracts.

* Refactor EmailAccountRecovery.

* Add simple wallet to be recovered with emails.

* Fix EmailAuth.t.sol.

* Add DeploymentHelper.

* Add create SimpleWallet instance in setUp function.

* Add test EmailAccountRecovery.

* Fix EmailAccountRecovery.t.sol.

* Fix parameter decoding in recoverWallet method.

* Rename recoverWallet to processRecovery and add completeRecovery.

* Add recipient's email address commitment to the circuit.

* Add script to generate circuit inputs.

* Add prover.

* Add relayer.

* Update utils and relayer.

* Fix database.

* Remove unused code.

* Update database and web_server

* Fix config.rs

* Add ECDSAOwnedDKIMRegistry.

* Implement verifyEmailProof function.

* [WIP] Add implementations regarding authEmail function till step 7.

* Add isValidSignature function.

* Add EmailAccountRecovery.

* Move usedNullifiers from Verifier to EmailAuth.

* Tweak variable name.

* Update correct timestamp validation condition.

* Update isValidSignature function.

* Add unit test functions.

* Add testAuthEmail.

* Remove comment.

* Delete unused mock directory.

* Add testIsValidSignature.

* Format solidity files.

* Add deploy script.

* Modify ECSDSAOwnedDKIMRegistry to be independent of the chain id.

* Refactor EmailAuth contracts.

* Refactor EmailAccountRecovery.

* Add simple wallet to be recovered with emails.

* Fix EmailAuth.t.sol.

* Add DeploymentHelper.

* Add create SimpleWallet instance in setUp function.

* Add test EmailAccountRecovery.

* Fix EmailAccountRecovery.t.sol.

* Fix parameter decoding in recoverWallet method.

* Rename recoverWallet to processRecovery and add completeRecovery.

* Add recipient's email address commitment to the circuit.

* Add relayer.

* Update deployment helper.

* Fix unit testing

* Create Integration.t.sol.

* Add integration test for acceptance.

* Add integration test for recovery.

* Update README.md

* Call handleAcceptance and handleRecovery.

* Add require conditions and check the simpleWallet owner change.

* Add blank line.

* Fix database.

* Remove unused code.

* Update database and web_server

* Fix config.rs

* feat: relayer init

* feat: basic changes

* feat: changes

* feat: partial accept api

* feat: rebase

* feat: fixes

* feat: finish accept api before handling email

* feat: handle email stub

* feat: clean up

* feat: add all apis

* chore: refactor

* feat: add email templates

* feat: handle email

* Fix contract deployment scripts.

* Add github workflow.

* Add ETHERSCAN_API_KEY to env.sample.

* Add unit test functions.

* Add deploy script.

* Refactor EmailAuth contracts.

* feat: rebase

* feat: fixes

* Fix modal server name.

* feat: fixes

* feat: fixes

* Fix typo of EmailAccountRecoery.t.sol.

* feat: complete flow

* feat: fixes and refactoring

* chore: update .env.example

* Update utils package.

* feat: fixes

* feat: add k8s manifests

(cherry picked from commit 6f154f5)

* chore: fix Dockerfile

* Update the version of zk-regex-utils

---------

Co-authored-by: wshino <wshinohara@gmail.com>
Co-authored-by: SoraSuegami <suegamisora@gmail.com>

* Update OpenZeppelin libraries  (#5)

* Update @zk-email/contracts ^4.1.0 -> ^6.0.0.
Update @OpenZeppelin ^4.9.2 -> ^5.0.0.

* Regenerate verifier contract.

* Update integration test contract with regenerate eml files.

* Remove uniswap dependencies.

* Remove account abstraction dependency.

* Update the link for build_integration in google drive.

* forge install: forge-std

v1.8.1

* Re-generate yarn.lock.

* chore: update k8s manifests

(cherry picked from commit 72783078e6170f93665e5b6012d7ddd765fb44f9)

* Fix DeploySimpleWallet script to add initial owner.

* fix DeploySimpleWallet about init owner.

* Fix Groth16Verifier.

* Feat/unit testing for contracts (#6)

* Add configureTimelockPeriod to SimpleWallet.

---------

Co-authored-by: Aditya Bisht <44467788+Bisht13@users.noreply.github.com>
Co-authored-by: wshino <wshinohara@gmail.com>
Co-authored-by: Aditya Bisht <adityabisht64@gmail.com>

* Add more docs.

* Add Security Notes.

* Add Application.

* Add UX of the account recovery.

* Fix mistakes in README

* small modifications in README

* small modification to README

* Add remaining subsections.

* Write Integration to your Wallet.

* Fix mistakes.

* Add fronend description.

* Update specs.

* Complete the contracts spec.

* Add README to relayer.

* Add how to setup Relayer.

---------

Co-authored-by: Aditya Bisht <44467788+Bisht13@users.noreply.github.com>
Co-authored-by: wshino <wshinohara@gmail.com>
Co-authored-by: Aditya Bisht <adityabisht64@gmail.com>
* Reflect the latest changes on the main branch to the audit branch. (#7)

* Change modal server name.

* Add test to invitation code.

* Update zk-regex versions.

* update readme.

* Update modal server version.

* Fix typo.

* Fix contract unit tests.

* Fix Dockerfile in prover.

* feat: Add Relayer (#3)

* Add ECDSAOwnedDKIMRegistry.

* Update dev-setup.ts that generates Groth16Verifier.sol.

* Implement verifyEmailProof function.

* [WIP] Add implementations regarding authEmail function till step 7.

* Add isValidSignature function.

* Add EmailAccountRecovery.

* Move usedNullifiers from Verifier to EmailAuth.

* Tweak variable name.

* Update correct timestamp validation condition.

* Update isValidSignature function.

* Add unit test functions.

* Add testAuthEmail.

* Remove comment.

* Delete unused mock directory.

* Add testIsValidSignature.

* Format solidity files.

* Add deploy script.

* Modify ECSDSAOwnedDKIMRegistry to be independent of the chain id.

* Refactor EmailAuth contracts.

* Refactor EmailAccountRecovery.

* Add simple wallet to be recovered with emails.

* Fix EmailAuth.t.sol.

* Add DeploymentHelper.

* Add create SimpleWallet instance in setUp function.

* Add test EmailAccountRecovery.

* Fix EmailAccountRecovery.t.sol.

* Fix parameter decoding in recoverWallet method.

* Rename recoverWallet to processRecovery and add completeRecovery.

* Add recipient's email address commitment to the circuit.

* Add script to generate circuit inputs.

* Add prover.

* Add relayer.

* Update utils and relayer.

* Fix database.

* Remove unused code.

* Update database and web_server

* Fix config.rs

* Add ECDSAOwnedDKIMRegistry.

* Implement verifyEmailProof function.

* [WIP] Add implementations regarding authEmail function till step 7.

* Add isValidSignature function.

* Add EmailAccountRecovery.

* Move usedNullifiers from Verifier to EmailAuth.

* Tweak variable name.

* Update correct timestamp validation condition.

* Update isValidSignature function.

* Add unit test functions.

* Add testAuthEmail.

* Remove comment.

* Delete unused mock directory.

* Add testIsValidSignature.

* Format solidity files.

* Add deploy script.

* Modify ECSDSAOwnedDKIMRegistry to be independent of the chain id.

* Refactor EmailAuth contracts.

* Refactor EmailAccountRecovery.

* Add simple wallet to be recovered with emails.

* Fix EmailAuth.t.sol.

* Add DeploymentHelper.

* Add create SimpleWallet instance in setUp function.

* Add test EmailAccountRecovery.

* Fix EmailAccountRecovery.t.sol.

* Fix parameter decoding in recoverWallet method.

* Rename recoverWallet to processRecovery and add completeRecovery.

* Add recipient's email address commitment to the circuit.

* Add relayer.

* Update deployment helper.

* Fix unit testing

* Create Integration.t.sol.

* Add integration test for acceptance.

* Add integration test for recovery.

* Update README.md

* Call handleAcceptance and handleRecovery.

* Add require conditions and check the simpleWallet owner change.

* Add blank line.

* Fix database.

* Remove unused code.

* Update database and web_server

* Fix config.rs

* feat: relayer init

* feat: basic changes

* feat: changes

* feat: partial accept api

* feat: rebase

* feat: fixes

* feat: finish accept api before handling email

* feat: handle email stub

* feat: clean up

* feat: add all apis

* chore: refactor

* feat: add email templates

* feat: handle email

* Fix contract deployment scripts.

* Add github workflow.

* Add ETHERSCAN_API_KEY to env.sample.

* Add unit test functions.

* Add deploy script.

* Refactor EmailAuth contracts.

* feat: rebase

* feat: fixes

* Fix modal server name.

* feat: fixes

* feat: fixes

* Fix typo of EmailAccountRecoery.t.sol.

* feat: complete flow

* feat: fixes and refactoring

* chore: update .env.example

* Update utils package.

* feat: fixes

* feat: add k8s manifests

(cherry picked from commit 6f154f5)

* chore: fix Dockerfile

* Update the version of zk-regex-utils

---------

Co-authored-by: wshino <wshinohara@gmail.com>
Co-authored-by: SoraSuegami <suegamisora@gmail.com>

* Update OpenZeppelin libraries  (#5)

* Update @zk-email/contracts ^4.1.0 -> ^6.0.0.
Update @OpenZeppelin ^4.9.2 -> ^5.0.0.

* Regenerate verifier contract.

* Update integration test contract with regenerate eml files.

* Remove uniswap dependencies.

* Remove account abstraction dependency.

* Update the link for build_integration in google drive.

* forge install: forge-std

v1.8.1

* Re-generate yarn.lock.

* chore: update k8s manifests

(cherry picked from commit 72783078e6170f93665e5b6012d7ddd765fb44f9)

* Fix DeploySimpleWallet script to add initial owner.

* fix DeploySimpleWallet about init owner.

* Fix Groth16Verifier.

* Feat/unit testing for contracts (#6)

* Add configureTimelockPeriod to SimpleWallet.

---------

Co-authored-by: Aditya Bisht <44467788+Bisht13@users.noreply.github.com>
Co-authored-by: wshino <wshinohara@gmail.com>
Co-authored-by: Aditya Bisht <adityabisht64@gmail.com>

* Update documents and circuits (#13)

* Feat/circuits update (#10)

* Update the zk-email version

* Update groth16 verifier

* Modify the proving key path

* Update the proving key in circuits README

* feat: add permitted wallets (#11)

* Feat/docs (#12)

* Reflect the latest changes on the main branch to the audit branch. (#7)

* Change modal server name.

* Add test to invitation code.

* Update zk-regex versions.

* update readme.

* Update modal server version.

* Fix typo.

* Fix contract unit tests.

* Fix Dockerfile in prover.

* feat: Add Relayer (#3)

* Add ECDSAOwnedDKIMRegistry.

* Update dev-setup.ts that generates Groth16Verifier.sol.

* Implement verifyEmailProof function.

* [WIP] Add implementations regarding authEmail function till step 7.

* Add isValidSignature function.

* Add EmailAccountRecovery.

* Move usedNullifiers from Verifier to EmailAuth.

* Tweak variable name.

* Update correct timestamp validation condition.

* Update isValidSignature function.

* Add unit test functions.

* Add testAuthEmail.

* Remove comment.

* Delete unused mock directory.

* Add testIsValidSignature.

* Format solidity files.

* Add deploy script.

* Modify ECSDSAOwnedDKIMRegistry to be independent of the chain id.

* Refactor EmailAuth contracts.

* Refactor EmailAccountRecovery.

* Add simple wallet to be recovered with emails.

* Fix EmailAuth.t.sol.

* Add DeploymentHelper.

* Add create SimpleWallet instance in setUp function.

* Add test EmailAccountRecovery.

* Fix EmailAccountRecovery.t.sol.

* Fix parameter decoding in recoverWallet method.

* Rename recoverWallet to processRecovery and add completeRecovery.

* Add recipient's email address commitment to the circuit.

* Add script to generate circuit inputs.

* Add prover.

* Add relayer.

* Update utils and relayer.

* Fix database.

* Remove unused code.

* Update database and web_server

* Fix config.rs

* Add ECDSAOwnedDKIMRegistry.

* Implement verifyEmailProof function.

* [WIP] Add implementations regarding authEmail function till step 7.

* Add isValidSignature function.

* Add EmailAccountRecovery.

* Move usedNullifiers from Verifier to EmailAuth.

* Tweak variable name.

* Update correct timestamp validation condition.

* Update isValidSignature function.

* Add unit test functions.

* Add testAuthEmail.

* Remove comment.

* Delete unused mock directory.

* Add testIsValidSignature.

* Format solidity files.

* Add deploy script.

* Modify ECSDSAOwnedDKIMRegistry to be independent of the chain id.

* Refactor EmailAuth contracts.

* Refactor EmailAccountRecovery.

* Add simple wallet to be recovered with emails.

* Fix EmailAuth.t.sol.

* Add DeploymentHelper.

* Add create SimpleWallet instance in setUp function.

* Add test EmailAccountRecovery.

* Fix EmailAccountRecovery.t.sol.

* Fix parameter decoding in recoverWallet method.

* Rename recoverWallet to processRecovery and add completeRecovery.

* Add recipient's email address commitment to the circuit.

* Add relayer.

* Update deployment helper.

* Fix unit testing

* Create Integration.t.sol.

* Add integration test for acceptance.

* Add integration test for recovery.

* Update README.md

* Call handleAcceptance and handleRecovery.

* Add require conditions and check the simpleWallet owner change.

* Add blank line.

* Fix database.

* Remove unused code.

* Update database and web_server

* Fix config.rs

* feat: relayer init

* feat: basic changes

* feat: changes

* feat: partial accept api

* feat: rebase

* feat: fixes

* feat: finish accept api before handling email

* feat: handle email stub

* feat: clean up

* feat: add all apis

* chore: refactor

* feat: add email templates

* feat: handle email

* Fix contract deployment scripts.

* Add github workflow.

* Add ETHERSCAN_API_KEY to env.sample.

* Add unit test functions.

* Add deploy script.

* Refactor EmailAuth contracts.

* feat: rebase

* feat: fixes

* Fix modal server name.

* feat: fixes

* feat: fixes

* Fix typo of EmailAccountRecoery.t.sol.

* feat: complete flow

* feat: fixes and refactoring

* chore: update .env.example

* Update utils package.

* feat: fixes

* feat: add k8s manifests

(cherry picked from commit 6f154f5)

* chore: fix Dockerfile

* Update the version of zk-regex-utils

---------

Co-authored-by: wshino <wshinohara@gmail.com>
Co-authored-by: SoraSuegami <suegamisora@gmail.com>

* Update OpenZeppelin libraries  (#5)

* Update @zk-email/contracts ^4.1.0 -> ^6.0.0.
Update @OpenZeppelin ^4.9.2 -> ^5.0.0.

* Regenerate verifier contract.

* Update integration test contract with regenerate eml files.

* Remove uniswap dependencies.

* Remove account abstraction dependency.

* Update the link for build_integration in google drive.

* forge install: forge-std

v1.8.1

* Re-generate yarn.lock.

* chore: update k8s manifests

(cherry picked from commit 72783078e6170f93665e5b6012d7ddd765fb44f9)

* Fix DeploySimpleWallet script to add initial owner.

* fix DeploySimpleWallet about init owner.

* Fix Groth16Verifier.

* Feat/unit testing for contracts (#6)

* Add configureTimelockPeriod to SimpleWallet.

---------

Co-authored-by: Aditya Bisht <44467788+Bisht13@users.noreply.github.com>
Co-authored-by: wshino <wshinohara@gmail.com>
Co-authored-by: Aditya Bisht <adityabisht64@gmail.com>

* Add more docs.

* Add Security Notes.

* Add Application.

* Add UX of the account recovery.

* Fix mistakes in README

* small modifications in README

* small modification to README

* Add remaining subsections.

* Write Integration to your Wallet.

* Fix mistakes.

* Add fronend description.

* Update specs.

* Complete the contracts spec.

* Add README to relayer.

---------

Co-authored-by: Aditya Bisht <44467788+Bisht13@users.noreply.github.com>
Co-authored-by: wshino <wshinohara@gmail.com>
Co-authored-by: Aditya Bisht <adityabisht64@gmail.com>

---------

Co-authored-by: Aditya Bisht <44467788+Bisht13@users.noreply.github.com>
Co-authored-by: wshino <wshinohara@gmail.com>
Co-authored-by: Aditya Bisht <adityabisht64@gmail.com>

* Fix `transfer` and `send` Calls Are No Longer Considered Best Practice.

* Fix Unsafe ABI Encoding.

---------

Co-authored-by: Sora Suegami <31360991+SoraSuegami@users.noreply.github.com>
Co-authored-by: Aditya Bisht <44467788+Bisht13@users.noreply.github.com>
Co-authored-by: Aditya Bisht <adityabisht64@gmail.com>
Co-authored-by: SoraSuegami <suegamisora@gmail.com>
* Add zksync-contracts and update foundry.toml for zksync

* Add computeCreate2Address test

* [WIP] Update README and some test files.

* Fix testComputeCreate2Address.

* Fix testComputeCreate2Address.

* Fix testHandleAcceptance.

* Fix testExpectRevertHandleRecoveryGuardianStatusMustBeAccepted.

* Split the test code due to limitations of the eraVM.

* Update Groth16Verifier for using deployed contracts.

* Add Create2 and deployment sections to README.md.

* Update forge version.

* Add chain id option in yan zktest.

* Add if statement for zksync.

* Implement branching conditions to support zkSync and other EVMs at the same time.
Update README.md.

* Remove console.log.

* Update README.md.

* Update integration testing.

* Update forge version.

* Update the comment in foundry.toml.
- verify contracts
- work around to build contracts using foundy-zksync
- add the note contract verification doesn't work currently with foundy-zksync
* deprecate EIP1271 support in EmailAuth because it does not protect replay attacks.

* Remove computeMsgHash function.
Remove return param from authEmail.

---------

Co-authored-by: wshino <wshinohara@gmail.com>
* chore: refactor

* fix: circuit tests

* chore: refactor

* chore: yarn.lock update

* chore: refactor

* chore: update import

* chore: refactor

* chore: refactor

* chore: refactor

* chore: refactor

* fix: dkim

* chore: naming convention
* Support module structure and change owner definition in EmailAuth.

* Fix integration test case and update README.md.

* FIx argument name in completeRecovery.

* reflext of contract reviews

* Bump up @zk-email/contracts.

* Bump up @zk-email/contracts.

* Rename module to controller in EmailAuth.

* Rename RecoveryModule to RecoveryController.

* Add test case, AuthEmail with UserOverrideableDkimRegistry.

* Commented out guardian deployed check in handleAcceptance

* Fix contract unit tests.

* feat: relayer changes (init)

* fix: relayer fixes

---------

Co-authored-by: wshino <wshinohara@gmail.com>
Co-authored-by: Aditya Bisht <adityabisht64@gmail.com>
* Fix test case testComputeCreate2Address.

* Update the document related to failed test cases in README.md.
Update bytecodeHash in computeEmailAuthAddress function.

* Update solc version = 0.8.25 in foundry.toml.
Add README.md that how to use solc 0.8.25.

* Update guardian address in test helper due to compiler version has been changed to 0.8.25.

* Fix guardian address with the default remapping.txt.
* Fixing

* Update docs

* Add recovery flow images.

* Add a missing test email

* Replace "account contract" with "smart account"

* Add getting-started.md and add DeployRecoveryController.s.sol.

* Add page for deployed contracts.

* Fix failing test

* Fix docs after the review

---------

Co-authored-by: SoraSuegami <suegamisora@gmail.com>
Co-authored-by: wshino <wshinohara@gmail.com>
SoraSuegami and others added 28 commits August 14, 2024 09:47
* Add isActivated function.

* Update readme

* Fix scripts for integration tests
…one. (#42)

* Fix zksync tests.

* Fail: testComputeCreate2Address with SystemContractsCaller.

* Fail: Deploy proxy with SystemContractsCaller in EmailAccountRecovery.

* Add via_ir flag in foundry.toml.

* Comment out specific zksync features.

* Update README.md.
This reverts commit 92be537.
* Audit fixes for circuits

* Update verifier for the new circuit

* Fix maskedSubject attack vector and timestamp bug

* Allow lower/uppercases address in the subject

* Fix typo.

* Add test case to check "invalid masked subject length" and "invalid size of the skipped subject prefix".

* Add range check to Digit2Int

* Add comments about an email address in the subject.

* Update snarkjs version

* Add idx validations to the circuit

* Change range of LessThan

* Update zk-email circuit version

* Optimize regex_out in the circuit

* Fix lastTimestamp update logic

* Fix commented out codes

* feat: update api

* Fix inactive_guardian api

* Fix inactive_guardian

* fix: patch db query

* Add python logger

* Revert "Add python logger"

This reverts commit 92be537.

* Logger in the prover worked (#54)

* Update prover version

* Logger in the prover worked

* Update dependencies

* Fix the versions of circuit dependencies

* Fix relayer-utils version

* Update verifier

* Update proving key

* Fix integration test on base sepolia

* feat: update api

* Update prover address.

* Fix requirements

* feat: update api

* Feature/update deployment logic using factory (#52)

* Add ZKSyncCreate2Factory, EmailAccountRecovery test casees split by function.

* Failed: update integration testing with foundry-zksync.

* Update integration testing command with foundry-zksync.

* Failed: update integration testing with foundry.

* Add DeployEmailAuthWithCreate2.s.sol.

* Disable DeployEmailAuthWIthCreate2.s.sol.

* Fix integration test for foundry

* Fail: integration testing for foundry zksync.

* Fix integration testing for foundry zksync

* Tweak README.md

* Add EmailAccountRecoveryZkSync

* Uncomment some contracts which are used for foundry zksync

* make deployEmailAuthProxy as internal function

* Update yarn build, yarn test

* Remove specific foundry version

* Update foundry version

* chore: git rm --cached

* chore: Update after git rm --cached

* chore: git rm --cached

* chore: Update after git rm --cached

* Fix build-test-fmt on github action

* Rename DeployEmailAuthWIthCreate2

* Update deployment files in docs

---------

Co-authored-by: wshino <wshinohara@gmail.com>
Co-authored-by: Aditya Bisht <adityabisht64@gmail.com>
Add note to acceptance_request.html reminding users to retain the email
Add Re: to subject for acknowledgement email replies, but not yet for the final confirmation email
@SoraSuegami
Copy link
Contributor Author

I close this PR because it was made just for showing the differences between the main branch and the audited code to the auditor.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants