VII Core -- Verifiable Presentations
Though they are both part of the VC data model, Verifiable Credentials (VCs) are distinct from Verifiable Presentations (VPs). Presentations are typically generated or derived from VCs and presented by credential holders for the purposes of verification.
The VC spec defines a general data model for VPs, but doesn’t specify how to request specific information in a Verifiable Presentation. Our approach is based on the VP Request Spec at the W3C Credentials Community Group.
MATTR VII incorporates the privacy-preserving capabilities of verifiable presentations in our VII Core. Core allows users to create, retrieve, manage, and delete Verifiable Presentation templates.
Presentations are an area where the Mobile Wallet plays a very important role. While VII Core is used to create templates and generates requests for presentations, it’s the Mobile Wallet App that generates and derives these presentations and exchanges them on behalf of the user.
NOTE: We have developed an experimental feature in MATTR VII around Zero-Knowledge Proofs (ZKP). It’s a technique to implement privacy-preserving selective disclosure in verifiable credentials using the cryptography of BBS+ signatures.
As ZKPs are experimental and the standards are subject to breaking changes. To experiment with this feature, use your API endpoint to create a DID using the
"keyType":"bls12381g2"option. If you create a Verifiable Credential using this new DID as the issuer DID, the platform will automatically detect this capability and issue a ZKP-enabled BBS+ credential for you. Our Mobile Wallet App can detect if ZKP is enabled in a credential, and upon request for verification, will use that information to derive a new credential presentation that selectively discloses the required info using ZKP. You can read more about our work on privacy-preserving verifiable credentials on our blog.
For more detail on our Verifiable Presentation capabilities, check out the API Reference Docs.