java.security.interfaces

Provides interfaces for generating RSA (Rivest, Shamir and Adleman AsymmetricCipher algorithm) keys as defined in the RSA Laboratory Technical Note PKCS#1, and DSA (Digital Signature Algorithm) keys as defined in NIST's FIPS-186.

Note that these interfaces are intended only for key implementations whose key material is accessible and available. These interfaces are not intended for key implementations whose key material resides in inaccessible, protected storage (such as in a hardware device).

For more developer information on how to use these interfaces, including information on how to design Key classes for hardware devices, please refer to these cryptographic provider developer guides:

Package Specification

  • PKCS #1: RSA Encryption Standard, Version 1.5, November 1993
  • Federal Information Processing Standards Publication (FIPS PUB) 186: Digital Signature Standard (DSS)

Related Documentation

For further documentation, please see:

Interfaces

DSAKey The interface to a DSA public or private key. 
DSAParams Interface to a DSA-specific set of key parameters, which defines a DSA key family
DSAPrivateKey The standard interface to a DSA private key. 
DSAPublicKey The interface to a DSA public key. 
ECKey The interface to an elliptic curve (EC) key. 
ECPrivateKey The interface to an elliptic curve (EC) private key. 
ECPublicKey The interface to an elliptic curve (EC) public key. 
RSAKey The interface to an RSA public or private key. 
RSAMultiPrimePrivateCrtKey The interface to an RSA multi-prime private key, as defined in the PKCS#1 v2.1, using the Chinese Remainder Theorem (CRT) information values. 
RSAPrivateCrtKey The interface to an RSA private key, as defined in the PKCS#1 standard, using the Chinese Remainder Theorem (CRT) information values. 
RSAPrivateKey The interface to an RSA private key. 
RSAPublicKey The interface to an RSA public key.