diff --git a/diagrams/vc-jwt.drawio b/diagrams/vc-jwt.drawio new file mode 100644 index 000000000..11e6f8983 --- /dev/null +++ b/diagrams/vc-jwt.drawio @@ -0,0 +1,184 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/diagrams/vc-jwt.svg b/diagrams/vc-jwt.svg new file mode 100644 index 000000000..b9ecb45ee --- /dev/null +++ b/diagrams/vc-jwt.svg @@ -0,0 +1,361 @@ + + + + + +
+
+
+ + + SD-JWT (Decoded) + + +
+
+
+
+ SD-JWT (Decoded) +
+ + + + + +
+
+
+ Header +
+
+
+
+ Header +
+ + + +
+
+
+ Payload +
+
+
+
+ Payload   +
+ + + +
+
+
+ Signature +
+
+
+
+ Signature +
+ + + + + + + + +
+
+
+ + + verifiable credential graph +
+ (serialized in JSON) +
+
+
+
+
+
+
+ verifiable credential... +
+ + + +
+
+
+ + + Example University + + +
+
+
+
+ Example University +
+ + + +
+
+
+ + + 2010-01-01T10:37.24Z + + +
+
+
+
+ 2010-01-01T10:37.24Z +
+ + + +
+
+
+ + + Example Alumni Credential + + +
+
+
+
+ Example Alumni Credent... +
+ + + +
+
+
+ + + Credential123 + + +
+
+
+
+ Credential123 +
+ + + +
+
+
+ + + Pat + + +
+
+
+
+ Pat +
+ + + + +
+
+
+ type +
+
+
+
+ type +
+ + + + +
+
+
+ type +
+
+
+
+ type +
+ + +
+
+
+ validFrom +
+
+
+
+ validFrom  +
+ + + + +
+
+
+ issuer +
+
+
+
+ issuer +
+ + + + +
+
+
+ credentialSubject +
+
+
+
+  credentialSubject  +
+ + + + +
+
+
+ alumniOf +
+
+
+
+ alumniOf +
+ + + + +
+
+
+ DtEhU3ljbEg8L38VWAfUA... +
+
+
+
+ DtEhU3ljbEg8L38VWAfUA... +
+ + + + +
+
+
+ + kid: aB8J-_Z + +
+
+
+
+ kid: aB8J-_Z +
+ + + +
+
+
+ + iss: https://example.com + +
+
+
+
+ iss: https://example.com +
+ + + +
+
+
+ + alg: ES384 + +
+
+
+
+ alg: ES384 +
+ + + +
+
+
+ + iat: + + + 1704690029 + +
+
+
+
+ iat: 1704690029 +
+ + + +
+
+
+ + cty: vc+ld+json + +
+
+
+
+ cty: vc+ld+json +
+ + + +
+
+
+ + typ: vc+ld+json+sd-jwt + +
+
+
+
+ typ: vc+ld+json+sd-jwt +
+
diff --git a/diagrams/vp-graph-mult-creds.drawio b/diagrams/vp-graph-mult-creds.drawio new file mode 100644 index 000000000..50930badf --- /dev/null +++ b/diagrams/vp-graph-mult-creds.drawio @@ -0,0 +1,635 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/diagrams/vp-graph-mult-creds.svg b/diagrams/vp-graph-mult-creds.svg new file mode 100644 index 000000000..8bde40160 --- /dev/null +++ b/diagrams/vp-graph-mult-creds.svg @@ -0,0 +1,1197 @@ + + + + + +
+
+
+ + + Presentation ABC + + +
+
+
+
+ Presentation ABC +
+ + + +
+
+
+ + + VerifiablePresentation + + +
+
+
+
+ VerifiablePresentation +
+ + + +
+
+
+ + + DoNotArchive + + +
+
+
+
+ DoNotArchive +
+ + + + +
+
+
+ termsOfUse +
+
+
+
+  termsOfUse  +
+ + + + +
+
+
+ type +
+
+
+
+  type  +
+ + + + +
+
+
+ verifiableCredential +
+
+
+
+ verifiableCredential +
+ + + + +
+
+
+ proof +
+
+
+
+ proof +
+ + + +
+
+
+ + + verifiable presentation graph +
+ (the default graph) +
+
+
+
+
+
+
+ verifiable presentation gra... +
+ + + + +
+
+
+ + + Signature 8920 + + +
+
+
+
+ Signature 8920 +
+ + + + +
+
+
+ type +
+
+
+
+  type  +
+ + +
+
+
+ verificationMethod +
+
+
+
+ verificationMethod +
+ + + + +
+
+
+ created +
+
+
+
+  created +
+ + + + +
+
+
+ type +
+
+
+
+  type  +
+ + + + +
+
+
+ nonce +
+
+
+
+ nonce  +
+ + + + +
+
+
+ proofValue +
+
+
+
+ proofValue +
+ + + +
+
+
+ + + Example University Public Key 11 + + +
+
+
+
+ Example University P... +
+ + + +
+
+
+ + + 2024-01-02T12:43.56Z + + +
+
+
+
+ 2024-01-02T12:43.56Z +
+ + + +
+
+
+ + + Data Integrity Proof + + +
+
+
+
+ Data Integrity Proof +
+ + + +
+
+
+ + + hasdkyruod87j + + +
+
+
+
+ hasdkyruod87j +
+ + + +
+
+
+ + + zpweJHoan87 + + +
+
+
+
+ zpweJHoan87 +
+ + + +
+
+
+ + + verifiable presentation proof graph +
+ (a named graph) +
+
+
+
+
+
+
+ verifiable presentation proof graph... +
+ + + + +
+
+
+ verifiableCredential +
+
+
+
+ verifiableCredential +
+ + + + + +
+
+
+ + + Signature 456 + + +
+
+
+
+ Signature 456 +
+ + + +
+
+
+

