Skip to content

Latest commit

 

History

History

oid4vci

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

OpenID for Verifiable Credential Issuance

This is a Rust library for the OpenID for Verifiable Credential Issuance (OpenID4VCI) specification developed by the OpenID Digital Credentials Protocols Working Group.

Specification Description Version
OID4VCI OpenID for Verifiable Credential Issuance Working Group Draft 13 published: 8 February 2024

An overview of all the OpenID Digital Credentials Protocols implementation in Rust can be found here.

Description

The OpenID for Verifiable Credential Issuance specification outlines an API that serves the purpose of issuing Verifiable Credentials. It is designed to support a range of formats, including W3C formats as well as other Credential formats like ISO.18013-5.

Verifiable Credentials bear a strong resemblance to identity assertions, akin to ID Tokens in OpenID Connect. They enable a Credential Issuer to assert claims on behalf of an End-User. These Verifiable Credentials adhere to a predefined schema, known as the Credential type, and they may be associated with a specific holder, often through cryptographic holder binding. Importantly, Verifiable Credentials can be securely presented to the RP (Relying Party) without requiring the direct involvement of the Credential Issuer.

Access to this API is granted through the authorization mechanism provided by OAuth 2.0. In essence, the Wallet employs OAuth 2.0 to obtain the necessary authorization for receiving Verifiable Credentials. This approach leverages the well-established security, simplicity, and flexibility of OAuth 2.0. It also allows existing OAuth 2.0 deployments and OpenID Connect OPs to extend their functionality to become Credential Issuers.