Revocation Lists

As specified by the W3C recommendation on the verifiable credentials data model, a verifiable credential has the ability to be revoked by a verifiable data registry. This is achieved by setting up a revocation registry, an architecture that preserves the anonymity of verifiable credential holders, while allowing the credential issuer to manage the credentials it issues to subjects, by publishing a public list used by verifiers of verifiable credentials to check the validity of a credential.

More information on this architecture can be found in the official documentation, at https://www.w3.org/TR/vc-data-model/.

In our implementation we use the W3C Revocation List 2020 as specified in https://w3c-ccg.github.io/vc-status-rl-2020/.

Below is an example of a public revocation list that a verifiable credentials issuer has to set up:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
{
  "@context": [
    "https://www.w3.org/2018/credentials/v1",
    {
      "RevocationList2020Credential": {
        "@context": {
          "@protected": true,
          "description": "http://schema.org/description",
          "id": "@id",
          "name": "http://schema.org/name",
          "type": "@type"
        },
        "@id": "https://w3id.org/vc-revocation-list-2020#RevocationList2020Credential"
      },
      "RevocationList2020": {
        "@context": {
          "@protected": true,
          "encodedList": "https://w3id.org/vc-revocation-list-2020#encodedList",
          "id": "@id",
          "type": "@type"
        },
        "@id": "https://w3id.org/vc-revocation-list-2020#RevocationList2020"
      }
    }
  ],
  "id": "https://trustmydata.compell.io/revocation/list/1005",
  "type": [
    "VerifiableCredential",
    "RevocationList2020Credential"
  ],
  "credentialSubject": {
    "id": "...",
    "encodedList": "...",
    "type": "RevocationList2020"
  },
  "issuer": "did:...",
  "issuanceDate": "2021-12-10T04:24:12.164Z",
  "proof": {
    "@context": [
      "https://identity.foundation/EcdsaSecp256k1RecoverySignature2020/lds-ecdsa-secp256k1-recovery2020-0.0.jsonld",
      "https://demo.spruceid.com/EcdsaSecp256k1RecoverySignature2020/esrs2020-extra-0.0.jsonld"
    ],
    "type": "EcdsaSecp256k1RecoverySignature2020",
    "proofPurpose": "assertionMethod",
    "verificationMethod": "did:...",
    "created": "2021-12-10T15:01:35.668Z",
    "jws": "..."
  }
}
Copyright © 2022 Compellio S.A. All rights reserved.
Last modified on Nov 26, 2022 14:32