PublicKey (Java SE 26 & JDK 26)
Description: declaration: module: java.base, package: java.security, interface: PublicKey
Keywords: java.security.PublicKey interface

# Interface PublicKey

All Superinterfaces:
  `AsymmetricKey, DEREncodablePREVIEW, Key, Serializable`

All Known Subinterfaces:
  `DHPublicKey, DSAPublicKey, ECPublicKey, EdECPublicKey, RSAPublicKey, XECPublicKey`

public interface PublicKey extends AsymmetricKey

A public key. This interface contains no methods or constants. It merely serves to group (and provide type safety for) all public key interfaces. Note: The specialized public key interfaces extend this interface. See, for example, the DSAPublicKey interface in `java.security.interfaces`.

Since:
  1.1
See Also:
  - `Key`
  - `PrivateKey`
  - `Certificate`
  - `Signature.initVerify(PublicKey)`
  - `DSAPublicKey`
  - `RSAPublicKey`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final long`
  `serialVersionUID`
  Deprecated.
  A `serialVersionUID` field in an interface is ineffectual.

- ## Method Summary

  ### Methods declared in interface AsymmetricKey

  `getParams`
  Modifier and Type
  Method
  Description
  `default AlgorithmParameterSpec`
  `getParams()`
  Returns the parameters associated with this key.

  ### Methods declared in interface Key

  `getAlgorithm, getEncoded, getFormat`
  Modifier and Type
  Method
  Description
  `String`
  `getAlgorithm()`
  Returns the standard algorithm name for this key.
  `byte[]`
  `getEncoded()`
  Returns the key in its primary encoding format, or `null` if this key does not support encoding.
  `String`
  `getFormat()`
  Returns the name of the primary encoding format of this key, or `null` if this key does not support encoding.

- ## 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