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
<ahref="/pkg/crypto/tls#ConnectionState.ExportKeyingMaterial"><code>ConnectionState.ExportKeyingMaterial</code></a> will now
368
+
return an error unless TLS 1.3 is in use, or the <code>extended_master_secret</code> extension is supported by both the server and
369
+
client. <code>crypto/tls</code> has supported this extension since Go 1.20. This can be disabled with the
370
+
<code>tlsunsafeekm=1</code> GODEBUG setting.
368
371
</p>
369
372
370
-
<p><!-- https://go.dev/issue/62459 -->
371
-
TODO: <ahref="https://go.dev/issue/62459">https://go.dev/issue/62459</a>: make default minimum version for servers TLS 1.2
373
+
<p><!-- https://go.dev/issue/62459, CL 541516 -->
374
+
By default, the minimum version offered by <code>crypto/tls</code> servers is now TLS 1.2 if not specified with
375
+
<ahref="/pkg/crypto/tls#Config.MinimumVersion"><code>config.MinimumVersion</code></a>, matching the behavior of <code>crypto/tls</code>
376
+
clients. This change can be reverted with the <code>tls10server=1</code> GODEBUG setting.
372
377
</p>
373
378
374
-
<p><!-- https://go.dev/issue/63413 -->
375
-
TODO: <ahref="https://go.dev/issue/63413">https://go.dev/issue/63413</a>: disable RSA key exchange cipher suites by default
376
-
</p>
377
-
378
-
<p><!-- CL 514997 -->
379
-
TODO: <ahref="https://go.dev/cl/514997">https://go.dev/cl/514997</a>: crypto/tls: change SendSessionTicket to take an options struct; modified api/go1.21.txt
380
-
</p>
381
-
382
-
<p><!-- CL 541516 -->
383
-
TODO: <ahref="https://go.dev/cl/541516">https://go.dev/cl/541516</a>: crypto/tls: change default minimum version to 1.2
384
-
</p>
385
-
386
-
<p><!-- CL 541517 -->
387
-
TODO: <ahref="https://go.dev/cl/541517">https://go.dev/cl/541517</a>: crypto/tls: remove RSA KEX ciphers from the default list
388
-
</p>
389
-
390
-
<p><!-- CL 544155 -->
391
-
TODO: <ahref="https://go.dev/cl/544155">https://go.dev/cl/544155</a>: crypto/tls: disable ExportKeyingMaterial without EMS
379
+
<p><!-- https://go.dev/issue/63413, CL 541517 -->
380
+
By default, cipher suites without ECDHE support are no longer offered by either clients or servers during pre-TLS 1.3
381
+
handshakes. This change can be reverted with the <code>tlsrsakex=1</code> GODEBUG setting.
TODO: <ahref="https://go.dev/issue/57178">https://go.dev/issue/57178</a>: support code-constrained roots
389
+
The new <ahref="/pkg/crypto/x509#CertPool.AddCertWithConstraint"><code>CertPool.AddCertWithConstraint</code></a>
390
+
method can be used to add customized constraints to root certificates to be applied during chain building.
400
391
</p>
401
392
402
-
<p><!-- https://go.dev/issue/58922-->
403
-
TODO: <ahref="https://go.dev/issue/58922">https://go.dev/issue/58922</a>: add android user trusted CA folder as a possible source for certificate retrieval
393
+
<p><!-- https://go.dev/issue/58922, CL 519315-->
394
+
On Android, root certificates will now be loaded from <code>/data/misc/keychain/certs-added</code> as well as <code>/system/etc/security/cacerts</code>.
404
395
</p>
405
396
406
-
<p><!-- https://go.dev/issue/60665 -->
407
-
TODO: <ahref="https://go.dev/issue/60665">https://go.dev/issue/60665</a>: introduce new robust OID type & use it for certificate policies
A new type, <ahref="/pkg/crypto/x509#OID"><code>OID</code></a>, supports ASN.1 Object Identifiers with individual
399
+
components larger than 31 bits. A new field which uses this type, <ahref="/pkg/crypto/x509#Certificate.Policies"><code>Policies</code></a>,
400
+
is added to the <code>Certificate</code> struct, and is now populated during parsing. Any OIDs which cannot be represented
401
+
using a <ahref="/pkg/encoding/asn1#ObjectIdentifier"><code>asn1.ObjectIdentifier</code></a> will appear in <code>Policies</code>,
402
+
but not in the old <code>PolicyIdentifiers</code> field.
413
403
414
-
<p><!-- CL 520535 -->
415
-
TODO: <ahref="https://go.dev/cl/520535">https://go.dev/cl/520535</a>: crypto/x509: add new OID type and use it in Certificate; modified api/next/60665.txt
404
+
When calling <ahref="/pkg/crypto/x509#CreateCertificate"><code>CreateCertificate</code></a>, the <code>Policies</code> field is ignored, and
405
+
policies are taken from the <code>PolicyIdentifiers</code> field. Using the <code>x509usepolicies=1</code> GODEBUG setting inverts this,
406
+
populating certificate policies from the <code>Policies</code> field, and ignoring the <code>PolicyIdentifiers</code> field. We may change the
407
+
default value of <code>x509usepolicies</code> in Go 1.23, making <code>Policies</code> the default field for marshaling.
0 commit comments