- All Implemented Interfaces:
WebCertificateReference.Builder<JwkBuilder>,WebKey.Builder<JwkBuilder>,WebKeyReference.Builder<JwkBuilder>
public class JwkBuilder
extends KeyReferenceBuilder<JwkBuilder>
implements WebKey.Builder<JwkBuilder>
JWK
WebKey.Builder implementation.-
Method Summary
Modifier and TypeMethodDescriptionbuild()Builds the web key.protected JsonObjectBuilderbuild(JsonObjectBuilder builder) Adds all pending parameters to aJsonObjectBuilder.Generates a public/private key pair for the algorithm specified byWebKeyReference.Builder.algorithm(Algorithm)using the default size.ephemeral(WebEncryption.Encryption encryption) Generates an ephemeral content encryption key.ephemeral(WebKey.Algorithm algorithm) Generates a public/private key pair or secret key without settingWebKeyReference.Builder.algorithm(edu.iu.crypt.WebKey.Algorithm).key(byte[] key) Adds raw key data.Sets both public and private keys from aKeyPair.key(PrivateKey key) Adds private key parameters.Adds public key parameters.static WebKey.Builder<?> of(WebKey.Type type) Creates a newWebKey.Builder.ops(WebKey.Operation... ops) Sets the key operations.pem(InputStream pemEncoded) Sets key data from potentially concatenated PEM-encoded input.Sets key data from potentially concatenated PEM-encoded input.type(WebKey.Type type) Sets the key type.use(WebKey.Use use) Sets the public key use.Methods inherited from class iu.crypt.KeyReferenceBuilder
algorithm, keyIdMethods inherited from class iu.crypt.CertificateReferenceBuilder
cert, cert, x5t, x5t256Methods inherited from class edu.iu.client.IuJsonBuilder
copy, param, param, param, paramNames, toJsonMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface edu.iu.crypt.WebCertificateReference.Builder
cert, cert, x5t, x5t256Methods inherited from interface edu.iu.crypt.WebKeyReference.Builder
algorithm, keyId
-
Method Details
-
of
Creates a newWebKey.Builder.- Parameters:
type- key type- Returns:
WebKey.Builder
-
type
Description copied from interface:WebKey.BuilderSets the key type.- Specified by:
typein interfaceWebKey.Builder<JwkBuilder>- Parameters:
type- key type- Returns:
- this
-
use
Description copied from interface:WebKey.BuilderSets the public key use.- Specified by:
usein interfaceWebKey.Builder<JwkBuilder>- Parameters:
use- public key use- Returns:
- this
-
ops
Description copied from interface:WebKey.BuilderSets the key operations.- Specified by:
opsin interfaceWebKey.Builder<JwkBuilder>- Parameters:
ops- key operations- Returns:
- this
-
ephemeral
Description copied from interface:WebKey.BuilderGenerates a public/private key pair for the algorithm specified byWebKeyReference.Builder.algorithm(Algorithm)using the default size.- Specified by:
ephemeralin interfaceWebKey.Builder<JwkBuilder>- Returns:
- this
-
ephemeral
Description copied from interface:WebKey.BuilderGenerates a public/private key pair or secret key without settingWebKeyReference.Builder.algorithm(edu.iu.crypt.WebKey.Algorithm).- Specified by:
ephemeralin interfaceWebKey.Builder<JwkBuilder>- Parameters:
algorithm- algorithm the key will be used with- Returns:
- this
-
ephemeral
Description copied from interface:WebKey.BuilderGenerates an ephemeral content encryption key.- Specified by:
ephemeralin interfaceWebKey.Builder<JwkBuilder>- Parameters:
encryption- content encryption algorithm- Returns:
- this
-
key
Description copied from interface:WebKey.BuilderAdds raw key data.- Specified by:
keyin interfaceWebKey.Builder<JwkBuilder>- Parameters:
key- raw key data- Returns:
- this
-
key
Description copied from interface:WebKey.BuilderAdds public key parameters.- Specified by:
keyin interfaceWebKey.Builder<JwkBuilder>- Parameters:
key- public key- Returns:
- this
-
key
Description copied from interface:WebKey.BuilderAdds private key parameters.- Specified by:
keyin interfaceWebKey.Builder<JwkBuilder>- Parameters:
key- private key- Returns:
- this
-
key
Description copied from interface:WebKey.BuilderSets both public and private keys from aKeyPair.- Specified by:
keyin interfaceWebKey.Builder<JwkBuilder>- Parameters:
keyPair- key pair;- Returns:
- this
-
pem
Description copied from interface:WebCertificateReference.BuilderSets key data from potentially concatenated PEM-encoded input.- Specified by:
pemin interfaceWebCertificateReference.Builder<JwkBuilder>- Overrides:
pemin classCertificateReferenceBuilder<JwkBuilder>- Parameters:
pemEncoded-InputStreamof PEM encoded key data, potentially concatenated- Returns:
- this
-
pem
Description copied from interface:WebCertificateReference.BuilderSets key data from potentially concatenated PEM-encoded input.- Specified by:
pemin interfaceWebCertificateReference.Builder<JwkBuilder>- Overrides:
pemin classCertificateReferenceBuilder<JwkBuilder>- Parameters:
pemEncoded- potentially concatenated PEM encoded key data- Returns:
- this
-
build
Description copied from interface:WebKey.BuilderBuilds the web key.- Specified by:
buildin interfaceWebKey.Builder<JwkBuilder>- Returns:
WebKey
-
build
Description copied from class:IuJsonBuilderAdds all pending parameters to aJsonObjectBuilder.- Overrides:
buildin classIuJsonBuilder<JwkBuilder>- Parameters:
builder-JsonObjectBuilder- Returns:
- builder
-