Skip to content

Conversation

@vcsjones
Copy link
Member

@vcsjones vcsjones commented Oct 3, 2025

Backport of #120366 to release/9.0-staging

/cc @bartonjs

Customer Impact

  • Customer reported
  • Found internally

This is test-only reaction to a change in Windows. Tests started failing in Windows because a Windows Update caused RSA with a 384-bit modulus to fail.

Regression

  • Yes
  • No

Testing

This is test only change. Verified failing tests started passing again.

Risk

None. Test-only change.

@vcsjones vcsjones added this to the 9.0.x milestone Oct 3, 2025
@vcsjones vcsjones requested a review from bartonjs October 3, 2025 19:52
Copilot AI review requested due to automatic review settings October 3, 2025 19:52
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

Backport test-only change to dynamically detect RSA-384 key support instead of using OS string heuristics, stabilizing previously failing cryptography tests on updated Windows versions.

  • Centralizes RSA-384 capability detection in PlatformSupport.IsRSA384Supported.
  • Replaces per-provider ad hoc logic with a shared Lazy-based capability probe.
  • Adds embedded 384-bit RSA key parameters for runtime import testing on Windows.

Reviewed Changes

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

File Description
System.Security.Cryptography/tests/DefaultRSAProvider.cs Replaces cached OSDescription heuristic with PlatformSupport.IsRSA384Supported.
System.Security.Cryptography.Csp/tests/RSACryptoServiceProviderProvider.cs Uses new shared RSA-384 support detection instead of unconditional true.
System.Security.Cryptography.Cng/tests/RSACngProvider.cs Removes duplicated heuristic logic in favor of centralized detection.
Common/tests/System/Security/Cryptography/PlatformSupport.cs Adds RSA-384 parameter set and Lazy-based runtime capability detection exposed via IsRSA384Supported.

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

@bartonjs bartonjs added the Servicing-approved Approved for servicing release label Oct 3, 2025
@bartonjs
Copy link
Member

bartonjs commented Oct 3, 2025

Test-only change, tell-mode.

@bartonjs bartonjs enabled auto-merge (squash) October 3, 2025 21:48
@bartonjs bartonjs merged commit e3fff88 into dotnet:release/9.0-staging Oct 3, 2025
85 of 87 checks passed
@vcsjones vcsjones deleted the backport-120366-to-release/9.0-staging branch October 3, 2025 22:58
@vcsjones vcsjones added the test-enhancement Improvements of test source code label Oct 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-System.Security Servicing-approved Approved for servicing release test-enhancement Improvements of test source code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants