Module java.base
Package java.security

Class 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 Detail

      • 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 Detail

      • 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.
      • toString

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