msg.sender
or off-chain through ECDSA signatures, to receive the credential. Alpha ensures one EVM address corresponds to a single identity commitment, as required by the protocol.0x18d...
, derived from the hash of “Alpha angel user NFT drop”.msg.sender
.0x18d...
.Credential | Type | Context | Public inputs | On-chain verification | Post-verification actions |
---|---|---|---|---|---|
Twitter follow | Custom, two claims: 1. Followed account ID. 2. Verification date. | Simple non-revocable twitter follow credentials with verification date, issued by DeSocial. | 1. Equality of followed account ID v.s. “Alpha”. 2. Upper bound of verification date. 3. External nullifier and nullifier A. 4. Revealing identity is X. | 1. Equality is true. 2. Upper bound is before 01/31/2021. 3. External nullifier is 0x18d… 4. X is msg.sender. 5. A has not been marked as used. | Mark nullifier A as used for twitter credentials. |
Passport | Custom, containing a claim of nationality. | DeKYC’s AI-power KYC solution. | 1. Equalities of nationality v.s. a list of countries. 2. External nullifier and nullifier B. 3. Revealing identity is X. | 1. Equalities are all false, and the list of countries is a superset of the disallow list. 2. External nullifier is 0x18d… 3. X is msg.sender 4. B has not been marked as used. | Mark nullifier B as used for passport credentials. |
Trading volume | Scalar (a basic credential type shipped) | Project Alpha trading volume | 1. Lower bound of trading volume. 2. External nullifier and nullifier C. 3. Revealing identity is X. | 1. External nullifier is 0x18d… 2. X is msg.sender. 3. C has not been binded yet, or binded with msg.sender | Bind C with msg.sender, as used for trading volume credentials, and set the number of available NFTs to mint to be lower_bound_volume / 1000 |