You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#1624 is a cheap, easy solution to making sure we use the right signature schemes per version. However, it requires manually setting min/max version, and correctness is enforced with a unit test.
Proposed Solution:
Possibilities:
Add an additional check in CertVerify to make sure we're using a valid scheme. This theoretically shouldn't be necessary, but it would give a nice line of code to point at to prove we're definitely never signing with pkcs1 or sha1.
Set min/max protocol version on signature schemes programmatically via s2n_init with the same rules the unit test in Do not use pkcs1 or sha1 with tls1.3 #1624 uses. Essentially, write a function that loops through all signature schemes and evaluates what tls protocol versions can use them. The downsides are less transparency and that the signature schemes could no longer be marked const (since we would need to update them at runtime with the allowed versions).
Stop listing min/max protocol version on the sig schemes altogether and move the logic from the unit test in Do not use pkcs1 or sha1 with tls1.3 #1624 to here. That would check a signature alg is valid before we accept / choose it. The downside is less transparency and that we would need to do the checks at runtime, but they are very cheap checks.
The text was updated successfully, but these errors were encountered:
Problem:
#1624 is a cheap, easy solution to making sure we use the right signature schemes per version. However, it requires manually setting min/max version, and correctness is enforced with a unit test.
Proposed Solution:
Possibilities:
The text was updated successfully, but these errors were encountered: