Intro to Verifiable Credentials
Glossary
VC — Verifiable Credential, according to vc data model https://www.w3.org/TR/vc-data-model/
credential — a set of one or more claims made by an issuer. A verifiable credential is a tamper-evident credential that has authorship that can be cryptographically verified. Verifiable credentials can be used to build verifiable presentations, which can also be cryptographically verified. The claims in a credential can be about different subjects.
All credentials have the next fields according to a scheme
claim — all data + metadata (An assertion made about a subject.))
proof — signature by gov't
issuer — id of the issuer organization (URI, DID, JWK or object with ID)
DID(Decentralized Identifier) - a new type of identifier that enables verifiable, decentralized digital identity. A DID refers to any subject (e.g., a person, organization, thing, data model, abstract entity, etc.) as determined by the controller of the DID.
DCC — Digital Credentials Consortium https://digitalcredentials.mit.edu/
Digital Credentials Wallet — Digital wallet for storing verifiable credentials, for example, https://lcw.app/
EBSI — European Blockchain Services Infrastructure. It is a blockchain network of distributed nodes across Europe to support credentials applications. https://ec.europa.eu/digital-building-blocks/wikis/display/EBSI/What+is+ebsi
Useful links
Learn about Verifiable Credentials - Verifiable Credentials
W3C Education Task Force - https://github.com/w3c-ccg/vc-ed/
DID documentation - https://www.w3.org/TR/did-core
Verifiable credentials lifecycle
There are 3 main roles in VC lifecycle: Issuer, Holder and Verifier.
Issuer receiving the credentials request from holder's wallet application, and answers with a signed Verifiable Credential.
Holder then can generate a verifiable presentation to share required data of VC with the verifier.
Verifier
Diagram: https://www.w3.org/TR/vc-use-cases/#user-tasks
https://www.w3.org/TR/vc-use-cases/#terminology
HTTP API: https://w3c-ccg.github.io/vc-api/#architecture-overview
Verifiable Credentials status
For invalidating credentials after issuing the VC status list is used
https://w3c-ccg.github.io/vc-status-list-2021/
The support for issuing credentials compliant with VC Status List 2021 was added to sign and verify services in https://github.com/digitalcredentials/sign-and-verify-core/pull/18
DID methods
A DID method defines how implementers can realize the features described by this specification. DID methods are often associated with a particular verifiable data registry. New DID methods are defined in their own specifications to enable interoperability between different implementations of the same DID method. (https://www.w3.org/TR/did-core )
The most popular:
did:web https://w3c-ccg.github.io/did-method-web/#did-method-operations
Bitcoin, Ethereum, etc.
To register DID, we need a pair of private/public jwk keys.
DID registration specification: https://identity.foundation/did-registration/#abstract
Testing Tool for DID and VC: https://github.com/transmute-industries/api.did.actor
VC Extensions
OpenBadges3.0
OpenBadges3.0 specification: https://imsglobal.github.io/openbadges-specification/ob_v3p0.html
There is a custom data model that maps to VC data model. For example, instead of the claim
credentialSubject
is presented.
"credentialSubject": {
"id": "did:example:ebfeb1f712ebc6f1c276e12ec21",
"type": ["AchievementSubject"],
"achievement": {}
},
"credentialSchema": [{
"id": "https://imsum2.herokuapp.com/jsonschema?classId=org.1edtech.ob.v3p0.achievementcredential.class",
"type": "JsonSchemaValidator2019"
}]
EBSI
European Blockchain Services Infrastructure (EBSI) extends VC and adds Verifiable Attestation scheme to VC claim https://ec.europa.eu/digital-building-blocks/wikis/display/EBSIDOC/Data+Models+and+Schemas
The list of conformant wallets: https://ec.europa.eu/digital-building-blocks/wikis/display/EBSI/Conformant+wallets
All implements use case Diploma https://ec.europa.eu/digital-building-blocks/wikis/display/EBSIDOC/Diploma+Functional+Scope
Verifiable Credentials wallets
https://info.jff.org/hubfs/Digital Wallet Market Scan/Market-Scan-Digital-Wallet-040122-vF.pdf