Added in API level 1

PublicKey

interface PublicKey : Key
DHPublicKey

The interface to a Diffie-Hellman public key.

DSAPublicKey

The interface to a DSA public key.

ECPublicKey

The interface to an elliptic curve (EC) public key.

EdECPublicKey

An interface for an elliptic curve public key as defined by RFC 8032: Edwards-Curve Digital Signature Algorithm (EdDSA).

RSAPublicKey

The interface to an RSA public key.

XECPublicKey

An interface for an elliptic curve public key as defined by RFC 7748.

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.

Summary

Constants
static Long

The class fingerprint that is set to indicate serialization compatibility with a previous version of the class.

Inherited functions
String! getAlgorithm()

Returns the standard algorithm name for this key. For example, "DSA" would indicate that this key is a DSA key. See the key related sections (KeyFactory, KeyGenerator, KeyPairGenerator, and SecretKeyFactory) in the Java Security Standard Algorithm Names Specification for information about standard key algorithm names.

ByteArray! 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. The primary encoding format is named in terms of the appropriate ASN.1 data format, if an ASN.1 specification for this key exists. For example, the name of the ASN.1 data format for public keys is SubjectPublicKeyInfo, as defined by the X.509 standard; in this case, the returned format is "X.509". Similarly, the name of the ASN.1 data format for private keys is PrivateKeyInfo, as defined by the PKCS #8 standard; in this case, the returned format is "PKCS#8".

Constants

serialVersionUID

Added in API level 1
Deprecated in API level 34
static val serialVersionUID: Long

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.

Value: 7187392471159151072L