Skip to content

Conversation

@vcsjones
Copy link
Member

@vcsjones vcsjones commented Jan 2, 2026

It was only used for Windows 7.

While we are doing some cleanup, let's get rid of a hand-rolled one-shot implementation we don't need anymore. This will be more efficient for NativeAOT.

Contributes to #71075.

@vcsjones vcsjones self-assigned this Jan 2, 2026
Copilot AI review requested due to automatic review settings January 2, 2026 02:16
@dotnet-policy-service
Copy link
Contributor

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

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR removes Windows 7 support from SP800-108 HMAC Counter KDF by eliminating the fallback to the managed implementation. Windows 8 and later versions have native CNG support for this algorithm, making the managed implementation unnecessary for supported Windows versions.

  • Removed Windows version detection logic (IsWindowsVersionAtLeast(6, 2))
  • Simplified implementation to always use the CNG-based implementation on Windows
  • Removed managed implementation file references from the Windows-specific build configuration

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
SP800108HmacCounterKdf.Windows.cs Removed Windows version checks and simplified all methods to directly call the CNG implementation
System.Security.Cryptography.csproj Removed two references to SP800108HmacCounterKdfImplementationManaged.cs from the Windows-specific ItemGroup

@stephentoub stephentoub merged commit fbd2149 into dotnet:main Jan 3, 2026
85 of 87 checks passed
@vcsjones vcsjones deleted the rm-sp800108managedonwindows branch January 3, 2026 17:07
@vcsjones vcsjones added this to the 11.0.0 milestone Jan 10, 2026
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