This project is a privacy-preserving, sybil-resistant technology that brings identity, compliance, and reputation to DApps built on public blockchains.
Businesses and consumers onboard onto Quadrata by attaching their wallets to an identity passport. The Quadrata Passport is issued as a non-transferrable NFT (ERC1155). DApps integrated with Quadrata can check passport attributes to verify:
- If the user has a passport.
- If the user owns more than one wallet.
- The user's AML risk score.
- From which country the government id was issued.
npm install
npx hardhat test
- Set Environment variable:
cp .env.example .env
- Deploy to testnet (/!\ /!\ Always deploy with a dummy account prior of using the official Quadrata testnet deployer account - this is because we want to make sure nonces align and because of proxy contract, they might get skipped and cause a nonce disconnect /!\ /!)
npx hardhat run scripts/deployment/passport/deployTestnet.ts --network <NETWORK>
- Verify on etherscan
npx hardhat verify --network <NETWORK> <ADDRESS>
- Verify that the deployments is successful by filling in information and running
npx hardhat run scripts/verify/assertTestnetDeployment.ts --network <NETWORK>
- Copy latest oz
cp -r .openzeppelin/mainnet.json .openzeppelin/unknown-31337.json
- Remove
skip
in the testtest/misc/test_passport_upgrade.ts
- Run Safety tests
npx hardhat test test/misc/test_passport_upgrade.ts
For more advanced development details see the documentation.