- java.lang.Object
-
- io.helidon.security.jwt.jwk.Jwk
-
- io.helidon.security.jwt.jwk.JwkRSA
-
public class JwkRSA extends Jwk
RSA JSON web key.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classJwkRSA.BuilderBuilder forJwkRSA.
-
Field Summary
Fields Modifier and Type Field Description static StringALG_RS256RSASSA-PKCS1-v1_5 using SHA-256.static StringALG_RS384RSASSA-PKCS1-v1_5 using SHA-384.static StringALG_RS512RSASSA-PKCS1-v1_5 using SHA-512.static StringPARAM_EXPJWK parameter for private key exponent.static StringPARAM_FIRST_CRT_COEFFJWK parameter for private key First CRT Coefficient.static StringPARAM_FIRST_FACTOR_CRT_EXPJWK parameter for private key First Factor CRT Exponent.static StringPARAM_FIRST_PRIME_FACTORJWK parameter for private key First Prime Factor.static StringPARAM_OTHER_PRIMESJWK parameter for private key Other Primes Info.static StringPARAM_PUB_EXPJWK parameter for public key exponent.static StringPARAM_PUB_MODULUSJWK parameter for public key modulus.static StringPARAM_SECOND_FACTOR_CRT_EXPJWK parameter for private key Second Factor CRT Exponent.static StringPARAM_SECOND_PRIME_FACTORJWK parameter for private key Second Prime Factor.static StringPARAM_X509_CHAINJWK parameter for X.509 certificate chain array.static StringPARAM_X509_CHAIN_URLJWK parameter for X.509 certificate chain URL.static StringPARAM_X509_SHA_1JWK parameter for SHA 1 Thumbprint of X.509 certificate.static StringPARAM_X509_SHA_256JWK parameter for SHA 256 Thumbprint of X.509 certificate.static StringSECURITY_ALGORITHMThe main Java security algorithm used.-
Fields inherited from class io.helidon.security.jwt.jwk.Jwk
ALG_NONE, KEY_TYPE_EC, KEY_TYPE_OCT, KEY_TYPE_RSA, NONE_JWK, OPERATION_DECRYPT, OPERATION_DERIVE_BITS, OPERATION_DERIVE_KEY, OPERATION_ENCRYPT, OPERATION_SIGN, OPERATION_UNWRAP_KEY, OPERATION_VERIFY, OPERATION_WRAP_KEY, PARAM_ALGORITHM, PARAM_KEY_ID, PARAM_KEY_TYPE, PARAM_OPERATIONS, PARAM_USE, USE_ENCRYPTION, USE_SIGNATURE
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static JwkRSA.Builderbuilder()Create a builder instance.Optional<List<X509Certificate>>certificateChain()static JwkRSAcreate(JsonObject json)Create an instance from Json object.byte[]doSign(byte[] bytesToSign)booleandoVerify(byte[] signedBytes, byte[] signatureToVerify)Optional<PrivateKey>privateKey()PublicKeypublicKey()Optional<byte[]>sha1Thumbprint()Optional<byte[]>sha256Thumbprint()-
Methods inherited from class io.helidon.security.jwt.jwk.Jwk
algorithm, keyId, keyType, operations, sign, toString, usage, verifySignature
-
-
-
-
Field Detail
-
SECURITY_ALGORITHM
public static final String SECURITY_ALGORITHM
The main Java security algorithm used.- See Also:
- Constant Field Values
-
ALG_RS256
public static final String ALG_RS256
RSASSA-PKCS1-v1_5 using SHA-256. See RFC 7518, section 7.1.2.- See Also:
- Constant Field Values
-
ALG_RS384
public static final String ALG_RS384
RSASSA-PKCS1-v1_5 using SHA-384. See RFC 7518, section 7.1.2.- See Also:
- Constant Field Values
-
ALG_RS512
public static final String ALG_RS512
RSASSA-PKCS1-v1_5 using SHA-512. See RFC 7518, section 7.1.2.- See Also:
- Constant Field Values
-
PARAM_PUB_MODULUS
public static final String PARAM_PUB_MODULUS
JWK parameter for public key modulus. See RFC 7518, section 6.3.1.1.- See Also:
- Constant Field Values
-
PARAM_PUB_EXP
public static final String PARAM_PUB_EXP
JWK parameter for public key exponent. See RFC 7518, section 6.3.1.2.- See Also:
- Constant Field Values
-
PARAM_EXP
public static final String PARAM_EXP
JWK parameter for private key exponent. See RFC 7518, section 6.3.2.1.- See Also:
- Constant Field Values
-
PARAM_FIRST_PRIME_FACTOR
public static final String PARAM_FIRST_PRIME_FACTOR
JWK parameter for private key First Prime Factor. See RFC 7518, section 6.3.2.2.- See Also:
- Constant Field Values
-
PARAM_SECOND_PRIME_FACTOR
public static final String PARAM_SECOND_PRIME_FACTOR
JWK parameter for private key Second Prime Factor. See RFC 7518, section 6.3.2.3.- See Also:
- Constant Field Values
-
PARAM_FIRST_FACTOR_CRT_EXP
public static final String PARAM_FIRST_FACTOR_CRT_EXP
JWK parameter for private key First Factor CRT Exponent. See RFC 7518, section 6.3.2.4.- See Also:
- Constant Field Values
-
PARAM_SECOND_FACTOR_CRT_EXP
public static final String PARAM_SECOND_FACTOR_CRT_EXP
JWK parameter for private key Second Factor CRT Exponent. See RFC 7518, section 6.3.2.5.- See Also:
- Constant Field Values
-
PARAM_FIRST_CRT_COEFF
public static final String PARAM_FIRST_CRT_COEFF
JWK parameter for private key First CRT Coefficient. See RFC 7518, section 6.3.2.6.- See Also:
- Constant Field Values
-
PARAM_OTHER_PRIMES
public static final String PARAM_OTHER_PRIMES
JWK parameter for private key Other Primes Info. See RFC 7518, section 6.3.2.7.- See Also:
- Constant Field Values
-
PARAM_X509_CHAIN_URL
public static final String PARAM_X509_CHAIN_URL
JWK parameter for X.509 certificate chain URL. See RFC 7517, section 4.6.- See Also:
- Constant Field Values
-
PARAM_X509_CHAIN
public static final String PARAM_X509_CHAIN
JWK parameter for X.509 certificate chain array. See RFC 7517, section 4.7.- See Also:
- Constant Field Values
-
PARAM_X509_SHA_1
public static final String PARAM_X509_SHA_1
JWK parameter for SHA 1 Thumbprint of X.509 certificate. See RFC 7517, section 4.8.- See Also:
- Constant Field Values
-
PARAM_X509_SHA_256
public static final String PARAM_X509_SHA_256
JWK parameter for SHA 256 Thumbprint of X.509 certificate. See RFC 7517, section 4.9.- See Also:
- Constant Field Values
-
-
Method Detail
-
builder
public static JwkRSA.Builder builder()
Create a builder instance.- Returns:
- builder ready to create a new
JwkRSAinstance.
-
create
public static JwkRSA create(JsonObject json)
Create an instance from Json object.- Parameters:
json- with definition of this RSA web key- Returns:
- new instance of this class constructed from json
- See Also:
for generic method that can load any supported JWK type.
-
privateKey
public Optional<PrivateKey> privateKey()
-
publicKey
public PublicKey publicKey()
-
certificateChain
public Optional<List<X509Certificate>> certificateChain()
-
sha1Thumbprint
public Optional<byte[]> sha1Thumbprint()
-
sha256Thumbprint
public Optional<byte[]> sha256Thumbprint()
-
doVerify
public boolean doVerify(byte[] signedBytes, byte[] signatureToVerify)
-
doSign
public byte[] doSign(byte[] bytesToSign)
-
-