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

Update OpenZeppelin libraries #5

Merged
merged 9 commits into from
Apr 4, 2024
Merged

Update OpenZeppelin libraries #5

merged 9 commits into from
Apr 4, 2024

Conversation

wshino
Copy link
Contributor

@wshino wshino commented Apr 4, 2024

I've updated some dependencies:

  1. @zk-email/contracts ^4.1.0 -> ^6.0.0
  2. @openzeppelin/contracts ^4.9.2 -> ^5.0.0
  3. @openzeppelin/contracts-upgradeable ^4.9.2 ->

The above changes caused the issues, and then I've updated some contracts implementation.
Also I've re-generated verifier contract.

  • Implementation
  • Unit testing
  • Integration testing

Currently some github actions has been failed due to Permission denied (publickey).
I want to fix that but I don't have permission regarding this repo.

@wshino wshino marked this pull request as ready for review April 4, 2024 10:43
@SoraSuegami
Copy link
Contributor

Thank you for your updates!
When I tried yarn in the contracts directory, I got the following error.

yarn install v1.22.19
[1/5] 🔍  Validating package.json...
[2/5] 🔍  Resolving packages...
[3/5] 🚚  Fetching packages...
error Command failed.
Exit code: 128
Command: git
Arguments: ls-remote --tags --heads ssh://[email protected]/foundry-rs/forge-std.git
Directory: /Users/suegamisora/codes/ether-email-auth/packages/contracts
Output:
[email protected]: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

@Divide-By-0
Copy link
Member

Can resolve by replacing the GitHub URL for forge STD in package.json by the version or via forge install foundry-rs/forge-std instead

@wshino
Copy link
Contributor Author

wshino commented Apr 4, 2024

Thank you for your updates! When I tried yarn in the contracts directory, I got the following error.

yarn install v1.22.19
[1/5] 🔍  Validating package.json...
[2/5] 🔍  Resolving packages...
[3/5] 🚚  Fetching packages...
error Command failed.
Exit code: 128
Command: git
Arguments: ls-remote --tags --heads ssh://[email protected]/foundry-rs/forge-std.git
Directory: /Users/suegamisora/codes/ether-email-auth/packages/contracts
Output:
[email protected]: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

Maybe I guess you don't pass to the github authentication. If I am wrong, I am sorry.
Could you run the below command?

@wshino
Copy link
Contributor Author

wshino commented Apr 4, 2024

Somehow I modified yarn.lock for forge-std from https to git:. I've resolved this issue.

@SoraSuegami SoraSuegami merged commit fbf14f6 into main Apr 4, 2024
4 checks passed
@Divide-By-0 Divide-By-0 deleted the feat/oz5 branch April 4, 2024 23:17
SoraSuegami added a commit that referenced this pull request Apr 7, 2024
* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>
SoraSuegami added a commit that referenced this pull request Apr 17, 2024
* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* Remove modifier from SimpleWallet.

* Remove unused simpleWalletImpl definition.

* Bump up foundry version in github action.

* Fix solidity compiler version.

---------

Co-authored-by: Sora Suegami <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>
SoraSuegami added a commit that referenced this pull request Apr 26, 2024
* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>
SoraSuegami added a commit that referenced this pull request Apr 27, 2024
* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

---------

Co-authored-by: Aditya Bisht <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>
SoraSuegami added a commit that referenced this pull request Apr 29, 2024
* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>
SoraSuegami added a commit that referenced this pull request Apr 30, 2024
* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

---------

Co-authored-by: Aditya Bisht <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

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

* Fix Unsafe ABI Encoding.

---------

Co-authored-by: Sora Suegami <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>
SoraSuegami added a commit that referenced this pull request May 2, 2024
…elayer. (#16)

* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* Feat/docs (#15)

* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* Feat/fix oz code inspector issues (#14)

* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

---------

Co-authored-by: Aditya Bisht <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

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

* Fix Unsafe ABI Encoding.

---------

Co-authored-by: Sora Suegami <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

---------

Co-authored-by: Aditya Bisht <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>
SoraSuegami added a commit that referenced this pull request May 10, 2024
* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* Feat/docs (#15)

* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* Feat/fix oz code inspector issues (#14)

* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* 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 <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

* 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 <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

---------

Co-authored-by: Aditya Bisht <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>

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

* Fix Unsafe ABI Encoding.

---------

Co-authored-by: Sora Suegami <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>
Co-authored-by: SoraSuegami <[email protected]>

* Add events (#19)

---------

Co-authored-by: Aditya Bisht <[email protected]>
Co-authored-by: wshino <[email protected]>
Co-authored-by: Aditya Bisht <[email protected]>
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.

3 participants