# Interface PublicKey

All Superinterfaces:
  `AsymmetricKey, BinaryEncodablePREVIEW, 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