Skip to content

New major release; better OID4VP support

Compare
Choose a tag to compare
@nklomp nklomp released this 30 Apr 19:45
· 299 commits to develop since this release

WARNING: This release has several breaking changes.

Although we envision a V3 release, with some major refactoring and full support for V2 of the PE spec, this version
should be more usable in OpenID4VP scenario's and incorporates many fixes. As such we urge people to upgrade from V1 to
V2 of the library.

Refactored external methods. They now all have optional objects as argument. Fixing future extensibility and ordering of
arguments.
Added support for PEX models v2, fixing model/interface names for typescript reserved words. Added options which are
handy in OpenID4VP scenario's, like having separate presentation submissions, filtering on DIDs and Formats not denoted
in the specification etc.

  • Added:

    • Allow to have an external presentation submission not part of the VP, especially handy in OpenID4VP use cases
    • Allow to filter against Verifiable Credential Formats, defined outside of a definition. This is handy for instance
      when OpenID4VP Relying Parties signal support for certain formats in their OpenID4VP metadata, but do not
      necessarily incorporate these in their definition(s).
    • Allow to filter against DID methods, defined outside of a definition. This is handy for instance when OpenID4VP
      Relying Parties signal support for certain DID methods in their OpenID4VP metadata, but do not necessarily
      incorporate these in their definition(s).
    • Matching of schema strings against the type property in a VC for V1, as this is being used in the wild
    • Allow issuance object to be present in a definition as it is being used in the wild
  • Removed:

    • definitions of ssi-types (lib/types/SSI.types.ts)
  • Changed:

    • Changed optional arguments to use objects, see the upgrade section of
      the README
    • presentationFrom and verifiablePresentationFrom methods now return an object instead of the presentation
      directly. see the upgrade section of the README
    • Certain non-state related methods have moved to static methods in the PEX class
    • method signatures are using common types from @sphereon/ssi-types
    • Credential Mapper from @sphereon/ssi-types is now used to create internal uniform VPs/VCs
    • Relax AJV errors
  • Fixed:

    • No more need for _const and _enum models/properties in presentation definitions. They are now const and enum (
      fixed in OpenAPI model generation)
    • Set the format based on detection of the format instead of hard-coding it in the descriptor
    • Match subject is issuer against all subjects of a VC if present (not common)