Package org.mozilla.jss.pkcs11
Class PK11PrivKey
- java.lang.Object
-
- org.mozilla.jss.pkcs11.PK11PrivKey
-
- All Implemented Interfaces:
java.io.Serializable
,java.security.Key
,java.security.PrivateKey
,javax.security.auth.Destroyable
,PrivateKey
public class PK11PrivKey extends java.lang.Object implements PrivateKey
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.mozilla.jss.crypto.PrivateKey
PrivateKey.Type
-
-
Field Summary
Fields Modifier and Type Field Description protected org.mozilla.jss.pkcs11.KeyProxy
keyProxy
-
Fields inherited from interface org.mozilla.jss.crypto.PrivateKey
DiffieHellman, DSA, EC, RSA
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
PK11PrivKey(byte[] pointer)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static PK11PrivKey
fromPrivateKeyInfo(byte[] pki, CryptoToken token)
Imports a PrivateKeyInfo, storing it as a temporary PrivateKey on the given token.static PK11PrivKey
fromPrivateKeyInfo(byte[] pki, CryptoToken token, byte[] publicValue)
Imports a PrivateKeyInfo, storing it as a temporary PrivateKey on the given token.static PK11PrivKey
fromPrivateKeyInfo(java.security.spec.PKCS8EncodedKeySpec spec, CryptoToken token)
Imports a PrivateKeyInfo, storing it as a temporary PrivateKey on the given token.java.lang.String
getAlgorithm()
protected java.security.spec.DSAParameterSpec
getDSAParams()
byte[]
getEncoded()
Subclasses that support encoding can overload this method.java.lang.String
getFormat()
Subclasses that support encoding can overload this method.KeyType
getKeyType()
CryptoToken
getOwningToken()
Returns a new CryptoToken where this key resides.int
getStrength()
Returns the size in bits of the modulus of an RSA Private key.PrivateKey.Type
getType()
Returns the type (RSA or DSA) of this private key.byte[]
getUniqueID()
Returns the unique ID of this key.void
verifyKeyIsOnToken(PK11Token token)
Make sure this key lives on the given token.
-
-
-
Method Detail
-
verifyKeyIsOnToken
public void verifyKeyIsOnToken(PK11Token token) throws NoSuchItemOnTokenException
Make sure this key lives on the given token.- Throws:
NoSuchItemOnTokenException
-
getOwningToken
public CryptoToken getOwningToken()
Returns a new CryptoToken where this key resides.- Specified by:
getOwningToken
in interfacePrivateKey
- Returns:
- The PK11Token that owns this key.
-
getUniqueID
public byte[] getUniqueID() throws TokenException
Description copied from interface:PrivateKey
Returns the unique ID of this key. Unique IDs can be used to match certificates to keys.- Specified by:
getUniqueID
in interfacePrivateKey
- Throws:
TokenException
- See Also:
TokenCertificate.getUniqueID()
-
getKeyType
public KeyType getKeyType()
-
getType
public PrivateKey.Type getType()
Description copied from interface:PrivateKey
Returns the type (RSA or DSA) of this private key.- Specified by:
getType
in interfacePrivateKey
-
getAlgorithm
public java.lang.String getAlgorithm()
- Specified by:
getAlgorithm
in interfacejava.security.Key
-
getStrength
public int getStrength()
Returns the size in bits of the modulus of an RSA Private key. Returns -1 for other types of keys.- Specified by:
getStrength
in interfacePrivateKey
-
fromPrivateKeyInfo
public static PK11PrivKey fromPrivateKeyInfo(java.security.spec.PKCS8EncodedKeySpec spec, CryptoToken token) throws TokenException
Imports a PrivateKeyInfo, storing it as a temporary PrivateKey on the given token. The key will be a temporary (session) key until it is imported into a KeyStore, at which point it will be made a permanent (token) object.- Throws:
TokenException
-
fromPrivateKeyInfo
public static PK11PrivKey fromPrivateKeyInfo(byte[] pki, CryptoToken token) throws TokenException
Imports a PrivateKeyInfo, storing it as a temporary PrivateKey on the given token. The key will be a temporary (session) key until it is imported into a KeyStore, at which point it will be made a permanent (token) object.- Throws:
TokenException
-
fromPrivateKeyInfo
public static PK11PrivKey fromPrivateKeyInfo(byte[] pki, CryptoToken token, byte[] publicValue) throws TokenException
Imports a PrivateKeyInfo, storing it as a temporary PrivateKey on the given token. The key will be a temporary (session) key until it is imported into a KeyStore, at which point it will be made a permanent (token) object.- Parameters:
publicValue
- An encoding of the public key, as used by the NSS pk11wrap code. Don't use this unless you know what you're doing.- Throws:
TokenException
-
getDSAParams
protected java.security.spec.DSAParameterSpec getDSAParams() throws TokenException
- Throws:
TokenException
-
getEncoded
public byte[] getEncoded()
Subclasses that support encoding can overload this method.
-
getFormat
public java.lang.String getFormat()
Subclasses that support encoding can overload this method.
-
-