* feat: selfrica circuit and tests
* chore: remove unused code
* feat: test for ofac,date and olderthan
* fix: public signal constant
* feat: add contract tests
* feat: helper function to gen TEE input
* feat: gen circuit inputs with signature
* feat: seralized base64
* fix: DateIsLessFullYear componenet
* feat: register circuit for selfrica
* feat: selfrica disclose circuit and test
* fix: common module error
* feat: add more test and fix constant
* fix: commitment calculation
* feat: selfrica contracts
* test: selfrica register using unified circuit
* feat: register persona and selfrica circuit
* feat: selfrica circuit and tests
* chore: remove unused code
* feat: test for ofac,date and olderthan
* fix: public signal constant
* feat: add contract tests
* feat: helper function to gen TEE input
* feat: gen circuit inputs with signature
* feat: seralized base64
* fix: DateIsLessFullYear componenet
* feat: register circuit for selfrica
* feat: selfrica disclose circuit and test
* fix: common module error
* feat: add more test and fix constant
* fix: commitment calculation
* feat: selfrica contracts
* test: selfrica register using unified circuit
* feat: register persona and selfrica circuit
* refactor: contract size reduction for IdentityVerificationHubImplV2
export function logic to external libs, reduce compiler runs to 200, update deploy scripts to link new libs
* feat: disclose circuit for persona
* feat: update persona ofac trees
* feat; register circuit for selfper
* feat: disclose test for selfper
* chore: refactor
* chore : remove unused circuits
* chore: rename selfper to kyc
* chore: update comments
* feat: constrain s to be 251 bit
* feat: add range check on majority ASCII and comments
* feat: range check on neg_r_inv
* chore: remove is pk zero constrain
* merge dev
* feat: add registerPubkey function to Selfrica with GCPJWT Verification
* test: add testing for GCPJWT verification on Selfrica
* fix: script that calls register_selfrica circuits (ptau:14 -> ptau:15)
* fix: get remaining Selfrica tests working with proper import paths
* refactor: store pubkeys as string
also add some comment code for registerPubkey function
* refactor: remove registerPubkeyCommitment function
some tests now skipped as awaiting changes to how pubkeys are stored (string instead of uint256)
* feat: use hex decoding for the pubkey commitment
* test: adjust tests for pubkey being string again
* fix: remove old references to registerPubkey
* docs: add full natspec for IdentityRegistrySelfricaImplV1
* docs: update files in rest of the repo for Selfrica attestation type
* test: fix broken tests
* fix: builds and move to kyc from selfrica
* fix: constrain r_inv, Rx, s, T
* feat: eddsa
* feat: add onlyTEE check to registerPubkeyCommitment
onlyOwner is able to change onlyTEE
* refactor: update gcpRootCAPubkeyHash to be changeable by owner
* feat: add events for update functions
* style: move functions to be near other similar functions
* fix: kyc happy flow
* fix: all contract tests passing
| fix: timestamp conversion with Date(), migrate to V2 for endToEnd test, scope formatting, fix register aadhaar issue by using block.timestamp instead of Date.now(), fix changed getter function name, enable MockGCPJWTVerifier with updated file paths, add missing LeanIMT import, fix user identifier format
* audit: bind key offset-value offset and ensure image_digest only occurs once in the payload
* fix: constrain bracket
* chore: update comment
* audit: hardcode attestation id
* audit: make sure R and pubkey are on the curve
* audit: ensure pubkey is within bounds
* fix: all contract tests passing
* feat: change max length to 99 from 74
* audit: don't check sha256 padding
* audit: check the last window as well
* audit: single occurance for eat_nonce and image_digest
* audit: check if the certs are expired
* audit: add the timestamp check to the contract
* audit: make sure the person is less than 255 years of age
* audit fixes
* chore: yarn.lock
* fix: build fixes
* fix: aadhaar timestamp
* lint
* fix: types
* format
---------
Co-authored-by: vishal <vishalkoolkarni0045@gmail.com>
Co-authored-by: Evi Nova <tranquil_flow@protonmail.com>
* refactor: use singular ETHERSCAN_API_KEY in .env
Etherscan has unified all keys of associated explorers like Celoscan into a singular key rather than different keys for different networks.
* refactor: use one .env instead of separate .env.test + .env files
* refactor: deploy contracts with runs of 1000 instead of 200
Decreases gas cost of function calls on deployed contracts
* clean: remove duplicate/redundant deploy modules + scripts
* clean: cleanup empty script file
* refactor: cleanup default network of scripts
Read network from .env instead of using defaults of alfajores (outdated) or staging
* clean: remove references to Alfajores, replace with Sepolia
* chore: add default .env variables
* chore: update build-all script to include aardhaar circuit
* chore: update broken Powers of Tau download link (use iden3)
* chore: remove duplicate script
* fix: use stable version 18 for disclose circuits
* test: update test import paths to allow for .ts version of generateProof
* test: fix broken tests
* test: uncomment critical code for registration, change error names to updated names, fix broken import paths, update disclose tests for new scope generation/handling
* fix: broken import path
* test: fix Airdrop tests to use V2 logic
* docs: update docs for necessary prerequisite programs
* chore: yarn prettier formatting
* fix: CI errors occuring when deploying contracts as can't read .env
Using a dummy key for CI builds
* chore: yarn prettier
* refactor: change runs to 100000
* Update deployment module for Identity Verification Hub V2 to correct file paths and module name for deployment commands.
* Add troubleshooting documentation for verification issues in deployHubV2.ts. Include manual verification steps and common failure reasons to assist users during deployment.
* Change visibility of getVerificationConfigV2 function from internal to public in IdentityVerificationHubImplV2 contract to allow external access.
* add eu id support
* add ofac and disclosure euid support
* add contract support for euid cards
* update contracts
* add comment out to remember the interface what we need to implement
* prettier
* get combine verifyVcAndDisclose function and get bytes data
* unified library and clean constant V2
* fix verifyVcAndDisclose interface
* add prettier and run prettier except .sol files
* prettier
* circuit compilation for local environment
* add register id circuit in the contracts dir
* clean up ignition deploy scritps
* refactor deploy scripts
* prettier
* update serialized dsc tree
* fix ofac check
* fix passport attestation id
---------
Co-authored-by: turnoffthiscomputer <colin.remi07@gmail.com>