+ + + Example University Public Key 7 + + +

+
+
+
+
+ Example Unive... +
+ + + +
+
+
+ + + 2022-06-18T21:19.10Z + + +
+
+
+
+ 2022-06-18T21:19... +
+ + + +
+
+
+ + + Data Integrity Proof + + +
+
+
+
+ Data Integrity... +
+ + + +
+
+
+ + + 34dj239dsj328 + + +
+
+
+
+ 34dj239dsj328 +
+ + + +
+
+
+ + + zBavE110…3JT2pq + + +
+
+
+
+ zBavE110…3JT2pq +
+ + + + +
+
+
+ + verificationMethod + +
+
+
+
+ verificationMethod +
+ + + + +
+
+
+ + created + +
+
+
+
+  created +
+ + + + +
+
+
+ + type + +
+
+
+
+   type   +
+ + + + +
+
+
+ + nonce + +
+
+
+
+ nonce  +
+ + + + +
+
+
+ + proofValue + +
+
+
+
+ proofValue  +
+ + + +
+
+
+

+ + + + verifiable credential proof graph + +
+ + (a named graph) + +
+
+
+

+
+
+
+
+ verifiable credential proo... +
+ + + +
+
+
+

+ + + verifiable credential graph +
+ (a named graph) +
+
+
+

+
+
+
+
+ verifiable cred... +
+ + + +
+
+
+ + + Example University + + +
+
+
+
+ Example Unive... +
+ + + +
+
+
+ + + 2010-01-01T10:37.24Z + + +
+
+
+
+ 2010-01-01T10:37... +
+ + + +
+
+
+

+ + + Example Alumni Credential + + +

+
+
+
+
+ Example Alumni... +
+ + + +
+
+
+ + + Credential123 + + +
+
+
+
+ Credential123 +
+ + + +
+
+
+ + + Pat + + +
+
+
+
+ Pat +
+ + + + +
+
+
+ + type + +
+
+
+
+ type +
+ + + + +
+
+
+ + validFrom + +
+
+
+
+  validFrom  +
+ + + + +
+
+
+ + issuer + +
+
+
+
+ issuer +
+ + + + +
+
+
+ + credentialSubject + +
+
+
+
+   credentialSubject   +
+ + + + +
+
+
+ + alumniOf + +
+
+
+
+ alumniOf +
+ + + + +
+
+
+ + proof + +
+
+
+
+ proof +
+ + + + + +
+
+
+ + + Signature 789 + + +
+
+
+
+ Signature 789 +
+ + + +
+
+
+

