Class JwkOctet
java.lang.Object
io.helidon.security.jwt.jwk.Jwk
io.helidon.security.jwt.jwk.JwkOctet
Symmetric cipher JSON web key.
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringHMAC using SHA-256.static final StringHMAC using SHA-384.static final StringHMAC using SHA-512.static final StringKey value.Fields inherited from class 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_SIGNATUREModifier and TypeFieldDescriptionstatic final StringAlgorithm defining there is no security (e.g.static final StringKey type of elliptic curve keys.static final StringKey type of octet keys.static final StringKey type of RSA keys.static final JwkA jwk with no fields filled andJwk.ALG_NONEalgorithm.static final StringDecrypt content and validate decryption, if applicable.static final StringDerive bits not to be used as a key.static final StringDerive key.static final StringEncrypt content.static final StringCompute digital signature or MAC.static final StringDecrypt key and validate decryption, if applicable.static final StringVerify digital signature or MAC.static final StringEncrypt key.static final StringJWK parameter for algorithm.static final StringJWK parameter for key id.static final StringJWK parameter for key type.static final StringJWK parameters for permitted operations.static final StringJWK parameter for usage.static final StringKey can be used for encryption only.static final StringKey can be used for signatures only. -
Method Summary
Modifier and TypeMethodDescriptionstatic JwkOctet.Builderbuilder()Create a builder instance.static JwkOctetcreate(JsonObject json) Create an instance from Json object.byte[]doSign(byte[] bytesToSign) booleandoVerify(byte[] signedBytes, byte[] signature) byte[]Get the bytes of the secret key.Methods inherited from class Jwk
algorithm, keyId, keyType, operations, sign, toString, usage, verifySignatureModifier and TypeMethodDescriptionThe algorithm used when signing/encrypting this key.keyId()The key id (kid) of this JWK.keyType()The key type (kty) of this JWK.Permitted operations of this JWK.final byte[]sign(byte[] bytesToSign) Sign the bytes to sign using this JWK type and algorithm.toString()usage()Permitted usage of this JWK.final booleanverifySignature(byte[] signedBytes, byte[] signature) Verify that the signature is indeed for the signed bytes based on this JWK type and algorithm.
-
Field Details
-
ALG_HS256
-
ALG_HS384
-
ALG_HS512
-
PARAM_OCTET_KEY
-
-
Method Details
-
builder
Create a builder instance.- Returns:
- builder ready to create a new
JwkOctetinstance.
-
create
Create an instance from Json object. Note that the"k"must be base64 encoded.- Parameters:
json- with definition of this octet web key- Returns:
- new instance of this class constructed from json
- See Also:
-
getKeyBytes
public byte[] getKeyBytes()Get the bytes of the secret key.- Returns:
- byte array of the secret key
-
doVerify
public boolean doVerify(byte[] signedBytes, byte[] signature) -
doSign
public byte[] doSign(byte[] bytesToSign)
-