# Interface XECPublicKey

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

public interface XECPublicKey extends XECKey, PublicKey
An interface for an elliptic curve public key as defined by RFC 7748. These keys are distinct from the keys represented by `ECPublicKey`, and they are intended for use with algorithms based on RFC 7748 such as the XDH `KeyAgreement` algorithm. An XEC public key is a particular point on the curve, which is represented using only its u-coordinate as described in RFC 7748. A u-coordinate is an element of the field of integers modulo some value that is determined by the algorithm parameters. This field element is represented by a BigInteger which may hold any value. That is, the BigInteger is not restricted to the range of canonical field elements.

Since:
  11

## Field Summary

### Fields declared in interface PublicKey

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

## Method Summary

Modifier and Type
Method
Description
`default AlgorithmParameterSpec`
`getParams()`
Returns the parameters associated with this key.
`BigInteger`
`getU()`
Get the u coordinate of the point.

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

## Method Details

### getU

BigInteger getU()
Get the u coordinate of the point.

Returns:
  the u-coordinate, represented using a BigInteger which may hold any value

### getParams

default AlgorithmParameterSpec getParams()
Returns the parameters associated with this key. The parameters are optional and may be either explicitly specified or implicitly created during key pair generation.

Specified by:
  `getParams` in interface `AsymmetricKey`
Specified by:
  `getParams` in interface `XECKey`
Implementation Requirements:
  The default implementation returns `null`.
Returns:
  the associated parameters, may be `null`