+ + + Example University Public Key 7 + + +

+
+
+
+
+ Example Unive... +
+ + + +
+
+
+ + + 2024-01-01T10:50.10Z + + +
+
+
+
+ 2024-01-01T10:50... +
+ + + +
+
+
+ + + Data Integrity Proof + + +
+
+
+
+ Data Integrity... +
+ + + +
+
+
+ + + 45jhei78j0ei + + +
+
+
+
+ 45jhei78j0ei +
+ + + +
+
+
+ + + zHbNml98dnao + + +
+
+
+
+ zHbNml98dnao +
+ + + + +
+
+
+ + verificationMethod + +
+
+
+
+ verificationMethod +
+ + + + +
+
+
+ + created + +
+
+
+
+  created +
+ + + + +
+
+
+ + type + +
+
+
+
+   type   +
+ + + + +
+
+
+ + nonce + +
+
+
+
+ nonce  +
+ + + + +
+
+
+ + proofValue + +
+
+
+
+ proofValue  +
+ + + +
+
+
+

+ + + + verifiable credential proof graph + +
+ + (a named graph) + +
+
+
+

+
+
+
+
+ verifiable credential proo... +
+ + + +
+
+
+

+ + + verifiable credential graph +
+ (a named graph) +
+
+
+

+
+
+
+
+ verifiable cred... +
+ + + +
+
+
+ + + Example University + + +
+
+
+
+ Example Unive... +
+ + + +
+
+
+ + + 2024-01-01T10:37.24Z + + +
+
+
+
+ 2024-01-01T10:37... +
+ + + +
+
+
+

+ + + Example Alumni Credent + + + ial + + +

