-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use EVP_PKEY for RSA operations with OpenSSL #48256
Conversation
Creates a copy of the current RSAOpenSsl type for Android
Tagging subscribers to this area: @bartonjs, @vcsjones, @krwq, @GrabYourPitchforks Issue DetailsIn OpenSSL 3.0 most of the interactions with This change replaces almost all of pal_rsa with EVP_PKEY-based functions, using the newer This change also saves the current state of RSAOpenSsl (shared between Contributes to #46526.
|
src/libraries/Common/src/Interop/Unix/System.Security.Cryptography.Native/Interop.EVP.cs
Show resolved
Hide resolved
src/libraries/Common/src/System/Security/Cryptography/RSAOpenSsl.cs
Outdated
Show resolved
Hide resolved
Hm, still passing on my machine and failing in the lab. I'll probably close this today and start over with smaller pieces to see where things go wrong. Probable order:
|
In OpenSSL 3.0 most of the interactions with
RSA*
are deprecated, callers are expectedto use the
EVP_PKEY*
-based higher-level API.This change replaces almost all of pal_rsa with EVP_PKEY-based functions, using the newer
model of having functions that describe the operation instead of trying to be as thin a shim
as possible. The other significant/visible change is that the OpenSSL layer interaction to
RSAParameters has changed from specifying
BN*
values to exchanging key format blobs.This change also saves the current state of RSAOpenSsl (shared between
Unix (OpenSsl) and Android (Android platform via JNI)) into a new RSAAndroid
class, and splits off Android-specific versions of Interop files that changed in
ways that might impact that platform standup.
Contributes to #46526.