# Uses of Interface
java.security.PrivateKey

Packages that use PrivateKey
Package
Description
java.security
Provides the classes and interfaces for the security framework.
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.
javax.crypto
Provides the classes and interfaces for cryptographic operations.
javax.crypto.interfaces
Provides interfaces for Diffie-Hellman keys as defined in RSA Laboratories' PKCS #3.
javax.net.ssl
Provides classes for the secure socket package.
javax.security.auth.x500
This package contains the classes that should be used to store X500 Principal and X500 Private Credentials in a Subject.
jdk.security.jarsigner
This package defines APIs for signing jar files.

- ## Uses of PrivateKey in java.security

  Methods in java.security that return PrivateKey
  Modifier and Type
  Method
  Description
  `protected abstract PrivateKey`
  KeyFactorySpi.`engineGeneratePrivate(KeySpec keySpec)`
  Generates a private key object from the provided key specification (key material).
  `final PrivateKey`
  KeyFactory.`generatePrivate(KeySpec keySpec)`
  Generates a private key object from the provided key specification (key material).
  `PrivateKey`
  KeyPair.`getPrivate()`
  Returns a reference to the private key component of this key pair.
  `PrivateKey`
  KeyStore.PrivateKeyEntry.`getPrivateKey()`
  Gets the `PrivateKey` from this entry.
  `PrivateKey`
  Signer.`getPrivateKey()`
  Deprecated, for removal: This API element is subject to removal in a future version.
  Returns this signer's private key.
  Methods in java.security with parameters of type PrivateKey
  Modifier and Type
  Method
  Description
  `protected abstract void`
  SignatureSpi.`engineInitSign(PrivateKey privateKey)`
  Initializes this `Signature` object with the specified private key for signing operations.
  `protected void`
  SignatureSpi.`engineInitSign(PrivateKey privateKey, SecureRandom random)`
  Initializes this `Signature` object with the specified private key and source of randomness for signing operations.
  `final void`
  Signature.`initSign(PrivateKey privateKey)`
  Initialize this object for signing.
  `final void`
  Signature.`initSign(PrivateKey privateKey, SecureRandom random)`
  Initialize this object for signing.
  Constructors in java.security with parameters of type PrivateKey
  Modifier
  Constructor
  Description
  ``
  `KeyPair(PublicKey publicKey, PrivateKey privateKey)`
  Constructs a key pair from the given public key and private key.
  ``
  `PrivateKeyEntry(PrivateKey privateKey, Certificate[] chain)`
  Constructs a `PrivateKeyEntry` with a `PrivateKey` and corresponding certificate chain.
  ``
  `PrivateKeyEntry(PrivateKey privateKey, Certificate[] chain, Set<KeyStore.Entry.Attribute> attributes)`
  Constructs a `PrivateKeyEntry` with a `PrivateKey` and corresponding certificate chain and associated entry attributes.
  ``
  `SignedObject(Serializable object, PrivateKey signingKey, Signature signingEngine)`
  Constructs a `SignedObject` from any Serializable object.

- ## Uses of PrivateKey in java.security.interfaces

  Subinterfaces of PrivateKey in java.security.interfaces
  Modifier and Type
  Interface
  Description
  `interface`
  `DSAPrivateKey`
  The standard interface to a DSA private key.
  `interface`
  `ECPrivateKey`
  The interface to an elliptic curve (EC) private key.
  `interface`
  `EdECPrivateKey`
  An interface for an elliptic curve private key as defined by RFC 8032: Edwards-Curve Digital Signature Algorithm (EdDSA).
  `interface`
  `RSAMultiPrimePrivateCrtKey`
  The interface to an RSA multi-prime private key, as defined in the PKCS#1 v2.2 standard, using the Chinese Remainder Theorem (CRT) information values.
  `interface`
  `RSAPrivateCrtKey`
  The interface to an RSA private key, as defined in the PKCS#1 v2.2 standard, using the Chinese Remainder Theorem (CRT) information values.
  `interface`
  `RSAPrivateKey`
  The interface to an RSA private key.
  `interface`
  `XECPrivateKey`
  An interface for an elliptic curve private key as defined by RFC 7748.

