CHIP Number | 0018 |
---|---|
Title | KYC-VC Proof Structure |
Description | A standard for formatting metadata proofs specifically for Know Your Customer Verifiable Credentials on Chia's blockchain |
Author | E-ming Saung |
Editor | Dan Perry |
Comments-URI | PR #67 |
Status | Draft |
Category | Process |
Sub-Category | Other |
Created | 2023-04-25 |
Requires | 0016, 0017 |
Replaces | None |
Superseded-By | None |
The VC Structure CHIP provides an off-chain metadata structure for Chia VCs. This CHIP adds an additional metadata structure specifically for KYC-VC proofs.
Throughout this document, we'll use the following terms:
- Must, required, shall – These words indicate an absolute requirement of the specification
- Must not, shall not – These phrases indicate an absolute prohibition of the specification
- Should, recommended – These words indicate something that is not a requirement of the specification, but the implications of not following it should be carefully considered beforehand
- Should not, not recommended – These phrases indicate something that is not a prohibition of the specification, but the implications of following it should be carefully considered beforehand
- May – This word indicates something that is optional. Interoperability between implementations must not be broken because of the choice to implement, or not to implement, this feature
While the VC Structure CHIP contains the requirement for at least one proof mechanism, along with the details necessary to evaluate that proof, it does not specify what that mechanism or those details are.
This CHIP adds onto the VC Structure CHIP by providing a comprehensive list of proofs that may be used for KYC VCs.
This CHIP does not introduce any backward incompatibilities.
This CHIP was created separately from the VC Structure CHIP so that other types of VCs will be able to use their own sets of proofs without breaking the structure of the VCs themselves. This modular design should help to future-proof the structure of Chia VCs while maintaining W3C conformance.
The VC Structure CHIP contains the option of including a values
property of type object
.
For KYC VCs, each proof must be a (key, value) pair, where both key
and value
are strings.
Note 1: The default proofs checker Chialisp puzzle specified in the Restricted CATs CHIP requires the proofs to be (key, value)
pairs, where the key
is a string and the value
is a boolean. However, the off-chain metadata format specified in this CHIP requires both key
and value
to be strings. This format was chosen in order to maintain W3C conformance.
Note 2: For consistency, all values that refer to countries should be taken from the Decoding table of ISO 3166-1 alpha-2 codes.
The following table is a standardized list of proofs that are optional to be used with the values
object. Additional proofs not listed here may also be used:
Key | Possible Values | Description |
---|---|---|
over_18 |
"true", "false" | Whether the holder is over the age of 18 |
nationality |
"US", "FR", etc | The holder's primary nationality |
nationality_2 |
"US", "FR", etc | The holder's secondary nationality (for dual citizens) |
residency |
"US", "FR", etc | The primary country where the holder currently resides |
non_ofac_sanctions |
"true", "false" | "true" if the holder is not listed on the United States Office of Foreign Assets Control's (OFAC) Specially Designated Nationals database, "false" otherwise |
non_tsdb |
"true", "false" | "true" if the holder is not listed on the United States Federal Bureau of Investigation's (FBI) Terrorist Screening Database, "false" otherwise |
See the Additional Assets section of this CHIP.
The format presented in this CHIP is intended to be conformant with the W3C Verifiable Credentials Data Model. As of this writing, this CHIP has yet to be registered with the W3C, so there is a risk that it will not be deemed conformant with the aformentioned Data Model.
None yet; will be added later.
Copyright and related rights waived via CC0.