From a9384eef7ae3a2587d215e3ec3d79bc1b335ce82 Mon Sep 17 00:00:00 2001 From: Filippo Valsorda Date: Tue, 1 Feb 2022 21:24:51 +0100 Subject: [PATCH] doc/go1.18: add crypto/tls, crypto/x509, and crypto/elliptic release notes Updates #45428 Updates #41682 Change-Id: I811bc4f8ec8de6b6db6a2917e265a72134a05e78 Reviewed-on: https://go-review.googlesource.com/c/go/+/382454 Trust: Filippo Valsorda Trust: Katie Hockman Reviewed-by: Katie Hockman --- doc/go1.18.html | 62 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/doc/go1.18.html b/doc/go1.18.html index b72c1288d1..e69113411e 100644 --- a/doc/go1.18.html +++ b/doc/go1.18.html @@ -546,6 +546,39 @@ Do not send CLs removing the interior tags from such phrases. UDPAddr.AddrPort.

+

TLS 1.0 and 1.1 disabled by default client-side

+ +

+ If Config.MinVersion + is not set, it now defaults to TLS 1.2 for client connections. Any safely + up-to-date server is expected to support TLS 1.2, and browsers have required + it since 2020. TLS 1.0 and 1.1 are still supported by setting + Config.MinVersion to VersionTLS10. + The server-side default is unchanged at TLS 1.0. +

+ +

+ The default can be temporarily reverted to TLS 1.0 by setting the + GODEBUG=tls10default=1 environment variable. + This option will be removed in Go 1.19. +

+ +

Rejecting SHA-1 certificates

+ +

+ crypto/x509 will now + reject certificates signed with the SHA-1 hash function. This doesn't + apply to self-signed root certificates. Practical attacks against SHA-1 + have been demonstrated since 2017 and publicly + trusted Certificate Authorities have not issued SHA-1 certificates since 2015. +

+ +

+ This can be temporarily reverted by setting the + GODEBUG=x509sha1=1 environment variable. + This option will be removed in Go 1.19. +

+

Minor changes to the library

@@ -598,6 +631,35 @@ Do not send CLs removing the interior tags from such phrases. +

crypto/elliptic
+
+

+ The P224, + P384, and + P521 curve + implementations are now all backed by code generated by the + addchain and + fiat-crypto + projects, the latter of which is based on a formally-verified model + of the arithmetic operations. They now use safer complete formulas + and internal APIs. P-224 and P-384 are now approximately four times + faster. All specific curve implementations are now constant-time. +

+ +

+ Operating on invalid curve points (those for which the + IsOnCurve method returns false, and which are never returned + by Unmarshal or + a Curve method operating on a valid point) has always been + undefined behavior, can lead to key recovery attacks, and is now + unsupported by the new backend. If an invalid point is supplied to a + P224, P384, or P521 method, that + method will now return a random point. The behavior might change to an + explicit panic in a future release. +

+
+
+
crypto/tls

-- 2.50.0