eu-digital-identity-wallet / eudi-lib-ios-siop-openid4vp-swift

Implementation of SIOPv2 and OpenID4VP protocols (wallet's role) in SWIFT
Apache License 2.0
3 stars 3 forks source link

Support did scheme #47

Closed dtsiflit closed 2 months ago

dtsiflit commented 3 months ago

Currently, library doesn't support client_id_scheme equal to did, which is one of the scheme described in OpenId4VP.

did: This value indicates that the Client Identifier is a DID defined in [DID-Core]. The request MUST be signed with a private key associated with the DID. A public key to verify the signature MUST be obtained from the verificationMethod property of a DID Document. Since DID Document may include multiple public keys, a particular public key used to sign the request in question MUST be identified by the kid in the JOSE Header. To obtain the DID Document, the Wallet MUST use DID Resolution defined by the DID method used by the Verifier.

In case of client_id_scheme equal to did the following rules must be implemented:

From the wallet (library side) DID resolution can be left out of scope, which means that it could be caller's responsibility to provide a resolver with the DID methods that trusts and supports.