Repository navigation
Update to boringssl 0.20261020.0 with ML-DSA by default - #544
Conversation
|
💬 Approved with comments — I found no correctness or security problems in the submodule bump, the patch rebase or the docs. Only an INFO about the versioning wording and an optional suggestion remain. Findings: 1 info · 1 suggestion The decision is advisory: this comment never approves, blocks or requests changes on the pull request. 📖 AGENTS.md: 💬 1 suggestionOptional contributor guidance suggestion remains open. Recommendation: 💬 Optional Nits
View full reviewThe repository still has no root 📋 Code Quality: 💬 1 infoNo correctness problems in the rebased patch. One INFO about the versioning wording in the docs. Recommendation: 💬 Optional Nits
View full review
✅ All other checks passed🚀 Release: ✅ LGTMRisk: Low. TLS 1.3 clients now advertise ML-DSA by default, so the ClientHello is slightly larger. Downstream tests that check exact ClientHello bytes may need updating. 🔒 Security: ✅ LGTMNo security issues found.
⚡ Performance: ✅ LGTMNo performance issues. Advertising ML-DSA adds about six bytes to the ClientHello. Filtering it out below TLS 1.3 is a small check once per handshake. 📝 Documentation: ✅ LGTMThe updated crate docs on FIPS 140-3, the prebuilt-binary environment variables and the ML-DSA defaults match the change. Reviewed commit: |
ec3ecfa to
150cc08
Compare
|
Looks good modulo the updates you made to the internal PR. |
Includes upstream commits dd682072b ("Block a handful of intermediate
certificates") and e52f12bcd ("crypto/x509 MTC: Update to draft -07").
ML-DSA was previously already enabled by default for TLS 1.3 servers.
Now boring-pq.patch also enables ML-DSA for TLS 1.3 clients by default
and in the fips202205 and fips202609 profiles.
The PQ kex patch rebase conflicted due to e52f12bcd ("crypto/x509 MTC:
Update to draft -07") changing and renumbering OIDs. To reduce future
conflicts, I now picked NID 959 which was previously used by CECPQ2.
A trivial conflict in the `SSL_CTX_use_second_keyshare` addition was
resolved as some definitions moved to a private openssl/ssl_deprecated.h
header since 5509db769 ("ssl: Move deprecated APIs out").
Update the outdated boring crate docs, we don't support the old FIPS
140-2 validated module.
150cc08 to
3b69e2a
Compare
| //! submodule at `boring-sys/deps/boringssl`. The current pin is upstream tag `0.20260929.0`. | ||
| //! *Note*: any BoringSSL revision bumps will be released as a major version update of all crates. | ||
| //! submodule at `boring-sys/deps/boringssl`. The current pin is upstream tag `0.20261020.0`. | ||
| //! *Note*: any BoringSSL revision bumps will be released as a minor version update of all crates. |
There was a problem hiding this comment.
I also changed major version bump -> minor version bump since we are not going to create a v6 and break the ecosystem just because BoringSSL got a little upgrade.
|
/bonk |
Includes upstream commits dd682072b ("Block a handful of intermediate certificates") and e52f12bcd ("crypto/x509 MTC: Update to draft -07").
ML-DSA was previously already enabled by default for TLS 1.3 servers. Now boring-pq.patch also enables ML-DSA for TLS 1.3 clients by default and in the fips202205 and fips202609 profiles.
The PQ kex patch rebase conflicted due to e52f12bcd ("crypto/x509 MTC: Update to draft -07") changing and renumbering OIDs. To reduce future conflicts, I now picked NID 959 which was previously used by CECPQ2. A trivial conflict in the
SSL_CTX_use_second_keyshareaddition was resolved as some definitions moved to a private openssl/ssl_deprecated.h header since 5509db769 ("ssl: Move deprecated APIs out").Update the outdated boring crate docs, we don't support the old FIPS 140-2 validated module.
Notes: