java.lang.Object
iu.crypt.JwsBuilder
- All Implemented Interfaces:
WebCryptoHeader.Builder<JwsBuilder>
,WebSignature.Builder<JwsBuilder>
Collects inputs for
Jws
encrypted messages.-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncompact()
Protects all header parameters except jwk and verifies inputs are valid for JWE compact serialization.contentType
(String contentType) Sets the header content type parameter value.Sets critical parameter names.The key to use for encrypting or signing.Sets the key ID relative toWebCryptoHeader.getKeySetUri()
corresponding to a JWKS key entry.next
(WebKey.Algorithm algorithm) Enqueues the current signature and resets the builder for the next entry.<T> JwsBuilder
param
(WebCryptoHeader.Param param, T value) Sets a registered parameter value<T> JwsBuilder
Sets an extended parameter valuestatic JwsSignedPayload
Parses JWS signed payload from serialized formprotect
(WebCryptoHeader.Param... params) Defines registered protected header parameters.Defines extended protected header parameters.sign
(InputStream in) Signs a raw data read from from anInputStream
Sets the header type parameter value.Sets the key to include with the header.Sets the URI where JWKS well-known key data can be retrieved.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface edu.iu.crypt.WebSignature.Builder
sign, sign
-
Field Details
-
JSON
-
-
Constructor Details
-
JwsBuilder
Constructor.- Parameters:
algorithm
-WebKey.Algorithm
-
-
Method Details
-
parse
Parses JWS signed payload from serialized form- Parameters:
jws
- compact or JSON serialized from- Returns:
- JWS signed payload
-
next
Description copied from interface:WebSignature.Builder
Enqueues the current signature and resets the builder for the next entry.- Specified by:
next
in interfaceWebSignature.Builder<JwsBuilder>
- Parameters:
algorithm
-WebKey.Algorithm
- Returns:
WebSignature.Builder
-
compact
Description copied from interface:WebSignature.Builder
Protects all header parameters except jwk and verifies inputs are valid for JWE compact serialization.- Specified by:
compact
in interfaceWebSignature.Builder<JwsBuilder>
- Returns:
- this
-
protect
Description copied from interface:WebSignature.Builder
Defines registered protected header parameters.- Specified by:
protect
in interfaceWebSignature.Builder<JwsBuilder>
- Parameters:
params
- protected header parameters- Returns:
- this
-
protect
Description copied from interface:WebSignature.Builder
Defines extended protected header parameters.- Specified by:
protect
in interfaceWebSignature.Builder<JwsBuilder>
- Parameters:
params
- protected header parameters- Returns:
- this
-
keyId
Description copied from interface:WebCryptoHeader.Builder
Sets the key ID relative toWebCryptoHeader.getKeySetUri()
corresponding to a JWKS key entry.- Specified by:
keyId
in interfaceWebCryptoHeader.Builder<JwsBuilder>
- Parameters:
keyId
- key ID- Returns:
- this
-
wellKnown
Description copied from interface:WebCryptoHeader.Builder
Sets the URI where JWKS well-known key data can be retrieved.- Specified by:
wellKnown
in interfaceWebCryptoHeader.Builder<JwsBuilder>
- Parameters:
uri
- JWKSURI
- Returns:
- this
-
wellKnown
Description copied from interface:WebCryptoHeader.Builder
Sets the key to include with the header.- Specified by:
wellKnown
in interfaceWebCryptoHeader.Builder<JwsBuilder>
- Parameters:
key
- may include private/secret key data to use for encryption/signing; onlyWebKey.wellKnown()
will be included in the header.- Returns:
- this
-
key
Description copied from interface:WebCryptoHeader.Builder
The key to use for encrypting or signing.- Specified by:
key
in interfaceWebCryptoHeader.Builder<JwsBuilder>
- Parameters:
key
- key to use for encryption or signing; will not be included in the header. UseWebCryptoHeader.Builder.wellKnown(WebKey)
to set the key and include well-known component in the header.- Returns:
- this
-
type
Description copied from interface:WebCryptoHeader.Builder
Sets the header type parameter value.- Specified by:
type
in interfaceWebCryptoHeader.Builder<JwsBuilder>
- Parameters:
type
- header type parameter value.- Returns:
- this
-
contentType
Description copied from interface:WebCryptoHeader.Builder
Sets the header content type parameter value.- Specified by:
contentType
in interfaceWebCryptoHeader.Builder<JwsBuilder>
- Parameters:
contentType
- header type parameter value.- Returns:
- this
-
crit
Description copied from interface:WebCryptoHeader.Builder
Sets critical parameter names.- Specified by:
crit
in interfaceWebCryptoHeader.Builder<JwsBuilder>
- Parameters:
parameterNames
- critical parameter names- Returns:
- this
-
param
Description copied from interface:WebCryptoHeader.Builder
Sets a registered parameter value- Specified by:
param
in interfaceWebCryptoHeader.Builder<JwsBuilder>
- Type Parameters:
T
- value type- Parameters:
param
- parametervalue
- parameter value- Returns:
- this
-
param
Description copied from interface:WebCryptoHeader.Builder
Sets an extended parameter value- Specified by:
param
in interfaceWebCryptoHeader.Builder<JwsBuilder>
- Type Parameters:
T
- value type- Parameters:
name
- parameter namevalue
- parameter value- Returns:
- this
-
sign
Description copied from interface:WebSignature.Builder
Signs a raw data read from from anInputStream
- Specified by:
sign
in interfaceWebSignature.Builder<JwsBuilder>
- Parameters:
in
- stream of data to sign- Returns:
- signed data
-