org.mozilla.jss.pkcs11

Class PK11Store

Implemented Interfaces:
CryptoStore

public final class PK11Store
extends java.lang.Object
implements CryptoStore

Field Summary

protected TokenProxy
storeProxy
protected boolean
updated

Constructor Summary

PK11Store()
PK11Store(TokenProxy proxy)

Method Summary

void
deleteCert(X509Certificate cert)
Deletes the specified certificate and its associated private key from the store.
void
deleteCertOnly(X509Certificate cert)
Deletes the specified certificate from the store.
void
deletePrivateKey(PrivateKey key)
Deletes the given PrivateKey from the CryptoToken.
X509Certificate[]
getCertificates()
Returns all user certificates stored on this token.
byte[]
getEncryptedPrivateKeyInfo(X509Certificate cert, PBEAlgorithm pbeAlg, Password pw, int iteration)
PrivateKey[]
getPrivateKeys()
Returns all private keys stored on this token.
void
importPrivateKey(byte[] key, PrivateKey.Type type)
Imports a raw private key into this token.
protected void
putCertsInVector(Vector certs)
protected void
putKeysInVector(Vector keys)

Field Details

storeProxy

protected TokenProxy storeProxy

updated

protected boolean updated

Constructor Details

PK11Store

protected PK11Store()

PK11Store

public PK11Store(TokenProxy proxy)

Method Details

deleteCert

public void deleteCert(X509Certificate cert)
            throws NoSuchItemOnTokenException,
                   TokenException
Deletes the specified certificate and its associated private key from the store.
Specified by:
deleteCert in interface CryptoStore
Parameters:
cert - certificate to be deleted
Throws:
NoSuchItemOnTokenException - If the certificate not found
TokenException - General token error

deleteCertOnly

public void deleteCertOnly(X509Certificate cert)
            throws NoSuchItemOnTokenException,
                   TokenException
Deletes the specified certificate from the store.
Parameters:
cert - certificate to be deleted
Throws:
NoSuchItemOnTokenException - If the certificate not found
TokenException - General token error

deletePrivateKey

public void deletePrivateKey(PrivateKey key)
            throws NoSuchItemOnTokenException,
                   TokenException
Deletes the given PrivateKey from the CryptoToken. This is a very dangerous call: it deletes the key from the underlying token. After calling this, the PrivateKey passed in must no longer be used, or a TokenException will occur.
Specified by:
deletePrivateKey in interface CryptoStore
Parameters:
key - A PrivateKey to be permanently deleted. It must reside on this token.
Throws:
NoSuchItemOnTokenException - If the given privae key does not reside on this token.
TokenException - If an error occurs on the token while deleting the key.

getCertificates

public X509Certificate[] getCertificates()
            throws TokenException
Returns all user certificates stored on this token. A user certificate is one that has a matching private key.
Specified by:
getCertificates in interface CryptoStore
Returns:
An array of all user certificates present on this token.
Throws:
TokenException - If an error occurs on the token while gathering the certificates.

getEncryptedPrivateKeyInfo

public byte[] getEncryptedPrivateKeyInfo(X509Certificate cert,
                                         PBEAlgorithm pbeAlg,
                                         Password pw,
                                         int iteration)
Specified by:
getEncryptedPrivateKeyInfo in interface CryptoStore

getPrivateKeys

public PrivateKey[] getPrivateKeys()
            throws TokenException
Returns all private keys stored on this token.
Specified by:
getPrivateKeys in interface CryptoStore
Returns:
An array of all private keys stored on this token.
Throws:
TokenException - If an error occurs on the token while gathering the keys.

importPrivateKey

public void importPrivateKey(byte[] key,
                             PrivateKey.Type type)
            throws TokenException,
                   KeyAlreadyImportedException
Imports a raw private key into this token.
Specified by:
importPrivateKey in interface CryptoStore
Parameters:
key - The private key.
Throws:
TokenException - If the key cannot be imported to this token.
KeyAlreadyImportedException - If the key already on this token.

putCertsInVector

protected void putCertsInVector(Vector certs)
            throws TokenException

putKeysInVector

protected void putKeysInVector(Vector keys)
            throws TokenException