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> JwsBuilderparam(WebCryptoHeader.Param param, T value) Sets a registered parameter value<T> JwsBuilderSets an extended parameter valuestatic JwsSignedPayloadParses 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 anInputStreamSets 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, waitMethods 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.BuilderEnqueues the current signature and resets the builder for the next entry.- Specified by:
nextin interfaceWebSignature.Builder<JwsBuilder>- Parameters:
algorithm-WebKey.Algorithm- Returns:
WebSignature.Builder
-
compact
Description copied from interface:WebSignature.BuilderProtects all header parameters except jwk and verifies inputs are valid for JWE compact serialization.- Specified by:
compactin interfaceWebSignature.Builder<JwsBuilder>- Returns:
- this
-
protect
Description copied from interface:WebSignature.BuilderDefines registered protected header parameters.- Specified by:
protectin interfaceWebSignature.Builder<JwsBuilder>- Parameters:
params- protected header parameters- Returns:
- this
-
protect
Description copied from interface:WebSignature.BuilderDefines extended protected header parameters.- Specified by:
protectin interfaceWebSignature.Builder<JwsBuilder>- Parameters:
params- protected header parameters- Returns:
- this
-
keyId
Description copied from interface:WebCryptoHeader.BuilderSets the key ID relative toWebCryptoHeader.getKeySetUri()corresponding to a JWKS key entry.- Specified by:
keyIdin interfaceWebCryptoHeader.Builder<JwsBuilder>- Parameters:
keyId- key ID- Returns:
- this
-
wellKnown
Description copied from interface:WebCryptoHeader.BuilderSets the URI where JWKS well-known key data can be retrieved.- Specified by:
wellKnownin interfaceWebCryptoHeader.Builder<JwsBuilder>- Parameters:
uri- JWKSURI- Returns:
- this
-
wellKnown
Description copied from interface:WebCryptoHeader.BuilderSets the key to include with the header.- Specified by:
wellKnownin 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.BuilderThe key to use for encrypting or signing.- Specified by:
keyin 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.BuilderSets the header type parameter value.- Specified by:
typein interfaceWebCryptoHeader.Builder<JwsBuilder>- Parameters:
type- header type parameter value.- Returns:
- this
-
contentType
Description copied from interface:WebCryptoHeader.BuilderSets the header content type parameter value.- Specified by:
contentTypein interfaceWebCryptoHeader.Builder<JwsBuilder>- Parameters:
contentType- header type parameter value.- Returns:
- this
-
crit
Description copied from interface:WebCryptoHeader.BuilderSets critical parameter names.- Specified by:
critin interfaceWebCryptoHeader.Builder<JwsBuilder>- Parameters:
parameterNames- critical parameter names- Returns:
- this
-
param
Description copied from interface:WebCryptoHeader.BuilderSets a registered parameter value- Specified by:
paramin interfaceWebCryptoHeader.Builder<JwsBuilder>- Type Parameters:
T- value type- Parameters:
param- parametervalue- parameter value- Returns:
- this
-
param
Description copied from interface:WebCryptoHeader.BuilderSets an extended parameter value- Specified by:
paramin interfaceWebCryptoHeader.Builder<JwsBuilder>- Type Parameters:
T- value type- Parameters:
name- parameter namevalue- parameter value- Returns:
- this
-
sign
Description copied from interface:WebSignature.BuilderSigns a raw data read from from anInputStream- Specified by:
signin interfaceWebSignature.Builder<JwsBuilder>- Parameters:
in- stream of data to sign- Returns:
- signed data
-