Skip to content

[OID4VCI] Restructure credential_configurations_supported parsing to handle credential_metadata with display and claims && Update Credential Issuer Metadata structure#102

Draft
forkimenjeckayang wants to merge 3 commits intomainfrom
issue-41587
Draft

[OID4VCI] Restructure credential_configurations_supported parsing to handle credential_metadata with display and claims && Update Credential Issuer Metadata structure#102
forkimenjeckayang wants to merge 3 commits intomainfrom
issue-41587

Conversation

@forkimenjeckayang
Copy link
Collaborator

@forkimenjeckayang forkimenjeckayang commented Aug 12, 2025

Summary

Implements complete OID4VCI draft-16 specification changes for Credential Issuer Metadata, including restructured credential_configurations_supported with credential_metadata and new credential_request_encryption support.

Key Changes

  • New CredentialMetadata class: Container for display and claims metadata
  • Updated SupportedCredentialConfiguration: Removed direct display and claims fields, added credential_metadata field
  • Enhanced DisplayObject: Added support for background_image and enhanced logo object structure
  • New CredentialRequestEncryptionMetadata: Supports credential request encryption with JWKS, algorithms, and compression
  • Enhanced CredentialResponseEncryptionMetadata: Added zip_values_supported field
  • Updated CredentialIssuer: Added credential_request_encryption field
  • Updated tests: All integration tests updated to use new structure and validate new fields

Breaking Changes

  • SupportedCredentialConfiguration.getDisplay() and getClaims() methods removed
  • New API: getCredentialMetadata().getDisplay() and getCredentialMetadata().getClaims()
  • Null checks required when accessing credential_metadata

Specification Compliance

  • Follows OID4VCI draft-16 structure completely
  • Prioritizes format-specific metadata over fallback metadata
  • Supports all required and optional fields for both request and response encryption
  • Implements proper credential metadata structure with display and claims

Closses

@forkimenjeckayang forkimenjeckayang changed the title [OID4VCI] Restructure credential_configurations_supported parsing to handle credential_metadata with display and claims [OID4VCI] Restructure credential_configurations_supported parsing to handle credential_metadata with display and claims && Update Credential Issuer Metadata structure Aug 13, 2025
@Ogenbertrand
Copy link
Collaborator

I did most of the work on this PR: #103 that contains credential_request_encryption and credential_response_encryption see tickets awell:
#74
#75

Perhaps you could refer my PR link for clarification, let's avoid double work.
WDYT @forkimenjeckayang @IngridPuppet ?

Aside that, this PR LDTM !

Copy link
Collaborator

@IngridPuppet IngridPuppet left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added some comments. Please could you check?

@IngridPuppet
Copy link
Collaborator

I did most of the work on this PR: #103 that contains credential_request_encryption and credential_response_encryption see tickets awell: #74 #75

Perhaps you could refer my PR link for clarification, let's avoid double work. WDYT @forkimenjeckayang @IngridPuppet ?

Aside that, this PR LDTM !

I'm afraid the double work, if any, is already done. Given the significant progress on this PR, you could just indeed sync on overlapping changes so it is straightforward to resolve conflicts to arise in the future.

…dential_metadata with display and claims && Update Credential Issuer Metadata structure

Closes: keycloak#41587

Closses: keycloak#41597
Signed-off-by: forkimenjeckayang <forkimenjeckayang@gmail.com>
forkimenjeckayang and others added 2 commits September 4, 2025 08:27
Signed-off-by: forkimenjeckayang <forkimenjeckayang@gmail.com>
@IngridPuppet IngridPuppet force-pushed the main branch 2 times, most recently from bda0e2a to f99c912 Compare October 15, 2025 13:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Keycloak: Restructure credential_configurations_supported parsing to handle credential_metadata with display and claims

3 participants