Package org.mozilla.jss.crypto
Class Algorithm
- java.lang.Object
-
- org.mozilla.jss.crypto.Algorithm
-
- Direct Known Subclasses:
DigestAlgorithm
,EncryptionAlgorithm
,KeyGenAlgorithm
,KeyPairAlgorithm
,KeyWrapAlgorithm
,SignatureAlgorithm
public class Algorithm extends java.lang.Object
Represents a cryptographic algorithm.- See Also:
EncryptionAlgorithm
,SignatureAlgorithm
-
-
Field Summary
-
Constructor Summary
Constructors Modifier Constructor Description protected
Algorithm(int oidIndex, java.lang.String name)
protected
Algorithm(int oidIndex, java.lang.String name, OBJECT_IDENTIFIER oid)
protected
Algorithm(int oidIndex, java.lang.String name, OBJECT_IDENTIFIER oid, java.lang.Class<?> paramClass)
protected
Algorithm(int oidIndex, java.lang.String name, OBJECT_IDENTIFIER oid, java.lang.Class<?>[] paramClasses)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description PKCS11Algorithm
getEnum()
java.lang.Class<?>
getParameterClass()
Deprecated.CallgetParameterClasses()
instead.java.lang.Class<?>[]
getParameterClasses()
The types of parameter that this algorithm expects.boolean
isValidParameterObject(java.lang.Object o)
Validates if the given Object can be used as a parameter for this algorithm.OBJECT_IDENTIFIER
toOID()
java.lang.String
toString()
Returns a String representation of the algorithm.
-
-
-
Field Detail
-
oidIndex
protected int oidIndex
Index into the SECOidTag array in Algorithm.c.
-
oid
protected OBJECT_IDENTIFIER oid
-
SEC_OID_PKCS1_MD2_WITH_RSA_ENCRYPTION
protected static final int SEC_OID_PKCS1_MD2_WITH_RSA_ENCRYPTION
- See Also:
- Constant Field Values
-
SEC_OID_PKCS1_MD5_WITH_RSA_ENCRYPTION
protected static final int SEC_OID_PKCS1_MD5_WITH_RSA_ENCRYPTION
- See Also:
- Constant Field Values
-
SEC_OID_PKCS1_SHA1_WITH_RSA_ENCRYPTION
protected static final int SEC_OID_PKCS1_SHA1_WITH_RSA_ENCRYPTION
- See Also:
- Constant Field Values
-
SEC_OID_ANSIX9_DSA_SIGNATURE_WITH_SHA1_DIGEST
protected static final int SEC_OID_ANSIX9_DSA_SIGNATURE_WITH_SHA1_DIGEST
- See Also:
- Constant Field Values
-
SEC_OID_PKCS1_RSA_ENCRYPTION
protected static final int SEC_OID_PKCS1_RSA_ENCRYPTION
- See Also:
- Constant Field Values
-
CKM_RSA_PKCS_KEY_PAIR_GEN
protected static final int CKM_RSA_PKCS_KEY_PAIR_GEN
- See Also:
- Constant Field Values
-
CKM_DSA_KEY_PAIR_GEN
protected static final int CKM_DSA_KEY_PAIR_GEN
- See Also:
- Constant Field Values
-
SEC_OID_ANSIX9_DSA_SIGNATURE
protected static final int SEC_OID_ANSIX9_DSA_SIGNATURE
- See Also:
- Constant Field Values
-
SEC_OID_RC4
protected static final int SEC_OID_RC4
- See Also:
- Constant Field Values
-
SEC_OID_DES_ECB
protected static final int SEC_OID_DES_ECB
- See Also:
- Constant Field Values
-
SEC_OID_DES_CBC
protected static final int SEC_OID_DES_CBC
- See Also:
- Constant Field Values
-
CKM_DES_CBC_PAD
protected static final int CKM_DES_CBC_PAD
- See Also:
- Constant Field Values
-
CKM_DES3_ECB
protected static final int CKM_DES3_ECB
- See Also:
- Constant Field Values
-
SEC_OID_DES_EDE3_CBC
protected static final int SEC_OID_DES_EDE3_CBC
- See Also:
- Constant Field Values
-
CKM_DES3_CBC_PAD
protected static final int CKM_DES3_CBC_PAD
- See Also:
- Constant Field Values
-
CKM_DES_KEY_GEN
protected static final int CKM_DES_KEY_GEN
- See Also:
- Constant Field Values
-
CKM_DES3_KEY_GEN
protected static final int CKM_DES3_KEY_GEN
- See Also:
- Constant Field Values
-
CKM_RC4_KEY_GEN
protected static final int CKM_RC4_KEY_GEN
- See Also:
- Constant Field Values
-
SEC_OID_PKCS5_PBE_WITH_MD2_AND_DES_CBC
protected static final int SEC_OID_PKCS5_PBE_WITH_MD2_AND_DES_CBC
- See Also:
- Constant Field Values
-
SEC_OID_PKCS5_PBE_WITH_MD5_AND_DES_CBC
protected static final int SEC_OID_PKCS5_PBE_WITH_MD5_AND_DES_CBC
- See Also:
- Constant Field Values
-
SEC_OID_PKCS5_PBE_WITH_SHA1_AND_DES_CBC
protected static final int SEC_OID_PKCS5_PBE_WITH_SHA1_AND_DES_CBC
- See Also:
- Constant Field Values
-
SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_128_BIT_RC4
protected static final int SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_128_BIT_RC4
- See Also:
- Constant Field Values
-
SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_40_BIT_RC4
protected static final int SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_40_BIT_RC4
- See Also:
- Constant Field Values
-
SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_3KEY_TRIPLE_DES_CBC
protected static final int SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_3KEY_TRIPLE_DES_CBC
- See Also:
- Constant Field Values
-
SEC_OID_MD2
protected static final int SEC_OID_MD2
- See Also:
- Constant Field Values
-
SEC_OID_MD5
protected static final int SEC_OID_MD5
- See Also:
- Constant Field Values
-
SEC_OID_SHA1
protected static final int SEC_OID_SHA1
- See Also:
- Constant Field Values
-
CKM_SHA_1_HMAC
protected static final int CKM_SHA_1_HMAC
- See Also:
- Constant Field Values
-
SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_128_BIT_RC2_CBC
protected static final int SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_128_BIT_RC2_CBC
- See Also:
- Constant Field Values
-
SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_40_BIT_RC2_CBC
protected static final int SEC_OID_PKCS12_V2_PBE_WITH_SHA1_AND_40_BIT_RC2_CBC
- See Also:
- Constant Field Values
-
SEC_OID_RC2_CBC
protected static final int SEC_OID_RC2_CBC
- See Also:
- Constant Field Values
-
CKM_PBA_SHA1_WITH_SHA1_HMAC
protected static final int CKM_PBA_SHA1_WITH_SHA1_HMAC
- See Also:
- Constant Field Values
-
CKM_AES_KEY_GEN
protected static final int CKM_AES_KEY_GEN
- See Also:
- Constant Field Values
-
CKM_AES_ECB
protected static final int CKM_AES_ECB
- See Also:
- Constant Field Values
-
CKM_AES_CBC
protected static final int CKM_AES_CBC
- See Also:
- Constant Field Values
-
CKM_AES_CBC_PAD
protected static final int CKM_AES_CBC_PAD
- See Also:
- Constant Field Values
-
CKM_RC2_CBC_PAD
protected static final int CKM_RC2_CBC_PAD
- See Also:
- Constant Field Values
-
CKM_RC2_KEY_GEN
protected static final int CKM_RC2_KEY_GEN
- See Also:
- Constant Field Values
-
SEC_OID_SHA256
protected static final int SEC_OID_SHA256
- See Also:
- Constant Field Values
-
SEC_OID_SHA384
protected static final int SEC_OID_SHA384
- See Also:
- Constant Field Values
-
SEC_OID_SHA512
protected static final int SEC_OID_SHA512
- See Also:
- Constant Field Values
-
SEC_OID_PKCS1_SHA256_WITH_RSA_ENCRYPTION
protected static final int SEC_OID_PKCS1_SHA256_WITH_RSA_ENCRYPTION
- See Also:
- Constant Field Values
-
SEC_OID_PKCS1_SHA384_WITH_RSA_ENCRYPTION
protected static final int SEC_OID_PKCS1_SHA384_WITH_RSA_ENCRYPTION
- See Also:
- Constant Field Values
-
SEC_OID_PKCS1_SHA512_WITH_RSA_ENCRYPTION
protected static final int SEC_OID_PKCS1_SHA512_WITH_RSA_ENCRYPTION
- See Also:
- Constant Field Values
-
SEC_OID_ANSIX962_EC_PUBLIC_KEY
protected static final int SEC_OID_ANSIX962_EC_PUBLIC_KEY
- See Also:
- Constant Field Values
-
SEC_OID_ANSIX962_ECDSA_SHA1_SIGNATURE
protected static final int SEC_OID_ANSIX962_ECDSA_SHA1_SIGNATURE
- See Also:
- Constant Field Values
-
CKM_EC_KEY_PAIR_GEN
protected static final int CKM_EC_KEY_PAIR_GEN
- See Also:
- Constant Field Values
-
SEC_OID_ANSIX962_ECDSA_SHA256_SIGNATURE
protected static final int SEC_OID_ANSIX962_ECDSA_SHA256_SIGNATURE
- See Also:
- Constant Field Values
-
SEC_OID_ANSIX962_ECDSA_SHA384_SIGNATURE
protected static final int SEC_OID_ANSIX962_ECDSA_SHA384_SIGNATURE
- See Also:
- Constant Field Values
-
SEC_OID_ANSIX962_ECDSA_SHA512_SIGNATURE
protected static final int SEC_OID_ANSIX962_ECDSA_SHA512_SIGNATURE
- See Also:
- Constant Field Values
-
SEC_OID_HMAC_SHA256
protected static final int SEC_OID_HMAC_SHA256
- See Also:
- Constant Field Values
-
SEC_OID_HMAC_SHA384
protected static final int SEC_OID_HMAC_SHA384
- See Also:
- Constant Field Values
-
SEC_OID_HMAC_SHA512
protected static final int SEC_OID_HMAC_SHA512
- See Also:
- Constant Field Values
-
SEC_OID_PKCS5_PBKDF2
protected static final int SEC_OID_PKCS5_PBKDF2
- See Also:
- Constant Field Values
-
SEC_OID_PKCS5_PBES2
protected static final int SEC_OID_PKCS5_PBES2
- See Also:
- Constant Field Values
-
SEC_OID_PKCS5_PBMAC1
protected static final int SEC_OID_PKCS5_PBMAC1
- See Also:
- Constant Field Values
-
SEC_OID_ANSIX962_ECDSA_SIGNATURE_SPECIFIED_DIGEST
protected static final int SEC_OID_ANSIX962_ECDSA_SIGNATURE_SPECIFIED_DIGEST
- See Also:
- Constant Field Values
-
CKM_NSS_AES_KEY_WRAP
protected static final int CKM_NSS_AES_KEY_WRAP
- See Also:
- Constant Field Values
-
CKM_NSS_AES_KEY_WRAP_PAD
protected static final int CKM_NSS_AES_KEY_WRAP_PAD
- See Also:
- Constant Field Values
-
SEC_OID_AES_128_ECB
protected static final int SEC_OID_AES_128_ECB
- See Also:
- Constant Field Values
-
SEC_OID_AES_128_CBC
protected static final int SEC_OID_AES_128_CBC
- See Also:
- Constant Field Values
-
SEC_OID_AES_192_ECB
protected static final int SEC_OID_AES_192_ECB
- See Also:
- Constant Field Values
-
SEC_OID_AES_192_CBC
protected static final int SEC_OID_AES_192_CBC
- See Also:
- Constant Field Values
-
SEC_OID_AES_256_ECB
protected static final int SEC_OID_AES_256_ECB
- See Also:
- Constant Field Values
-
SEC_OID_AES_256_CBC
protected static final int SEC_OID_AES_256_CBC
- See Also:
- Constant Field Values
-
CKM_AES_KEY_WRAP
protected static final int CKM_AES_KEY_WRAP
- See Also:
- Constant Field Values
-
CKM_AES_KEY_WRAP_PAD
protected static final int CKM_AES_KEY_WRAP_PAD
- See Also:
- Constant Field Values
-
CKM_SHA256_HMAC
protected static final int CKM_SHA256_HMAC
- See Also:
- Constant Field Values
-
CKM_SHA384_HMAC
protected static final int CKM_SHA384_HMAC
- See Also:
- Constant Field Values
-
CKM_SHA512_HMAC
protected static final int CKM_SHA512_HMAC
- See Also:
- Constant Field Values
-
CKM_AES_CMAC
protected static final int CKM_AES_CMAC
- See Also:
- Constant Field Values
-
CKM_GENERIC_SECRET_KEY_GEN
protected static final int CKM_GENERIC_SECRET_KEY_GEN
- See Also:
- Constant Field Values
-
CKM_SP800_108_COUNTER_KDF
protected static final int CKM_SP800_108_COUNTER_KDF
- See Also:
- Constant Field Values
-
CKM_SP800_108_FEEDBACK_KDF
protected static final int CKM_SP800_108_FEEDBACK_KDF
- See Also:
- Constant Field Values
-
CKM_SP800_108_DOUBLE_PIPELINE_KDF
protected static final int CKM_SP800_108_DOUBLE_PIPELINE_KDF
- See Also:
- Constant Field Values
-
CKM_NSS_SP800_108_COUNTER_KDF_DERIVE_DATA
protected static final int CKM_NSS_SP800_108_COUNTER_KDF_DERIVE_DATA
- See Also:
- Constant Field Values
-
CKM_NSS_SP800_108_FEEDBACK_KDF_DERIVE_DATA
protected static final int CKM_NSS_SP800_108_FEEDBACK_KDF_DERIVE_DATA
- See Also:
- Constant Field Values
-
CKM_NSS_SP800_108_DOUBLE_PIPELINE_KDF_DERIVE_DATA
protected static final int CKM_NSS_SP800_108_DOUBLE_PIPELINE_KDF_DERIVE_DATA
- See Also:
- Constant Field Values
-
SEC_OID_PKCS1_RSA_PSS_SIGNATURE
protected static final int SEC_OID_PKCS1_RSA_PSS_SIGNATURE
- See Also:
- Constant Field Values
-
CKM_RSA_PKCS_OAEP
protected static final int CKM_RSA_PKCS_OAEP
- See Also:
- Constant Field Values
-
CKM_AES_KEY_WRAP_KWP
protected static final int CKM_AES_KEY_WRAP_KWP
- See Also:
- Constant Field Values
-
SEC_OID_AES_128_KEY_WRAP_KWP
protected static final int SEC_OID_AES_128_KEY_WRAP_KWP
- See Also:
- Constant Field Values
-
SEC_OID_AES_192_KEY_WRAP_KWP
protected static final int SEC_OID_AES_192_KEY_WRAP_KWP
- See Also:
- Constant Field Values
-
SEC_OID_AES_256_KEY_WRAP_KWP
protected static final int SEC_OID_AES_256_KEY_WRAP_KWP
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Algorithm
protected Algorithm(int oidIndex, java.lang.String name)
- Parameters:
oidIndex
- Index of the oid that this algorithm represents.name
- A String representation of the Algorithm.
-
Algorithm
protected Algorithm(int oidIndex, java.lang.String name, OBJECT_IDENTIFIER oid)
- Parameters:
oidIndex
- Index of the oid that this algorithm represents.name
- A String representation of the Algorithm.oid
- The object identifier for this Algorithm.
-
Algorithm
protected Algorithm(int oidIndex, java.lang.String name, OBJECT_IDENTIFIER oid, java.lang.Class<?> paramClass)
-
Algorithm
protected Algorithm(int oidIndex, java.lang.String name, OBJECT_IDENTIFIER oid, java.lang.Class<?>[] paramClasses)
-
-
Method Detail
-
toString
public java.lang.String toString()
Returns a String representation of the algorithm.- Overrides:
toString
in classjava.lang.Object
-
toOID
public OBJECT_IDENTIFIER toOID() throws java.security.NoSuchAlgorithmException
- Returns:
- The object identifier for this algorithm.
- Throws:
java.security.NoSuchAlgorithmException
- If no OID is registered for this algorithm.
-
getParameterClass
@Deprecated public java.lang.Class<?> getParameterClass()
Deprecated.CallgetParameterClasses()
instead.The type of parameter that this algorithm expects. Returnsnull
if this algorithm does not take any parameters. If the algorithm can accept more than one type of parameter, this method returns only one of them. It is better to callgetParameterClasses()
.- Returns:
- Parameter type.
-
getParameterClasses
public java.lang.Class<?>[] getParameterClasses()
The types of parameter that this algorithm expects. Returnsnull
if this algorithm does not take any parameters.- Returns:
- Parameter types.
-
isValidParameterObject
public boolean isValidParameterObject(java.lang.Object o)
Validates if the given Object can be used as a parameter for this algorithm.If
null
is passed in, this method will return true if this algorithm takes no parameters, and false if this algorithm does take parameters.- Parameters:
o
- Object.- Returns:
- Returns
true
if the given Object can be used as a parameter.
-
getEnum
public PKCS11Algorithm getEnum()
-
-