mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
crypto/tls: disable RSA-PSS in TLS 1.2
Most of the issues that led to the decision on #30055 were related to incompatibility with or faulty support for RSA-PSS (#29831, #29779, v1.5 signatures). RSA-PSS is required by TLS 1.3, but is also available to be negotiated in TLS 1.2. Altering TLS 1.2 behavior based on GODEBUG=tls13=1 feels surprising, so just disable RSA-PSS entirely in TLS 1.2 until TLS 1.3 is on by default, so breakage happens all at once. Updates #30055 Change-Id: Iee90454a20ded8895e5302e8bcbcd32e4e3031c2 Reviewed-on: https://go-review.googlesource.com/c/160998 Run-TryBot: Filippo Valsorda <filippo@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Adam Langley <agl@golang.org>
This commit is contained in:
parent
5d9bc60893
commit
7ccd3583ed
16 changed files with 1047 additions and 51 deletions
|
|
@ -161,7 +161,7 @@ const (
|
|||
)
|
||||
|
||||
// supportedSignatureAlgorithms contains the signature and hash algorithms that
|
||||
// the code advertises as supported in a TLS 1.2 ClientHello and in a TLS 1.2
|
||||
// the code advertises as supported in a TLS 1.2+ ClientHello and in a TLS 1.2+
|
||||
// CertificateRequest. The two fields are merged to match with TLS 1.3.
|
||||
// Note that in TLS 1.2, the ECDSA algorithms are not constrained to P-256, etc.
|
||||
var supportedSignatureAlgorithms = []SignatureScheme{
|
||||
|
|
@ -178,6 +178,9 @@ var supportedSignatureAlgorithms = []SignatureScheme{
|
|||
ECDSAWithSHA1,
|
||||
}
|
||||
|
||||
// RSA-PSS is disabled in TLS 1.2 for Go 1.12. See Issue 30055.
|
||||
var supportedSignatureAlgorithmsTLS12 = supportedSignatureAlgorithms[3:]
|
||||
|
||||
// helloRetryRequestRandom is set as the Random value of a ServerHello
|
||||
// to signal that the message is actually a HelloRetryRequest.
|
||||
var helloRetryRequestRandom = []byte{ // See RFC 8446, Section 4.1.3.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue