Closed kyrofa closed 7 months ago
Once this API is settled, this PR should be refactored to only use it if available, and fallback to the bindings if not. It seems that we will need to support both Cryptography 2.8 and the latest, until rolling has switched to the next Ubuntu LTS beyond 20.04.
This API changed from the time that this PR was opened. I've now opened up #290 , which supersedes this one. So closing this out.
The SROS2 utilities use the Cryptography library, which doesn't officially support S/MIME. As a result, we had to hit the SSL bindings directly to get that functionality. These bindings were removed in v3.1 of Cryptography, which means the SROS2 utilities were stuck on v3.0 at the latest (see https://github.com/pyca/cryptography/issues/5433).
However, Cryptography is working on adding an official S/MIME API which is far easier to use than the raw SSL API. This PR resolves #239 by updating the SROS2 utilities to use it. Note, however, that the S/MIME API has not been merged nor released in Cryptography, so this PR will remain in draft and fail all its tests for a little while.
See also: ros2/ci#507