Package org.mozilla.jss.crypto
Class CMACAlgorithm
java.lang.Object
org.mozilla.jss.crypto.Algorithm
org.mozilla.jss.crypto.DigestAlgorithm
org.mozilla.jss.crypto.CMACAlgorithm
Algorithms for performing CMACs. These can be used to create
MessageDigests.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final CMACAlgorithm
CMAC AES-X.static final CMACAlgorithm
static final CMACAlgorithm
static final CMACAlgorithm
private static Hashtable
<OBJECT_IDENTIFIER, CMACAlgorithm> Fields inherited from class org.mozilla.jss.crypto.DigestAlgorithm
MD2, MD5, SHA1, SHA256, SHA384, SHA512
Fields inherited from class org.mozilla.jss.crypto.Algorithm
ANSI_X9_ALGORITHM, ANSI_X962_OID, 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, name, 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_SHA1, 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
ConstructorsModifierConstructorDescriptionprotected
CMACAlgorithm
(int oidIndex, String name, OBJECT_IDENTIFIER oid, int outputSize) -
Method Summary
Modifier and TypeMethodDescriptionstatic CMACAlgorithm
fromOID
(OBJECT_IDENTIFIER oid) Looks up the CMAC algorithm with the given OID.Methods inherited from class org.mozilla.jss.crypto.DigestAlgorithm
getOutputSize
Methods inherited from class org.mozilla.jss.crypto.Algorithm
getEnum, getParameterClass, getParameterClasses, isValidParameterObject, toOID, toString
-
Field Details
-
oidMap
-
AES
CMAC AES-X. This is a Message Authentication Code that uses a symmetric key together with the AES cipher to create a form of signature. Note that we pass null for the OID here: neither NIST nor any other standards body has defined an OID for use with CMAC. Since we use a PKCS#11 backend and NSS doesn't otherwise define CMAC based on a SEC OID, we don't strictly need one. We've left the fromOID code (and oid parameter in the constructor) as other projects use them for HMACAlgorith. At such time as an OID is defined, it can be added here. -
AES128
-
AES192
-
AES256
-
-
Constructor Details
-
CMACAlgorithm
-
-
Method Details
-
fromOID
Looks up the CMAC algorithm with the given OID.- Parameters:
oid
- OID.- Returns:
- CMAC algorithm.
- Throws:
NoSuchAlgorithmException
- If no registered CMAC algorithm has the given OID.
-