Module java.base
Package java.security

Class KeyStore.PrivateKeyEntry

java.lang.Object
java.security.KeyStore.PrivateKeyEntry
All Implemented Interfaces:
KeyStore.Entry
Enclosing class:
KeyStore

public static final class KeyStore.PrivateKeyEntry
extends Object
implements KeyStore.Entry
A KeyStore entry that holds a PrivateKey and corresponding certificate chain.
Since:
1.5
  • Constructor Details

    • PrivateKeyEntry

      public PrivateKeyEntry​(PrivateKey privateKey, Certificate[] chain)
      Constructs a PrivateKeyEntry with a PrivateKey and corresponding certificate chain.

      The specified chain is cloned before it is stored in the new PrivateKeyEntry object.

      Parameters:
      privateKey - the PrivateKey
      chain - an array of Certificates representing the certificate chain. The chain must be ordered and contain a Certificate at index 0 corresponding to the private key.
      Throws:
      NullPointerException - if privateKey or chain is null
      IllegalArgumentException - if the specified chain has a length of 0, if the specified chain does not contain Certificates of the same type, or if the PrivateKey algorithm does not match the algorithm of the PublicKey in the end entity Certificate (at index 0)
    • PrivateKeyEntry

      public PrivateKeyEntry​(PrivateKey privateKey, Certificate[] chain, Set<KeyStore.Entry.Attribute> attributes)
      Constructs a PrivateKeyEntry with a PrivateKey and corresponding certificate chain and associated entry attributes.

      The specified chain and attributes are cloned before they are stored in the new PrivateKeyEntry object.

      Parameters:
      privateKey - the PrivateKey
      chain - an array of Certificates representing the certificate chain. The chain must be ordered and contain a Certificate at index 0 corresponding to the private key.
      attributes - the attributes
      Throws:
      NullPointerException - if privateKey, chain or attributes is null
      IllegalArgumentException - if the specified chain has a length of 0, if the specified chain does not contain Certificates of the same type, or if the PrivateKey algorithm does not match the algorithm of the PublicKey in the end entity Certificate (at index 0)
      Since:
      1.8
  • Method Details

    • getPrivateKey

      public PrivateKey getPrivateKey()
      Gets the PrivateKey from this entry.
      Returns:
      the PrivateKey from this entry
    • getCertificateChain

      public Certificate[] getCertificateChain()
      Gets the Certificate chain from this entry.

      The stored chain is cloned before being returned.

      Returns:
      an array of Certificates corresponding to the certificate chain for the public key. If the certificates are of type X.509, the runtime type of the returned array is X509Certificate[].
    • getCertificate

      public Certificate getCertificate()
      Gets the end entity Certificate from the certificate chain in this entry.
      Returns:
      the end entity Certificate (at index 0) from the certificate chain in this entry. If the certificate is of type X.509, the runtime type of the returned certificate is X509Certificate.
    • getAttributes

      public Set<KeyStore.Entry.Attribute> getAttributes()
      Retrieves the attributes associated with an entry.
      Specified by:
      getAttributes in interface KeyStore.Entry
      Returns:
      an unmodifiable Set of attributes, possibly empty
      Since:
      1.8
    • toString

      public String toString()
      Returns a string representation of this PrivateKeyEntry.
      Overrides:
      toString in class Object
      Returns:
      a string representation of this PrivateKeyEntry.