+
+
+
+
+ Example Alumni... +
+ + + +
+
+
+ + + Credential456 + + +
+
+
+
+ Credential456 +
+ + + +
+
+
+ + + Ted + + +
+
+
+
+ Ted +
+ + + + +
+
+
+ + type + +
+
+
+
+ type +
+ + + + +
+
+
+
+
+
+
+
+
+ + +
+
+
+ + validFrom + +
+
+
+
+  validFrom   +
+ + + + +
+
+
+ + issuer + +
+
+
+
+ issuer +
+ + + + +
+
+
+ + credentialSubject + +
+
+
+
+   credentialSubject   +
+ + + + +
+
+
+ + alumniOf + +
+
+
+
+ alumniOf +
+ + + + +
+
+
+ + proof + +
+
+
+
+ proof +
+
diff --git a/diagrams/vp-jwt-mult-creds.drawio b/diagrams/vp-jwt-mult-creds.drawio new file mode 100644 index 000000000..3f65351cc --- /dev/null +++ b/diagrams/vp-jwt-mult-creds.drawio @@ -0,0 +1,238 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/diagrams/vp-jwt-mult-creds.svg b/diagrams/vp-jwt-mult-creds.svg new file mode 100644 index 000000000..f5aefd1de --- /dev/null +++ b/diagrams/vp-jwt-mult-creds.svg @@ -0,0 +1,442 @@ + + + + + +
+
+
+ + + SD-JWT (Decoded) + + +
+
+
+
+ SD-JWT (Decoded) +
+ + + + + +
+
+
+ Header +
+
+
+
+ Header +
+ + + +
+
+
+ Payload +
+
+
+
+ Payload   +
+ + + +
+
+
+ Signature +
+
+
+
+ Signature +
+ + + + + + + + +
+
+
+ cYjaSdfIoJH45NIqw3MYnasGIba... +
+
+
+
+ cYjaSdfIoJH45NIqw3MYnasGIba... +
+ + + + +
+
+
+ + kid: aB8J-_Z + +
+
+
+
+ kid: aB8J-_Z +
+ + + +
+
+
+ + iss: https://example.com + +
+
+
+
+ iss: https://example.c... +
+ + + +
+
+
+ + alg: ES384 + +
+
+
+
+ alg: ES384 +
+ + + +
+
+
+ + iat: + + 1704690029 +
+
+
+
+ iat: 1704690029 +
+ + + +
+
+
+ + cty: vp+ld+json + +
+
+
+
+ cty: vp+ld+json +
+ + + +
+
+
+ + typ: vp+ld+json+sd-jwt + +
+
+
+
+ typ: vp+ld+json+sd-jwt +
+ + + + + +
+
+
+ + + verifiable presentation graph +
+ (serialized in JSON) +
+
+
+
+
+
+
+ verifiable presentation gr... +
+ + + +
+
+
+ + + Presentation ABC + + +
+
+
+
+ Presentation ABC +
+ + + +
+
+
+ + + VerifiablePresentation + + +
+
+
+
+ VerifiablePresentation +
+ + + +
+
+
+ + + DoNotArchive + + +
+
+
+
+ DoNotArchive +
+ + + + +
+
+
+ termsOfUse +
+
+
+
+  termsOfUse  +
+ + + + +
+
+
+ type +
+
+
+
+  type  +
+ + + + +
+
+
+ verifiableCredential +
+
+
+
+ verifiableCredential +
+ + + + +
+
+
+ + + EnvelopedVerifiableCredential + + +
+
+
+
+ EnvelopedVerifiable... +
+ + + +
+
+
+ + + data:application/vc+ld+json+sd-jwt;QzVjV...RMjU + + +
+
+
+
+ data:application/vc+ld+json+sd-jw... +
+ + + + +
+
+
+ + type + +
+
+
+
+ type +
+ + + +
+
+
+ + + enveloped verifiable credential graph +
+ (serialized in JSON) +
+
+
+
+
+
+
+ enveloped verifia... +
+ + + + +
+
+
+ + + EnvelopedVerifiableCredential + + +
+
+
+
+ EnvelopedVerifiable... +
+ + + +
+
+
+ + + data:application/vc+ld+json+sd-jwt;RkOyT...KjOl + + +
+
+
+
+ data:application/vc+ld+json+sd-jwt... +
+ + + + +
+
+
+ + type + +
+
+
+
+ type +
+ + + +
+
+
+ + + enveloped verifiable credential graph +
+ (serialized in JSON) +
+
+
+
+
+
+
+ enveloped verifia... +
+ + + + +
+
+
+ verifiableCredential +
+
+
+
+ verifiableCredential +
+
diff --git a/diagrams/vp-jwt.drawio b/diagrams/vp-jwt.drawio new file mode 100644 index 000000000..c0dd2a257 --- /dev/null +++ b/diagrams/vp-jwt.drawio @@ -0,0 +1,193 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/diagrams/vp-jwt.svg b/diagrams/vp-jwt.svg new file mode 100644 index 000000000..008bf0425 --- /dev/null +++ b/diagrams/vp-jwt.svg @@ -0,0 +1,353 @@ + + + + + +
+
+
+ + + SD-JWT (Decoded) + + +
+
+
+
+ SD-JWT (Decoded) +
+ + + + + +
+
+
+ Header +
+
+
+
+ Header +
+ + + +
+
+
+ Payload +
+
+
+
+ Payload   +
+ + + +
+
+
+ Signature +
+
+
+
+ Signature +
+ + + + + + + + +
+
+
+ XaOOh4ljklxH7L99RTVSfOl... +
+
+
+
+ XaOOh4ljklxH7L99RTVSfOl... +
+ + + + +
+
+
+ + kid: aB8J-_Z + +
+
+
+
+ kid: aB8J-_Z +
+ + + +
+
+
+ + iss: https://example.com + +
+
+
+
+ iss: https://example.c... +
+ + + +
+
+
+ + alg: ES384 + +
+
+
+
+ alg: ES384 +
+ + + +
+
+
+ + iat: + + 1704690029 +
+
+
+
+ iat: 1704690029 +
+ + + +
+
+
+ + cty: vp+ld+json + +
+
+
+
+ cty: vp+ld+json +
+ + + +
+
+
+ + typ: vp+ld+json+sd-jwt + +
+
+
+
+ typ: vp+ld+json+sd-jwt +
+ + + + + +
+
+
+ + + verifiable presentation graph +
+ (serialized in JSON) +
+
+
+
+
+
+
+ verifiable presentation gr... +
+ + + + +
+
+
+ + + Presentation ABC + + +
+
+
+
+ Presentation ABC +
+ + + +
+
+
+ + + VerifiablePresentation + + +
+
+
+
+ VerifiablePresentation +
+ + + +
+
+
+ + + DoNotArchive + + +
+
+
+
+ DoNotArchive +
+ + + + +
+
+
+ termsOfUse +
+
+
+
+  termsOfUse  +
+ + + + +
+
+
+ type +
+
+
+
+  type  +
+ + + + +
+
+
+ verifiableCredential +
+
+
+
+ verifiableCredential +
+ + + +
+
+
+ + + enveloped verifiable credential graph +
+ (serialized in JSON) +
+
+
+
+
+
+
+ enveloped verifiable credent... +
+ + + +
+
+
+ + EnvelopedVerifiableCredential + +
+
+
+
+ EnvelopedVerifiableCredential +
+ + + +
+
+
+ + data:application/vc+ld+json+sd-jwt;QzVjV...RMjU + +
+
+
+
+ data:application/vc+ld+json+sd-jwt;QzVjV...RMjU +
+ + + + +
+
+
+ + type + +
+
+
+
+ type +
+
diff --git a/index.html b/index.html index 8947e8811..064cc124b 100644 --- a/index.html +++ b/index.html @@ -768,15 +768,18 @@

