org.mozilla.jss.crypto

Interface CryptoStore

Known Implementing Classes:
PK11Store

public interface CryptoStore

This is an interface for a permanent repository of cryptographic objects, such as keys, certs, and passwords.

Method Summary

void
deleteCert(X509Certificate cert)
Deletes a certificate from a token.
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.

Method Details

deleteCert

public void deleteCert(X509Certificate cert)
            throws NoSuchItemOnTokenException,
                   TokenException
Deletes a certificate from a token.
Parameters:
cert - A certificate to be deleted from this token. The cert must actually reside on this token.
Throws:
NoSuchItemOnTokenException - If the given cert does not reside on this token.
TokenException - If an error occurred on the token while deleting the certificate.

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.
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.
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)

getPrivateKeys

public PrivateKey[] getPrivateKeys()
            throws TokenException
Returns all private keys stored on this token.
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.
Parameters:
key - The private key.
Throws:
TokenException - If the key cannot be imported to this token.
KeyAlreadyImportedException - If the key already exists on this token.