org.mozilla.jss.pkcs11

Class PK11SymKey

Implemented Interfaces:
SymmetricKey

public final class PK11SymKey
extends java.lang.Object
implements SymmetricKey

Fields inherited from interface org.mozilla.jss.crypto.SymmetricKey

AES, DES, DES3, RC2, RC4, SHA1_HMAC

Constructor Summary

PK11SymKey(byte[] pointer)

Method Summary

String
getAlgorithm()
byte[]
getEncoded()
String
getFormat()
byte[]
getKeyData()
KeyType
getKeyType()
int
getLength()
Returns the length of the key in bytes, as returned by PK11_GetKeyLength().
CryptoToken
getOwningToken()
int
getStrength()
Returns key strength, measured as the number of bits of secret material.
SymmetricKey.Type
getType()

Constructor Details

PK11SymKey

protected PK11SymKey(byte[] pointer)

Method Details

getAlgorithm

public String getAlgorithm()
Specified by:
getAlgorithm in interface SymmetricKey

getEncoded

public byte[] getEncoded()
Specified by:
getEncoded in interface SymmetricKey

getFormat

public String getFormat()
Specified by:
getFormat in interface SymmetricKey

getKeyData

public byte[] getKeyData()
            throws SymmetricKey.NotExtractableException
Specified by:
getKeyData in interface SymmetricKey

getKeyType

public KeyType getKeyType()

getLength

public int getLength()
Returns the length of the key in bytes, as returned by PK11_GetKeyLength().
Specified by:
getLength in interface SymmetricKey

getOwningToken

public CryptoToken getOwningToken()
Specified by:
getOwningToken in interface SymmetricKey

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 interface SymmetricKey

getType

public SymmetricKey.Type getType()
Specified by:
getType in interface SymmetricKey