Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Inherited Constants](https://developer.android.com/reference/java/security/interfaces/XECPublicKey#inhconstants) \| [Methods](https://developer.android.com/reference/java/security/interfaces/XECPublicKey#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/java/security/interfaces/XECPublicKey#inhmethods)

# XECPublicKey

` public interface XECPublicKey `   
` implements https://developer.android.com/reference/java/security/PublicKey, https://developer.android.com/reference/java/security/interfaces/XECKey `

|---|
| java.security.interfaces.XECPublicKey |

<br />

*** ** * ** ***

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.

## Summary

### Inherited constants

From interface `https://developer.android.com/reference/java/security/PublicKey` `long` `https://developer.android.com/reference/java/security/PublicKey#serialVersionUID`

*This constant was deprecated in API level 34. A `serialVersionUID` field in an interface is ineffectual. Do not use; no replacement.*
From interface `https://developer.android.com/reference/java/security/Key` `long` `https://developer.android.com/reference/java/security/Key#serialVersionUID`

*This constant was deprecated in API level 34. A `serialVersionUID` field in an interface is ineffectual. Do not use; no replacement.*

| ### Public methods ||
|---|---|
| ` abstract https://developer.android.com/reference/java/math/BigInteger` | ` https://developer.android.com/reference/java/security/interfaces/XECPublicKey#getU()() ` Get the u coordinate of the point. |

### Inherited methods

From interface ` https://developer.android.com/reference/java/security/interfaces/XECKey ` ` abstract https://developer.android.com/reference/java/security/spec/AlgorithmParameterSpec` ` https://developer.android.com/reference/java/security/interfaces/XECKey#getParams()() `

Returns the algorithm parameters associated with the key.
From interface ` https://developer.android.com/reference/java/security/Key ` ` abstract https://developer.android.com/reference/java/lang/String` ` https://developer.android.com/reference/java/security/Key#getAlgorithm()() `

Returns the standard algorithm name for this key.
` abstract byte[]` ` https://developer.android.com/reference/java/security/Key#getEncoded()() `

Returns the key in its primary encoding format, or null if this key does not support encoding.
` abstract https://developer.android.com/reference/java/lang/String` ` https://developer.android.com/reference/java/security/Key#getFormat()() `

Returns the name of the primary encoding format of this key, or null if this key does not support encoding.

## Public methods

### getU

Added in [API level 33](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public abstract BigInteger getU ()
```

Get the u coordinate of the point.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/math/BigInteger` | the u-coordinate, represented using a BigInteger which may hold any value <br /> |