[master] Migrate the digicert runner from M2Crypto to PyCA/cryptography#66166
[master] Migrate the digicert runner from M2Crypto to PyCA/cryptography#66166facutuesca wants to merge 2 commits intosaltstack:masterfrom
M2Crypto to PyCA/cryptography#66166Conversation
This change migrates the digicert runner to use the cryptographic library PyCA/cryptography, instead of the older libraries M2Crypto, PyCryptodome and PyCrypto.
|
Hi there! Welcome to the Salt Community! Thank you for making your first contribution. We have a lengthy process for issues and PRs. Someone from the Core Team will follow up as soon as possible. In the meantime, here’s some information that may help as you continue your Salt journey.
There are lots of ways to get involved in our community. Every month, there are around a dozen opportunities to meet with other contributors and the Salt Core team and collaborate in real time. The best way to keep track is by subscribing to the Salt Community Events Calendar. |
M2Crypto to PyCA/cryptographyM2Crypto to PyCA/cryptography
|
This module and its associated states and tests have been transitioned to community support and are no longer maintained by the Salt Core team. The code has been removed from the Salt code-base and can be found in this repository: https://github.com/salt-extensions/community-extensions-holding/ There is currently discussion and work being done on the salt-extensions Discord channel (https://discordapp.com/channels/1200072194781368340/1208165123240370197) to document and build the infrastructure for community-supported salt extensions. There is also a Salt-Extensions Working Group that takes place on the 1st and 3rd Thursday of every month to coordinate salt-extension efforts. |
What does this PR do?
This PR migrates the
digicertrunner to use the cryptographic libraryPyCA/cryptography, instead of the older librariesM2Crypto,PyCryptodomeandPyCrypto. In particular, it migrates the generation of RSA keys used to create Certificate Signing Requests.What issues does this PR fix or reference?
Part of #66149, which tracks the migration from
M2Cryptoto newer cryptographic libraries.Previous Behavior
The RSA key used to sign CSRs (Certificate Signing Request) in the
digicertrunner was generated usingM2Crypto, or alternativelyPyCryptodomeorPyCryptoif the former was not installed.The generated key was saved in the cache in
PKCS#1format and encrypted withDES-EDE3-CBC.The generated key was used by the command
openssl req -newto sign a new CSR.New Behavior
The RSA key is generated using
PyCA/cryptography, a library that is already a Salt dependency and is newer and better maintained compared to the ones used before.The generated key is saved in the cache in
PKCS#8format and encrypted with the best available algorithm, as decided by the library.The generated key is used by the command
openssl req -newto sign a new CSR.Merge requirements satisfied?
[NOTICE] Bug fixes or features added to Salt require tests.
Commits signed with GPG?
Yes