Credentials

above shows the basic components of a [=verifiable credential=], but abstracts the details about how [=claims=] are organized into information [=graphs=], which are then organized into -[=verifiable credentials=]. below shows a -more complete depiction of a [=verifiable credential=], which is normally -composed of at least two information [=graphs=]. The first [=graph=] -(the [=verifiable credential graph=], in this case the [=default graph=]) -expresses the [=verifiable credential=] itself, which contains credential -metadata and other [=claims=]. The second [=graph=] -(the proof graph of the [=verifiable credential=], which is a -named graph) expresses the digital proof, which is, in this case, a -digital signature. +[=verifiable credentials=]. +

+

+ below shows a more complete depiction of a +[=verifiable credential=] using an [=embedded proof=] based on [[?VC-DATA-INTEGRITY]]. +It is composed of at least two information [=graphs=]. +The first of these information [=graphs=], the [=verifiable credential graph=] (which is the [=default graph=]), +expresses the [=verifiable credential=] itself, through [=credential=] metadata and other [=claims=]. +The second information [=graph=], referred to by the proof property, is the proof graph +of the [=verifiable credential=], and is a separate [=named graph=]. +The [=proof graph=] expresses the digital proof, which, in this case, is a digital +signature.

@@ -796,7 +799,39 @@

Credentials

parenthetical remark '(the default graph)', the verifiable credential proof graph is annotated with the parenthetical remark '(a named graph)'.">
-Information graphs associated with a basic verifiable credential. +Information graphs associated with a basic verifiable credential, using an [=embedded proof=] +based on [[[VC-DATA-INTEGRITY]]] [[?VC-DATA-INTEGRITY]]. +
+
+ +

+ below shows the same [=verifiable credential=] + as , but using JOSE based on [[?VC-JOSE-COSE]]. + The payload contains a single information graph, that being the [=verifiable credential graph=] + containing [=credential=] metadata and other [=claims=]. +

