Module java.base
Package java.security

Interface PrivateKey

All Superinterfaces:
Destroyable, Key, Serializable
All Known Subinterfaces:
DHPrivateKey, DSAPrivateKey, ECPrivateKey, EdECPrivateKey, RSAMultiPrimePrivateCrtKey, RSAPrivateCrtKey, RSAPrivateKey, XECPrivateKey

public interface PrivateKey extends Key, Destroyable
A private key. The purpose of this interface is to group (and provide type safety for) all private key interfaces.

Note: The specialized private key interfaces extend this interface. See, for example, the DSAPrivateKey interface in java.security.interfaces.

Implementations should override the default destroy and isDestroyed methods from the Destroyable interface to enable sensitive key information to be destroyed, cleared, or in the case where such information is immutable, unreferenced. Finally, since PrivateKey is Serializable, implementations should also override ObjectOutputStream.writeObject(java.lang.Object) to prevent keys that have been destroyed from being serialized.

Since:
1.1
See Also:
Key, PublicKey, Certificate, Signature.initVerify(java.security.PublicKey), DSAPrivateKey, RSAPrivateKey, RSAPrivateCrtKey
  • Field Details

    • serialVersionUID

      @Deprecated static final long serialVersionUID
      Deprecated.
      A serialVersionUID field in an interface is ineffectual. Do not use; no replacement.
      The class fingerprint that is set to indicate serialization compatibility with a previous version of the class.
      See Also:
      Constant Field Values