#verifiable-credentials #open-id #oid4vc #openid4vc

oid4vci

Rust implementation for the OpenID Connect OpenID for Verifiable Credential Issuance standard

1 unstable release

0.1.0 Jun 12, 2023

#805 in Authentication

23 downloads per month
Used in oid4vc

Apache-2.0

2KB

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.

No runtime deps