Package org.mozilla.jss.crypto
Class KeyGenAlgorithm
- java.lang.Object
-
- org.mozilla.jss.crypto.Algorithm
-
- org.mozilla.jss.crypto.KeyGenAlgorithm
-
- Direct Known Subclasses:
PBEAlgorithm
public class KeyGenAlgorithm extends Algorithm
Algorithms that can be used for generating symmetric keys.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
KeyGenAlgorithm.AnyKeyStrengthValidator
protected static class
KeyGenAlgorithm.FixedKeyStrengthValidator
protected static interface
KeyGenAlgorithm.KeyStrengthValidator
-
Field Summary
Fields Modifier and Type Field Description static KeyGenAlgorithm
AES
static KeyGenAlgorithm
DES
static KeyGenAlgorithm
DES3
static KeyGenAlgorithm
DESede
static KeyGenAlgorithm
GENERIC_SECRET
static KeyGenAlgorithm
NSS_SP800_108_COUNTER_KDF_DERIVE_DATA
static KeyGenAlgorithm
NSS_SP800_108_DOUBLE_PIPELINE_KDF_DERIVE_DATA
static KeyGenAlgorithm
NSS_SP800_108_FEEDBACK_KDF_DERIVE_DATA
static KeyGenAlgorithm
PBA_SHA1_HMAC
Deprecated, for removal: This API element is subject to removal in a future version.static KeyGenAlgorithm
RC2
static KeyGenAlgorithm
RC4
static KeyGenAlgorithm
SHA1_HMAC
Deprecated, for removal: This API element is subject to removal in a future version.static KeyGenAlgorithm
SHA256_HMAC
static KeyGenAlgorithm
SHA384_HMAC
static KeyGenAlgorithm
SHA512_HMAC
static KeyGenAlgorithm
SP800_108_COUNTER_KDF
static KeyGenAlgorithm
SP800_108_DOUBLE_PIPELINE_KDF
static KeyGenAlgorithm
SP800_108_FEEDBACK_KDF
-
Fields inherited from class org.mozilla.jss.crypto.Algorithm
CKM_AES_CBC, CKM_AES_CBC_PAD, CKM_AES_CMAC, CKM_AES_ECB, CKM_AES_KEY_GEN, CKM_AES_KEY_WRAP, CKM_AES_KEY_WRAP_KWP, CKM_AES_KEY_WRAP_PAD, CKM_DES_CBC_PAD, CKM_DES_KEY_GEN, CKM_DES3_CBC_PAD, CKM_DES3_ECB, CKM_DES3_KEY_GEN, CKM_DSA_KEY_PAIR_GEN, CKM_EC_KEY_PAIR_GEN, CKM_GENERIC_SECRET_KEY_GEN, CKM_NSS_AES_KEY_WRAP, CKM_NSS_AES_KEY_WRAP_PAD, CKM_NSS_SP800_108_COUNTER_KDF_DERIVE_DATA, CKM_NSS_SP800_108_DOUBLE_PIPELINE_KDF_DERIVE_DATA, CKM_NSS_SP800_108_FEEDBACK_KDF_DERIVE_DATA, CKM_PBA_SHA1_WITH_SHA1_HMAC, CKM_RC2_CBC_PAD, CKM_RC2_KEY_GEN, CKM_RC4_KEY_GEN, CKM_RSA_PKCS_KEY_PAIR_GEN, CKM_RSA_PKCS_OAEP, CKM_SHA_1_HMAC, CKM_SHA256_HMAC, CKM_SHA384_HMAC, CKM_SHA512_HMAC, CKM_SP800_108_COUNTER_KDF, CKM_SP800_108_DOUBLE_PIPELINE_KDF, CKM_SP800_108_FEEDBACK_KDF, oid, oidIndex, SEC_OID_AES_128_CBC, SEC_OID_AES_128_ECB, SEC_OID_AES_128_KEY_WRAP_KWP, SEC_OID_AES_192_CBC, SEC_OID_AES_192_ECB, SEC_OID_AES_192_KEY_WRAP_KWP, SEC_OID_AES_256_CBC, SEC_OID_AES_256_ECB, SEC_OID_AES_256_KEY_WRAP_KWP, SEC_OID_ANSIX9_DSA_SIGNATURE, SEC_OID_ANSIX9_DSA_SIGNATURE_WITH_SHA1_DIGEST, SEC_OID_ANSIX962_EC_PUBLIC_KEY, SEC_OID_ANSIX962_ECDSA_SHA1_SIGNATURE, SEC_OID_ANSIX962_ECDSA_SHA256_SIGNATURE, SEC_OID_ANSIX962_ECDSA_SHA384_SIGNATURE, SEC_OID_ANSIX962_ECDSA_SHA512_SIGNATURE, SEC_OID_ANSIX962_ECDSA_SIGNATURE_SPECIFIED_DIGEST, SEC_OID_DES_CBC, SEC_OID_DES_ECB, SEC_OID_DES_EDE3_CBC, SEC_OID_HMAC_SHA256, SEC_OID_HMAC_SHA384, SEC_OID_HMAC_SHA512, SEC_OID_MD2, SEC_OID_MD5, SEC_OID_PKCS1_MD2_WITH_RSA_ENCRYPTION, SEC_OID_PKCS1_MD5_WITH_RSA_ENCRYPTION, SEC_OID_PKCS1_RSA_ENCRYPTION, SEC_OID_PKCS1_RSA_PSS_SIGNATURE, SEC_OID_PKCS1_SHA1_WITH_RSA_ENCRYPTION, SEC_OID_PKCS1_SHA256_WITH_RSA_ENCRYPTION, SEC_OID_PKCS1_SHA384_WITH_RSA_ENCRYPTION, SEC_OID_PKCS1_SHA512_WITH_RSA_ENCRYPTION, SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_128_BIT_RC2_CBC, SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_128_BIT_RC4, SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_3KEY_TRIPLE_DES_CBC, SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_40_BIT_RC2_CBC, SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_40_BIT_RC4, SEC_OID_PKCS5_PBE_WITH_MD2_AND_DES_CBC, SEC_OID_PKCS5_PBE_WITH_MD5_AND_DES_CBC, SEC_OID_PKCS5_PBE_WITH_SHA1_AND_DES_CBC, SEC_OID_PKCS5_PBES2, SEC_OID_PKCS5_PBKDF2, SEC_OID_PKCS5_PBMAC1, SEC_OID_RC2_CBC, SEC_OID_RC4, SEC_OID_SHA1, SEC_OID_SHA256, SEC_OID_SHA384, SEC_OID_SHA512
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
KeyGenAlgorithm(int oidTag, java.lang.String name, KeyGenAlgorithm.KeyStrengthValidator keyStrengthValidator, OBJECT_IDENTIFIER oid, java.lang.Class<?> paramClass)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static KeyGenAlgorithm
fromOID(OBJECT_IDENTIFIER oid)
boolean
isValidStrength(int strength)
-
Methods inherited from class org.mozilla.jss.crypto.Algorithm
getEnum, getParameterClass, getParameterClasses, isValidParameterObject, toOID, toString
-
-
-
-
Field Detail
-
GENERIC_SECRET
public static final KeyGenAlgorithm GENERIC_SECRET
-
DES
public static final KeyGenAlgorithm DES
-
DES3
public static final KeyGenAlgorithm DES3
-
DESede
public static final KeyGenAlgorithm DESede
-
RC4
public static final KeyGenAlgorithm RC4
-
PBA_SHA1_HMAC
@Deprecated(since="5.0.1", forRemoval=true) public static final KeyGenAlgorithm PBA_SHA1_HMAC
Deprecated, for removal: This API element is subject to removal in a future version.
-
SHA1_HMAC
@Deprecated(since="5.0.1", forRemoval=true) public static final KeyGenAlgorithm SHA1_HMAC
Deprecated, for removal: This API element is subject to removal in a future version.
-
SHA256_HMAC
public static final KeyGenAlgorithm SHA256_HMAC
-
SHA384_HMAC
public static final KeyGenAlgorithm SHA384_HMAC
-
SHA512_HMAC
public static final KeyGenAlgorithm SHA512_HMAC
-
AES
public static final KeyGenAlgorithm AES
-
RC2
public static final KeyGenAlgorithm RC2
-
SP800_108_COUNTER_KDF
public static final KeyGenAlgorithm SP800_108_COUNTER_KDF
-
SP800_108_FEEDBACK_KDF
public static final KeyGenAlgorithm SP800_108_FEEDBACK_KDF
-
SP800_108_DOUBLE_PIPELINE_KDF
public static final KeyGenAlgorithm SP800_108_DOUBLE_PIPELINE_KDF
-
NSS_SP800_108_COUNTER_KDF_DERIVE_DATA
public static final KeyGenAlgorithm NSS_SP800_108_COUNTER_KDF_DERIVE_DATA
-
NSS_SP800_108_FEEDBACK_KDF_DERIVE_DATA
public static final KeyGenAlgorithm NSS_SP800_108_FEEDBACK_KDF_DERIVE_DATA
-
NSS_SP800_108_DOUBLE_PIPELINE_KDF_DERIVE_DATA
public static final KeyGenAlgorithm NSS_SP800_108_DOUBLE_PIPELINE_KDF_DERIVE_DATA
-
-
Constructor Detail
-
KeyGenAlgorithm
protected KeyGenAlgorithm(int oidTag, java.lang.String name, KeyGenAlgorithm.KeyStrengthValidator keyStrengthValidator, OBJECT_IDENTIFIER oid, java.lang.Class<?> paramClass)
-
-
Method Detail
-
fromOID
public static KeyGenAlgorithm fromOID(OBJECT_IDENTIFIER oid) throws java.security.NoSuchAlgorithmException
- Throws:
java.security.NoSuchAlgorithmException
-
isValidStrength
public boolean isValidStrength(int strength)
- Parameters:
strength
- Key strength.- Returns:
true
if the given strength is valid for this key generation algorithm. Note that PBE algorithms require PBEParameterSpecs rather than strengths. It is the responsibility of the caller to verify this.
-
-