+ +
+ Diagram with, on the left,
+                      a box, labeled as 'SD-JWT (Decoded)', and with three textual labels
+                      stacked vertically, namely 'Header', 'Payload', and 'Signature'.
+                      The 'Header' label is connected, with an arrow, to a separate rectangle
+                      on the right hand side containing six text fields: 'kid: aB8J-_Z',
+                      'alg: ES384', and 'cty: vc+ld+json', iss: https://example.com, iat: 1704690029, and typ: vc+ld+json+sd-jwt
+                      The 'Payload' label on the left side is connected, with an arrow, to a separate rectangle,
+                      containing a single graph.
+                      The rectangle has a label: 'verifiable credential graph (serialized in JSON)'
+                      The claims in the graph include 'Credential 123' as a subject
+                      with 4 properties: 'type' with value 'ExampleAlumniCredential',
+                      'issuer' with value 'Example University', 'validFrom' with value '2010-01-01T19:23:24Z', and
+                      'credentialSubject' with value 'Pat', who also has an 'alumniOf' property with value
+                      'Example University'.
+                      Finally, the 'Signature' label on the left side is connected, with an
+                      arrow, to a separate rectangle, containing a single text field:
+                      'DtEhU3ljbEg8L38VWAfUA...'. +
+ Information graphs associated with a basic verifiable credential, using an [=enveloping proof=] + based on [[[VC-JOSE-COSE]]] [[?VC-JOSE-COSE]].
@@ -857,22 +892,25 @@

Presentations

[=verifiable credentials=] are organized into information [=graphs=], which are then organized into [=verifiable presentations=].

-

+

below shows a more complete depiction of a -[=verifiable presentation=], which is normally composed of at least four -information [=graphs=]. The first of these [=graphs=], the -[=verifiable presentation graph=] (which is the [=default graph=]), -expresses the [=verifiable presentation=] itself, and contains presentation -metadata. The `verifiableCredential` property in the verifiable -presentation graph refers to one or more [=verifiable credentials=], each -being one of the second information [=graphs=], i.e., a self-contained -[=verifiable credential graph=] which in turn contains credential metadata -and other claims. Each of these graphs are separate [=named graphs=]. The -third information [=graph=], the verifiable credential [=proof graph=], -expresses the credential graph proof, which is usually a digital signature. The -fourth information [=named graph=], the presentation [=proof graph=], -expresses the presentation's digital proof, which is usually a digital -signature. +[=verifiable presentation=] using an embedded proof +based on [[?VC-DATA-INTEGRITY]]. +It is composed of at least four information [=graphs=]. +The first of these information [=graphs=], the [=verifiable presentation graph=] +(which is the [=default graph=]), expresses the [=verifiable presentation=] +itself through [=presentation=] metadata. +The [=verifiable presentation=] refers, via the verifiableCredential property, +to a [=verifiable credential=]. +This [=credential=] is a self-contained [=verifiable credential graph=] containing [=credential=] metadata and other [=claims=]. +This [=credential=] refers to a [=verifiable credential=] [=proof graph=] via a proof property, +expressing the proof (usually a digital signature) of the [=credential=]. +This [=verifiable credential graph=], and its linked [=proof graph=], constitute +the second and third information [=graphs=], respectively, and each is a separate [=named graph=]. +The [=presentation=] also refers, via the proof property, to +the [=presentation=]'s [=proof graph=], which is the fourth information [=graph=] (another [=named graph=]). +This [=presentation=] [=proof graph=] represents the digital signature of the [=verifiable presentation graph=], +the [=verifiable credential graph=], and the [=proof graph=] linked from the [=verifiable credential graph=].

@@ -886,21 +924,65 @@

Presentations

