Package org.mozilla.jss.pkcs11
Class PK11SymKey
- java.lang.Object
-
- org.mozilla.jss.pkcs11.PK11SymKey
-
- All Implemented Interfaces:
java.io.Serializable
,java.security.Key
,javax.crypto.SecretKey
,javax.security.auth.Destroyable
,SymmetricKey
public final class PK11SymKey extends java.lang.Object implements SymmetricKey
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.mozilla.jss.crypto.SymmetricKey
SymmetricKey.NotExtractableException, SymmetricKey.Type, SymmetricKey.Usage
-
-
Field Summary
-
Fields inherited from interface org.mozilla.jss.crypto.SymmetricKey
AES, DES, DES3, GENERIC_SECRET, RC2, RC4, SHA1_HMAC, SHA256_HMAC, SHA384_HMAC, SHA512_HMAC
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
PK11SymKey(byte[] pointer)
protected
PK11SymKey(byte[] pointer, java.lang.String nickName)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
getAlgorithm()
byte[]
getEncoded()
java.lang.String
getFormat()
byte[]
getKeyData()
KeyType
getKeyType()
int
getLength()
Returns the length of the key in bytes, as returned by PK11_GetKeyLength().java.lang.String
getNickName()
CryptoToken
getOwningToken()
int
getStrength()
Returns key strength, measured as the number of bits of secret material.SymmetricKey.Type
getType()
void
setNickName(java.lang.String nickName)
void
setNickNameNative(java.lang.String nickName)
-
-
-
Method Detail
-
getType
public SymmetricKey.Type getType()
- Specified by:
getType
in interfaceSymmetricKey
-
getOwningToken
public CryptoToken getOwningToken()
- Specified by:
getOwningToken
in interfaceSymmetricKey
-
getStrength
public int getStrength()
Returns key strength, measured as the number of bits of secret material. NOTE: Due to a bug in the security library (333440), this may return a wrong answer for PBE keys that have embedded parity (like DES). A DES key is 56 bits of information plus 8 bits of parity, so it takes up 64 bits. For a normal DES key, this method will correctly return 56, but for a PBE-generated DES key, the security library bug causes it to return 64.- Specified by:
getStrength
in interfaceSymmetricKey
-
getLength
public int getLength()
Returns the length of the key in bytes, as returned by PK11_GetKeyLength().- Specified by:
getLength
in interfaceSymmetricKey
-
getKeyData
public byte[] getKeyData() throws SymmetricKey.NotExtractableException
- Specified by:
getKeyData
in interfaceSymmetricKey
- Throws:
SymmetricKey.NotExtractableException
-
getKeyType
public KeyType getKeyType()
-
getAlgorithm
public java.lang.String getAlgorithm()
- Specified by:
getAlgorithm
in interfacejava.security.Key
- Specified by:
getAlgorithm
in interfaceSymmetricKey
-
getEncoded
public byte[] getEncoded()
- Specified by:
getEncoded
in interfacejava.security.Key
- Specified by:
getEncoded
in interfaceSymmetricKey
-
getFormat
public java.lang.String getFormat()
- Specified by:
getFormat
in interfacejava.security.Key
- Specified by:
getFormat
in interfaceSymmetricKey
-
getNickName
public java.lang.String getNickName()
- Specified by:
getNickName
in interfaceSymmetricKey
-
setNickName
public void setNickName(java.lang.String nickName)
- Specified by:
setNickName
in interfaceSymmetricKey
-
setNickNameNative
public void setNickNameNative(java.lang.String nickName)
-
-