-
-
Notifications
You must be signed in to change notification settings - Fork 6.7k
Add support to use keys and certificates from PKCS#11 provider #15587
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
Conversation
fbd381a
to
dff373e
Compare
Analysis of PR #15587 at dff373e6: Test 1478 failed, which has NOT been flaky recently, so there could be a real issue in this PR. Note that this test has failed in 91 different CI jobs (the link just goes to one of them). Generated by Testclutch |
59ed6b6
to
e38ad12
Compare
1076a74
to
a8a79ad
Compare
Seems like the windows build issue is resolved now. The test |
In OpenSSL < 3.0, the modularity was provided by mechanism called "engines". This is supported in curl, but the engines got deprecated with OpenSSL 3.0 in favor of more versatile providers. This adds a support for OpenSSL Providers, to use PKCS#11 keys, namely through the pkcs11 provider. This is done using similar approach as the engines and this is automatically built in when the OpenSSL 3 and newer is used. Signed-off-by: Jakub Jelen <jjelen@redhat.com>
a8a79ad
to
fed1dc9
Compare
Thanks! |
I believe there is an error when trying to use a pkcs11 uri as key. I have provided a fix: |
In OpenSSL < 3.0, the modularity was provided by mechanism called "engines". This is supported in curl, but the engines got deprecated with OpenSSL 3.0 in favor of more versatile providers. This adds a support for OpenSSL Providers, to use PKCS#11 keys, namely through the pkcs11 provider. This is done using similar approach as the engines and this is automatically built in when the OpenSSL 3 and newer is used. Signed-off-by: Jakub Jelen <jjelen@redhat.com> Closes curl#15587
In OpenSSL < 3.0, the modularity was provided by mechanism called "engines". This is supported in curl, but the engines got deprecated with OpenSSL 3.0 in favor of more versatile providers.
This adds a support for OpenSSL Providers, to use PKCS#11 keys, namely through the pkcs11 provider (https://github.com/latchset/pkcs11-provider). This is done using similar approach as the engines and this is automatically built in when the OpenSSL 3 and newer is used.
Tested locally with the same steps we had for the engines (just with new OpenSSL and pkcs11-provider installed) and the basic tests worked fine. I can add some more extensive one if needed.