graph is connected, through 'verifiableCredential', to the part of the figure which is identical to Figure 6, except that the verifiable credential graph is annotated to be a named graph instead of a default graph. -The verifiable presentation proof graph, has and object with 'Signature 8910' -with 5 properties: 'type' of DataIntegrityProof, 'verificationMethod' of Example -Presenter Public Key 11, 'created' of 2018-01-15T12:43:56Z, 'challenge' of -d28348djsj3239, a 'nonce' of 'd28348djsj3239', and 'proofValue' of -'p2KaZ...8Fj3K='. This graph is annotated with the parenthetical remark '(a +The verifiable presentation proof graph has an object with 'Signature 8910' +with 5 properties: 'type' with value 'DataIntegrityProof'; 'verificationMethod' with value 'Example +Presenter Public Key 11'; 'created' with value '2018-01-15T12:43:56Z'; +'nonce' with value 'd28348djsj3239'; and 'proofValue' with value +'zp2KaZ...8Fj3K='. This graph is annotated with the parenthetical remark '(a named graph)'">
-Information graphs associated with a basic verifiable presentation. +Information [=graphs=] associated with a basic [=verifiable presentation=] that is using an [=embedded proof=] +based on [[[VC-DATA-INTEGRITY]]] [[?VC-DATA-INTEGRITY]]. +
+
+ +

+ below shows the same [=verifiable presentation=] + as , but using an [=enveloping proof=] based on [[?VC-JOSE-COSE]]. + The payload contains only two information graphs: the [=verifiable presentation graph=] + expressing the [=verifiable presentation=] itself through presentation metadata; + and the corresponding [=verifiable credential graph=], referred to by + the `verifiableCredential` property. + The [=verifiable credential graph=] contains a single + `EnvelopedVerifiableCredential` instance + referring, via a `data:` URL [[RFC2397]], to the verifiable credential secured via + an [=enveloping proof=] shown on . +

+ +
+ Diagram with, on the left,
+                      a box, labeled as 'JWT (Decoded)', and with three textual labels
+                      stacked vertically, namely 'Header', 'Payload', and 'Signature'.
+                      The 'Header' label is connected, with an arrow, to a separate rectangle
+                       on the right hand side containing six text fields: 'kid: aB8J-_Z',
+                      'alg: ES384', and 'cty: vc+ld+json', iss: https://example.com, iat: 1704690029, and typ: vp+ld+json+sd-jwt
+                      The 'Payload' label of the left side is connected, with an arrow, to a separate rectangle,
+                      consisting of two related graphs (stacked vertically) connected
+                      by a an arrow labeled 'verifiableCredential'.
+                      The two graphs have each a label 'verifiable presentation graph (serialized in JSON)' and
+                      'verifiable credential graph (serialized in JSON)', respectively.
+                      The top graph in the rectangle has and object 'Presentation ABC' with 3 properties: 'type'
+                      of value VerifiablePresentation, 'termsOfUse' of value 'Do Not Archive'.
+                      The bottom graph includes 'data:application/vc+ld+json+sd-jwt;QzVjV...RMjU' as a subject
+                      with a single property: 'type' of value `EnvelopedVerifiableCredential`.
+                      Finally, the 'Signature' label on the left side is connected, with an
+                      arrow, to a separate rectangle, containing a single text field:
+                      'XaOOh4ljklxH7L99RTVSfOl...'. +
+ Information graphs associated with a basic [=verifiable presentation=] that is using an [=enveloping proof=] + based on JOSE [[?VC-JOSE-COSE]]. The `data:` URL refers to + the [=verifiable credential=] shown on .
+

-It is possible to have a [=presentation=], such as a business persona, which +It is possible to have a [=presentation=], such as a collection of university credentials, which draws on multiple [=credentials=] about different [=subjects=] that are often, but not required to be, related. +This is achieved by using the `verifiableCredential` property to +refer to multiple [=verifiable credentials=]. +See Appendix for more details.

@@ -7064,6 +7146,88 @@

application/vp+ld+json

+
+

Additional Diagrams for Verifiable Presentations

+ +

+ below is a variant of : + a [=verifiable presentation=] referring to two [=verifiable credentials=], and using embedded proofs + based on [[?VC-DATA-INTEGRITY]]. + Each [=verifiable credential graph=] is connected to + its own separate [=proof graph=]; the verifiableCredential property is used + to connect the [=verifiable presentation=] to the [=verifiable credential graphs=]. + The [=presentation=] [=proof graph=] represents the digital signature of the [=verifiable presentation graph=], + both [=verifiable credential graphs=], and the [=proof graphs=] linked from the [=verifiable credential graphs=]. + The complete [=verifiable presentation=] + consists, in this case, of six information [=graphs=]. +

