- All Implemented Interfaces:
WebCertificateReference,WebCryptoHeader,WebKeyReference
WebCryptoHeader implementation.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceExtension provider interface.Nested classes/interfaces inherited from interface edu.iu.crypt.WebCertificateReference
WebCertificateReference.Builder<B extends WebCertificateReference.Builder<B>>Nested classes/interfaces inherited from interface edu.iu.crypt.WebCryptoHeader
WebCryptoHeader.Builder<B extends WebCryptoHeader.Builder<B>>, WebCryptoHeader.ParamNested classes/interfaces inherited from interface edu.iu.crypt.WebKeyReference
WebKeyReference.Builder<B extends WebKeyReference.Builder<B>> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) JsonObjectGets the extended parameters.(package private) static Josefrom(JsonObject protectedHeader, JsonObject sharedHeader, JsonObject perRecipientHeader) Creates a JOSE header from serialized headers.Gets the header type parameter value.Gets the set of critical parameter names.<T> TgetExtendedParameter(String name) Gets extended parameters.(package private) static <T> Jose.Extension<T> getExtension(String parameterName) Gets a registered extension.getKey()Gets the well-known key data.Gets the URI where JWKS well-known key data can be retrieved.getType()Gets the header type parameter value.static <T> voidregister(String parameterName, Jose.Extension<T> extension) Registers an extension.(package private) JsonObjectGets the JOSE header as JSON.toString()(package private) JwkGets the verified well-known key resolved for this header.Methods inherited from class iu.crypt.JsonKeyReference
equals, getAlgorithm, getKeyId, hashCode, represents, serializeToMethods inherited from class iu.crypt.JsonCertificateReference
getCertificateChain, getCertificateSha256Thumbprint, getCertificateThumbprint, getCertificateUri, verifiedCertificateChainMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface edu.iu.crypt.WebCertificateReference
getCertificateChain, getCertificateSha256Thumbprint, getCertificateThumbprint, getCertificateUriMethods inherited from interface edu.iu.crypt.WebCryptoHeader
getAlgorithm, getKeyId
-
Constructor Details
-
Jose
Jose(JsonValue joseValue) Constructor.- Parameters:
joseValue- header parameters
-
-
Method Details
-
register
Registers an extension.- Type Parameters:
T- parameter type- Parameters:
parameterName- parameter name; must not be a registered parameter name enumerated byWebCryptoHeader.Param, should be collision-resistant. Take care when usingJose.Extensionto implement an IANA Registered Parameter not enumerated byWebCryptoHeader.Param, since these may be implemented internally in a future release.extension- provider implementation- See Also:
-
getExtension
Gets a registered extension.- Type Parameters:
T- parameter type- Parameters:
parameterName- parameter name- Returns:
- extension registered for the named parameter
-
from
static Jose from(JsonObject protectedHeader, JsonObject sharedHeader, JsonObject perRecipientHeader) Creates a JOSE header from serialized headers.- Parameters:
protectedHeader- protected header datasharedHeader- unprotected shared header dataperRecipientHeader- unprotected per-recipient header data- Returns:
- JOSE header
-
getKeySetUri
Description copied from interface:WebCryptoHeaderGets the URI where JWKS well-known key data can be retrieved.- Specified by:
getKeySetUriin interfaceWebCryptoHeader- Returns:
URI
-
getKey
Description copied from interface:WebCryptoHeaderGets the well-known key data.- Specified by:
getKeyin interfaceWebCryptoHeader- Returns:
WebKey
-
getType
Description copied from interface:WebCryptoHeaderGets the header type parameter value.- Specified by:
getTypein interfaceWebCryptoHeader- Returns:
- header type parameter value.
-
getContentType
Description copied from interface:WebCryptoHeaderGets the header type parameter value.- Specified by:
getContentTypein interfaceWebCryptoHeader- Returns:
- header type parameter value.
-
getCriticalParameters
Description copied from interface:WebCryptoHeaderGets the set of critical parameter names.- Specified by:
getCriticalParametersin interfaceWebCryptoHeader- Returns:
- critical parameter names
-
getExtendedParameter
Description copied from interface:WebCryptoHeaderGets extended parameters.- Specified by:
getExtendedParameterin interfaceWebCryptoHeader- Type Parameters:
T- parameter type- Parameters:
name- parameter name- Returns:
- extended parameters
-
toString
- Overrides:
toStringin classJsonCertificateReference<Jose>
-
wellKnown
Jwk wellKnown()Gets the verified well-known key resolved for this header.- Returns:
- well-known key
-
extendedParameters
JsonObject extendedParameters()Gets the extended parameters.- Returns:
- extended parameters
-
toJson
Gets the JOSE header as JSON.- Parameters:
nameFilter- accepts standard or extended param name and returns true to include the parameter; else false- Returns:
JsonObject; null if no parameters match the filter
-