Top Description Inners Fields Constructors Methods
org.keycloak.sdjwt

public Class IssuerSignedJWT

extends SdJws
Class Inheritance
Imports
java.util.Collections, .List, .Map, .Objects, java.util.stream.Collectors, org.keycloak.crypto.SignatureSignerContext, org.keycloak.jose.jws.JWSInput, com.fasterxml.jackson.databind.JsonNode, com.fasterxml.jackson.databind.node.ArrayNode, .ObjectNode

Handle verifiable credentials (SD-JWT VC), enabling the parsing of existing VCs as well as the creation and signing of new ones. It integrates with Keycloak's SignatureSignerContext to facilitate the generation of issuer signature.
Author
Francis Pouatcha

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class

Field Summary

Modifier and TypeField and Description
public static final String
public static final String

Constructor Summary

AccessConstructor and Description
private
private
IssuerSignedJWT(List<SdJwtClaim> claims, List<DecoyClaim> decoyClaims, String hashAlg, boolean nestedDisclosures)

private
IssuerSignedJWT(JsonNode payload, JWSInput jwsInput)

private
IssuerSignedJWT(List<SdJwtClaim> claims, List<DecoyClaim> decoyClaims, String hashAlg, boolean nestedDisclosures, SignatureSignerContext signer, String jwsType)

Method Summary

Modifier and TypeMethod and Description
public static IssuerSignedJWT.Builder
public static IssuerSignedJWT
fromJws(String jwsString)

private static JsonNode
generatePayloadString(List<SdJwtClaim> claims, List<DecoyClaim> decoyClaims, String hashAlg, boolean nestedDisclosures)

public IssuerSignedJWT
Inherited from org.keycloak.sdjwt.SdJws:
getJwsStringgetPayloadsigntoJwsverifySignature

Field Detail

CLAIM_NAME_SD_HASH_ALGORITHMback to summary
public static final String CLAIM_NAME_SD_HASH_ALGORITHM
CLAIM_NAME_SELECTIVE_DISCLOSUREback to summary
public static final String CLAIM_NAME_SELECTIVE_DISCLOSURE

Constructor Detail

IssuerSignedJWTback to summary
private IssuerSignedJWT(String jwsString)
IssuerSignedJWTback to summary
private IssuerSignedJWT(List<SdJwtClaim> claims, List<DecoyClaim> decoyClaims, String hashAlg, boolean nestedDisclosures)
IssuerSignedJWTback to summary
private IssuerSignedJWT(JsonNode payload, JWSInput jwsInput)
IssuerSignedJWTback to summary
private IssuerSignedJWT(List<SdJwtClaim> claims, List<DecoyClaim> decoyClaims, String hashAlg, boolean nestedDisclosures, SignatureSignerContext signer, String jwsType)

Method Detail

builderback to summary
public static IssuerSignedJWT.Builder builder()
fromJwsback to summary
public static IssuerSignedJWT fromJws(String jwsString)
generatePayloadStringback to summary
private static JsonNode generatePayloadString(List<SdJwtClaim> claims, List<DecoyClaim> decoyClaims, String hashAlg, boolean nestedDisclosures)
toSignedJWTback to summary
public IssuerSignedJWT toSignedJWT(SignatureSignerContext signer, String jwsType)
org.keycloak.sdjwt back to summary

public Class IssuerSignedJWT.Builder

extends Object
Class Inheritance

Field Summary

Modifier and TypeField and Description
private List<SdJwtClaim>
private List<DecoyClaim>
private String
private String
private boolean
private SignatureSignerContext

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public IssuerSignedJWT
public IssuerSignedJWT.Builder
public IssuerSignedJWT.Builder
public IssuerSignedJWT.Builder
public IssuerSignedJWT.Builder
public IssuerSignedJWT.Builder
withNestedDisclosures(boolean nestedDisclosures)

public IssuerSignedJWT.Builder
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

claimsback to summary
private List<SdJwtClaim> claims
decoyClaimsback to summary
private List<DecoyClaim> decoyClaims
hashAlgback to summary
private String hashAlg
jwsTypeback to summary
private String jwsType
nestedDisclosuresback to summary
private boolean nestedDisclosures
signerback to summary
private SignatureSignerContext signer

Constructor Detail

Builderback to summary
public Builder()

Method Detail

buildback to summary
public IssuerSignedJWT build()
withClaimsback to summary
public IssuerSignedJWT.Builder withClaims(List<SdJwtClaim> claims)
withDecoyClaimsback to summary
public IssuerSignedJWT.Builder withDecoyClaims(List<DecoyClaim> decoyClaims)
withHashAlgback to summary
public IssuerSignedJWT.Builder withHashAlg(String hashAlg)
withJwsTypeback to summary
public IssuerSignedJWT.Builder withJwsType(String jwsType)
withNestedDisclosuresback to summary
public IssuerSignedJWT.Builder withNestedDisclosures(boolean nestedDisclosures)
withSignerback to summary
public IssuerSignedJWT.Builder withSigner(SignatureSignerContext signer)