§ Claim Format Registry

Registry Status: Proposed

Latest Draft: https://identity.foundation/claim-format-registry

Editors:
Daniel Buchner (Block)
Brent Zundel (Evernym)
Martin Riedel (Identity.com)
Kim Hamilton Duffy (Centre Consortium)
Contributors:
Juan Caballero (Centre Consortium)
Gabe Cohen (Block)
Participate:
GitHub repo
File a bug
Commit history

§ Abstract

This registry tracks canonical references to claim formats in the verifiable credential ecosystem for use by DIF specifications, i.e. Presentation Exchange.

§ Audience

Who is the audience for this document, and what can they trust/assume about the document?

§ Status of This Document

The structure (not the content) of this registry is classed as a PROPOSED specification under development within the Decentralized Identity Foundation (DIF).

NOTE: Until working group chairs have approved a registry (all fields complete and detailed, registry structured, instructions for new entries written), the status of a registry is PROPOSED. Working Group chairs may escalate to the DIF Steering Committee if they disagree about the readiness of a registry definition, or if they are concerned about the implications of DIF approving registry as-is. Once approved, a registry is ACTIVE at long as it has one or more responsible code-owners managing new PRs; working group chairs may switch a registry to ARCHIVED or HIBERNATED if this stops being the case.

§ Dependencies

Any upstream dependencies or specifications defining terminology used in what follows should be listed to make more objective any judgments (particularly about conformance or interoperability) implied by presence in the registry. Be explicit about conformance testing (and versions thereof), for example, where versioned conformance tests have been published.

§ Structure of the Registry

Each row represents a “format,” i.e. a set of possible envelopes and signing mechanisms for claims. The columns are defined as follows:

§ Additional Instructions for Registrants

Please mention in PR commentary the implementers using the claim format being added and a rationale for the abbreviations and alg/proof_type naming conventions used.

§ Conditions for Rejection or Removal

Maintainers reserve the right to reject, remove, or delay acceptance of PRs.

§ Registry

Abbrev AKA Description alg proof_type
jwt “Vanilla JWT” The format is a JSON Web Token (JWT) as defined by [RFC7519][] that will be submitted in the form of a JWT encoded string. Expression of supported algorithms in relation to this format MUST be conveyed using an alg property paired with values that are identifiers from the JSON Web Algorithms registry [RFC7518][]. See [RFC7518sec3][] n/a
jwt_vc,jwt_vp “JWT VC/VP” These formats are JSON Web Tokens (JWTs) [RFC7519][] that will be submitted in the form of a JWT-encoded string, with a payload extractable from it defined according to the JSON Web Token (JWT) [section] of the W3C [VC-DATA-MODEL][] specification. Expression of supported algorithms in relation to these formats MUST be conveyed using an JWT alg property paired with values that are identifiers from the JSON Web Algorithms registry in [RFC7518-sec3][]. See [RFC7518sec3][] n/a
ldp “Linked Data Proof” The format is a Linked-Data Proof that will be submitted as an object. Expression of supported algorithms in relation to these formats MUST be conveyed using a proof_type property with values that are identifiers from the Linked Data Cryptographic Suite Registry ([LDP-Registry][]). n/a See [LDP-Registry][]
ldp_vc, ldp_vp “Linked-Data VC/VP” Verifiable Credentials or Verifiable Presentations signed with Linked Data Proof formats. These are descriptions of formats normatively defined in the W3C Verifiable Credentials specification [VC-DATA-MODEL][], and will be submitted in the form of a JSON object. Expression of supported algorithms in relation to these formats MUST be conveyed using a proof_type property paired with values that are identifiers from the Linked Data Cryptographic Suite Registry ([LDP-Registry][]). n/a See [LDP-Registry][]

§ JSON Schemas

§ Presentation Definition Claim Format Designations

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Presentation Definition Claim Format Designations",
  "type": "object",
  "additionalProperties": false,
  "patternProperties": {
    "^jwt$|^jwt_vc$|^jwt_vp$": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "alg": {
          "type": "array",
          "minItems": 1,
          "items": { "type": "string" }
        }
      }
    },
    "^ldp_vc$|^ldp_vp$|^ldp$": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "proof_type": {
          "type": "array",
          "minItems": 1,
          "items": { "type": "string" }
        }
      }
    }
  }
}

§ Presentation Submission Claim Format Designations

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Presentation Submission Claim Format Designations",
  "type": "object",
  "definitions": {
    "format": {
      "type": "string",
      "enum": ["jwt", "jwt_vc", "jwt_vp", "ldp", "ldp_vc", "ldp_vp"]
    }
  }
}

§ Appendix

§ References

RFC7518

RFC7518sec3

RFC7519

VC-DATA-MODEL

JSON Schema

LDP-Registry

Linked Data Proofs

Table of Contents