- ## Uses of PrivateKey in javax.crypto

  Methods in javax.crypto that return PrivateKey
  Modifier and Type
  Method
  Description
  `PrivateKey`
  EncryptedPrivateKeyInfo.`getKey(char[] password)`
  Preview.
  Extract the enclosed `PrivateKey` object from the encrypted data and return it.
  `PrivateKey`
  EncryptedPrivateKeyInfo.`getKey(Key decryptKey, Provider provider)`
  Preview.
  Extract the enclosed `PrivateKey` object from the encrypted data and return it.
  Methods in javax.crypto with parameters of type PrivateKey
  Modifier and Type
  Method
  Description
  `static EncryptedPrivateKeyInfo`
  EncryptedPrivateKeyInfo.`encryptKey(PrivateKey key, char[] password)`
  Preview.
  Creates and encrypts an `EncryptedPrivateKeyInfo` from a given `PrivateKey` and password.
  `static EncryptedPrivateKeyInfo`
  EncryptedPrivateKeyInfo.`encryptKey(PrivateKey key, char[] password, String algorithm, AlgorithmParameterSpec params, Provider provider)`
  Preview.
  Creates and encrypts an `EncryptedPrivateKeyInfo` from a given `PrivateKey`.
  `static EncryptedPrivateKeyInfo`
  EncryptedPrivateKeyInfo.`encryptKey(PrivateKey key, Key encKey, String algorithm, AlgorithmParameterSpec params, Provider provider, SecureRandom random)`
  Preview.
  Creates and encrypts an `EncryptedPrivateKeyInfo` from the given `PrivateKey` using the `encKey` and given parameters.
  `KEMSpi.DecapsulatorSpi`
  KEMSpi.`engineNewDecapsulator(PrivateKey privateKey, AlgorithmParameterSpec spec)`
  Creates a KEM decapsulator on the KEM receiver side.
  `KEM.Decapsulator`
  KEM.`newDecapsulator(PrivateKey privateKey)`
  Creates a KEM decapsulator on the KEM receiver side.
  `KEM.Decapsulator`
  KEM.`newDecapsulator(PrivateKey privateKey, AlgorithmParameterSpec spec)`
  Creates a KEM decapsulator on the KEM receiver side.

- ## Uses of PrivateKey in javax.crypto.interfaces

  Subinterfaces of PrivateKey in javax.crypto.interfaces
  Modifier and Type
  Interface
  Description
  `interface`
  `DHPrivateKey`
  The interface to a Diffie-Hellman private key.

- ## Uses of PrivateKey in javax.net.ssl

  Methods in javax.net.ssl that return PrivateKey
  Modifier and Type
  Method
  Description
  `PrivateKey`
  X509KeyManager.`getPrivateKey(String alias)`
  Returns the key associated with the given alias.

- ## Uses of PrivateKey in javax.security.auth.x500

  Methods in javax.security.auth.x500 that return PrivateKey
  Modifier and Type
  Method
  Description
  `PrivateKey`
  X500PrivateCredential.`getPrivateKey()`
  Returns the PrivateKey.
  Constructors in javax.security.auth.x500 with parameters of type PrivateKey
  Modifier
  Constructor
  Description
  ``
  `X500PrivateCredential(X509Certificate cert, PrivateKey key)`
  Creates an X500PrivateCredential that associates an X.509 certificate, a private key and the KeyStore alias.
  ``
  `X500PrivateCredential(X509Certificate cert, PrivateKey key, String alias)`
  Creates an X500PrivateCredential that associates an X.509 certificate, a private key and the KeyStore alias.

- ## Uses of PrivateKey in jdk.security.jarsigner

  Methods in jdk.security.jarsigner with parameters of type PrivateKey
  Modifier and Type
  Method
  Description
  `static String`
  JarSigner.Builder.`getDefaultSignatureAlgorithm(PrivateKey key)`
  Gets the default signature algorithm for a private key.
  Constructors in jdk.security.jarsigner with parameters of type PrivateKey
  Modifier
  Constructor
  Description
  ``
  `Builder(PrivateKey privateKey, CertPath certPath)`
  Creates a `JarSigner.Builder` object with a private key and a certification path.