Skip to content

Disable HPKE ECDH NIST curves on Android - #134688

Merged
bartonjs merged 1 commit into
dotnet:mainfrom
vcsjones:android-disable-nist-hpke
Sep 28, 2026
Merged

bartonjs merged 1 commit into
dotnet:mainfrom
vcsjones:android-disable-nist-hpke

Conversation

@vcsjones

Copy link
Copy Markdown
Member

Android HPKE tests are failing because the Android implementations of ECDiffieHellman cannot recover Q from d easily. X25519DiffieHellman supports this, so it remains enabled.

@vcsjones vcsjones changed the title Disable ECDH NIST curves on Android Disable HPKE ECDH NIST curves on Android Sep 25, 2026
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).
13 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @bartonjs, @vcsjones, @dotnet/area-system-security
See info in area-owners.md if you want to be subscribed.

@vcsjones

Copy link
Copy Markdown
Member Author

/azp run runtime-android

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).

@bartonjs

Copy link
Copy Markdown
Member

/ba-g Looks like an infra error on Windows-x86, this change only affects Android.

@bartonjs
bartonjs merged commit ba96732 into dotnet:main Sep 28, 2026
88 of 92 checks passed
@bartonjs

Copy link
Copy Markdown
Member

/backport to release/11.0

@github-actions

Copy link
Copy Markdown
Contributor

Started backporting to release/11.0 (link to workflow run)

@dotnet-milestone-bot dotnet-milestone-bot Bot added this to the 12.0-preview1 milestone Sep 29, 2026
@vcsjones
vcsjones deleted the android-disable-nist-hpke branch September 30, 2026 15:34
artl93 pushed a commit that referenced this pull request Oct 1, 2026
Backport of #134688 to release/11.0

/cc @bartonjs @vcsjones

## Customer Impact

- [ ] Customer reported
- [X] Found internally

The HPKE KEMs based on EC-DiffieHellman with a NIST curve (as opposed to
x25519) cannot import decapsulation keys on Android because the provider
does not support importing non-x25519 private keys without the public
key precomputed.

The most recent build of Android has added native HPKE support, and
they've omitted the ECDH-with-NIST-curve KEMs, so rather than try to
work around the behavior, we'll just report them as not supported on
Android.

## Regression

- [ ] Yes
- [X] No

The HPKE class is new for .NET 11, first release in 11-RC2.

## Testing

The existing tests were already reporting this, but the failures got
missed at checkin because Build Analysis did not include the results of
the Android run (false pass).

## Risk

Low.  New feature with nothing yet depending on it.

Co-authored-by: Kevin Jones <kevin@vcsjones.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants