Added support for RSASSA-PSS padding algorithms#417
Draft
MasonCitywide wants to merge 4 commits intorustls:mainfrom
Draft
Added support for RSASSA-PSS padding algorithms#417MasonCitywide wants to merge 4 commits intorustls:mainfrom
MasonCitywide wants to merge 4 commits intorustls:mainfrom
Conversation
djc
approved these changes
Mar 12, 2026
Member
djc
left a comment
There was a problem hiding this comment.
The changes here look okay so far, but CI doesn't pass and we'll want to make sure there some tests exercising this against a different backend (maybe OpenSSL)?
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Added algorithms to
sign_algo.rsPKCS_RSA_PSS_SHA256,PKCS_RSA_PSS_SHA384, andPKCS_RSA_PSS_SHA512.A half implemented version of
PKCS_RSA_PSS_SHA256already existed with a comment saying this doesn't work becauseringhasn't implemented PSS padding (here). It seems that since then it has (here), and that comment was made before the release ofaws-lc-rs.There was also an issue in the pre-existing
PKCS_RSA_PSS_SHA256function in which the salt length was set to the default 20 instead of the recommended value of the number of octets of the hash algorithm (RFC 4055, pg. 9).This is an important change as, if I am reading it correctly, non-PSS padding has been deprecated since RFC 8446 (pg. 70), with security concerns like ROBOT.
I was able to successfully create CSRs using all three of these algorithms using the
aws-lc-rsbackend. However, I'm not familiar with the unit testing of this library and I am new to contributions, so I would appreciate an independant review of these additions before they are merged.Thank you for your time,
MC