+ +
+ Diagram with a
+            'verifiable presentation graph' on top, connected via a 'proof' to
+            a 'verifiable presentation proof graph' on the bottom. The verifiable
+            presentation graph has an object, 'Presentation ABC', with 3 properties: 'type'
+            with value 'VerifiablePresentation'; 'termsOfUse' with value 'Do Not Archive';
+            and two instances of 'verifiableCredential', detailed below. This
+            graph is annotated with a parenthetical remark, '(the default graph)'. This
+            graph is connected, through 'verifiableCredential', to the part of the figure
+            that consists two variants of Figure 6 (one is identical; the other has
+            minor differences in the labels referring to validity dates, the name of the person,
+            and the values for the nonce and the signature),
+            except that these verifiable credential graphs are
+            annotated to be named graphs instead of a default graph.
+            The verifiable presentation proof graph has an object labeled 'Signature 8920'
+            with 5 properties: 'type' with value 'DataIntegrityProof'; 'verificationMethod' with value 'Example
+            Presenter Public Key 11'; 'created' with value '2024-01-02T12:43:56Z'; 'nonce' with value 'hasdkyruod87j';
+            and 'proofValue' with value 'zpewJHoan87='. This graph is annotated with the parenthetical remark '(a
+            named graph)' +
+ A variant of : information [=graphs=] associated with a [=verifiable presentation=] + referring to two + verifiable credentials, using an [=embedded proof=] based on [[[VC-DATA-INTEGRITY]]] [[?VC-DATA-INTEGRITY]]. +
+
+ +

+ below shows the same [=verifiable presentation=] + as , but using an [=enveloping proof=] based on [[?VC-JOSE-COSE]]. + Each [=verifiable credential graph=] contains a single + `EnvelopedVerifiableCredential` instance, + referring, via a data: URL [[RFC2397]], to a verifiable credential secured via + an [=enveloping proof=]. +

+ +
+ Diagram with, on the left,
+                      a box, labeled as 'JWT (Decoded)', and with three textual labels
+                      stacked vertically, namely 'Header', 'Payload', and 'Signature'.
+                      The 'Header' label is connected, with an arrow, to a separate rectangle
+                       on the right hand side containing six text fields: 'kid: aB8J-_Z',
+                      'alg: ES384', and 'cty: vc+ld+json', iss: https://example.com, iat: 1704690029, and typ: vp+ld+json+sd-jwt
+                      The 'Payload' label of the left side is connected, with an arrow, to a separate rectangle,
+                      consisting of three related graphs (stacked vertically) connected
+                      by two arrows labeled 'verifiableCredential' starting from the top graph and connecting it
+                      to the two other graphs, respectively. The top graph has a label
+                      'verifiable presentation graph (serialized in JSON)'; the other two are both labeled by
+                      'verifiable credential graph (serialized in JSON)'.
+                      The top graph in the rectangle has and object 'Presentation ABC' with 3 properties: 'type'
+                      of value VerifiablePresentation, 'termsOfUse' of value 'Do Not Archive'.
+                      One of the the bottom graphs includes 'data:application/vc+ld+json+sd-jwt;QzVjV...RMjU' as a subject
+                      with a single property: 'type' of value `EnvelopedVerifiableCredential`.
+                      The last bottom graph is identical other, except for the subject which is labeled as
+                      'data:application/vc+ld+json+sd-jwt;RkOyT...KjOl'.
+                      Finally, the 'Signature' label on the left side is connected, with an
+                      arrow, to a separate rectangle, containing a single text field:
+                      'cYjaSdfIoJH45NIqw3MYnasGIba...'. +
+ A variant of : information [=graphs=] associated with a [=verifiable presentation=] + referring to two verifiable credentials using [=enveloping proofs=] based on JOSE [[?VC-JOSE-COSE]]. +
+
+ + +
+

Revision History