org.mozilla.jss.crypto
Class EncryptionAlgorithm
java.lang.Object
org.mozilla.jss.crypto.Algorithm
org.mozilla.jss.crypto.EncryptionAlgorithm
public class EncryptionAlgorithm
- extends Algorithm
An algorithm for performing symmetric encryption.
Fields inherited from class org.mozilla.jss.crypto.Algorithm |
CKM_AES_CBC, CKM_AES_CBC_PAD, CKM_AES_ECB, CKM_AES_KEY_GEN, 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_PBA_SHA1_WITH_SHA1_HMAC, CKM_RC2_CBC_PAD, CKM_RC2_KEY_GEN, CKM_RC4_KEY_GEN, CKM_RSA_PKCS_KEY_PAIR_GEN, CKM_SHA_1_HMAC, oid, oidIndex, 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_DES_CBC, SEC_OID_DES_ECB, SEC_OID_DES_EDE3_CBC, 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_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_RC2_CBC, SEC_OID_RC4, SEC_OID_SHA1, SEC_OID_SHA256, SEC_OID_SHA384, SEC_OID_SHA512 |
Constructor Summary |
protected |
EncryptionAlgorithm(int oidTag,
EncryptionAlgorithm.Alg alg,
EncryptionAlgorithm.Mode mode,
EncryptionAlgorithm.Padding padding,
java.lang.Class[] paramClasses,
int blockSize,
OBJECT_IDENTIFIER oid,
int keyStrength)
|
protected |
EncryptionAlgorithm(int oidTag,
EncryptionAlgorithm.Alg alg,
EncryptionAlgorithm.Mode mode,
EncryptionAlgorithm.Padding padding,
java.lang.Class paramClass,
int blockSize,
OBJECT_IDENTIFIER oid,
int keyStrength)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
RC4
public static final EncryptionAlgorithm RC4
DES_ECB
public static final EncryptionAlgorithm DES_ECB
DES_CBC
public static final EncryptionAlgorithm DES_CBC
DES_CBC_PAD
public static final EncryptionAlgorithm DES_CBC_PAD
DES3_ECB
public static final EncryptionAlgorithm DES3_ECB
DES3_CBC
public static final EncryptionAlgorithm DES3_CBC
DES3_CBC_PAD
public static final EncryptionAlgorithm DES3_CBC_PAD
RC2_CBC
public static final EncryptionAlgorithm RC2_CBC
RC2_CBC_PAD
public static final EncryptionAlgorithm RC2_CBC_PAD
AES_ROOT_OID
public static final OBJECT_IDENTIFIER AES_ROOT_OID
AES_128_ECB
public static final EncryptionAlgorithm AES_128_ECB
AES_128_CBC
public static final EncryptionAlgorithm AES_128_CBC
AES_128_CBC_PAD
public static final EncryptionAlgorithm AES_128_CBC_PAD
AES_192_ECB
public static final EncryptionAlgorithm AES_192_ECB
AES_192_CBC
public static final EncryptionAlgorithm AES_192_CBC
AES_192_CBC_PAD
public static final EncryptionAlgorithm AES_192_CBC_PAD
AES_256_ECB
public static final EncryptionAlgorithm AES_256_ECB
AES_256_CBC
public static final EncryptionAlgorithm AES_256_CBC
AES_CBC_PAD
public static final EncryptionAlgorithm AES_CBC_PAD
AES_256_CBC_PAD
public static final EncryptionAlgorithm AES_256_CBC_PAD
EncryptionAlgorithm
protected EncryptionAlgorithm(int oidTag,
EncryptionAlgorithm.Alg alg,
EncryptionAlgorithm.Mode mode,
EncryptionAlgorithm.Padding padding,
java.lang.Class paramClass,
int blockSize,
OBJECT_IDENTIFIER oid,
int keyStrength)
EncryptionAlgorithm
protected EncryptionAlgorithm(int oidTag,
EncryptionAlgorithm.Alg alg,
EncryptionAlgorithm.Mode mode,
EncryptionAlgorithm.Padding padding,
java.lang.Class[] paramClasses,
int blockSize,
OBJECT_IDENTIFIER oid,
int keyStrength)
getAlg
public EncryptionAlgorithm.Alg getAlg()
- Returns the base algorithm, without the parameters. For example,
the base algorithm of "AES/CBC/NoPadding" is "AES".
getMode
public EncryptionAlgorithm.Mode getMode()
- Returns the mode of this algorithm.
getPadding
public EncryptionAlgorithm.Padding getPadding()
- Returns the padding type of this algorithm.
getKeyStrength
public int getKeyStrength()
- Returns the key strength of this algorithm in bits. Algorithms that
use continuously variable key sizes (such as RC4) will return 0 to
indicate they can use any key size.
fromOID
public static EncryptionAlgorithm fromOID(OBJECT_IDENTIFIER oid)
throws java.security.NoSuchAlgorithmException
- Throws:
java.security.NoSuchAlgorithmException
fromString
public static EncryptionAlgorithm fromString(java.lang.String name)
throws java.security.NoSuchAlgorithmException
- Deprecated. This method is deprecated because algorithm strings
don't contain key length, which is necessary to distinguish between
AES algorithms.
- Throws:
java.security.NoSuchAlgorithmException
lookup
public static EncryptionAlgorithm lookup(java.lang.String algName,
java.lang.String modeName,
java.lang.String paddingName,
int keyStrength)
throws java.security.NoSuchAlgorithmException
- Throws:
java.security.NoSuchAlgorithmException
getBlockSize
public int getBlockSize()
- The blocksize of the algorithm in bytes. Stream algorithms (such as
RC4) have a blocksize of 1.
isPadded
public boolean isPadded()
- Deprecated. Call getPaddingType() instead.
- Returns
true
if this algorithm performs padding.
getPaddingType
public EncryptionAlgorithm.Padding getPaddingType()
- Returns the type of padding for this algorithm.
getIVLength
public int getIVLength()
- Returns the number of bytes that this algorithm expects in
its initialization vector.
- Returns:
- The size in bytes of the IV for this algorithm. A size of
0 means this algorithm does not take an IV.