Closed str4d closed 3 months ago
This is the full current diff resulting from migrating zec-sqlite-cli
from the main
commit just before #1446 to the main
commit merging that PR, and after update version minimisation for the TLS-related dependencies:
These are the specific updates that I think might be contributing:
@@ -1911,11 +1943,12 @@ dependencies = [
[[package]]
name = "rustls"
-version = "0.22.4"
+version = "0.23.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432"
+checksum = "53e56521f047352df0db9a3c5aafc573eeb8909ab80f9d4cba201d8d73539009"
dependencies = [
"log",
+ "once_cell",
"ring",
"rustls-pki-types",
"rustls-webpki",
@@ -2521,9 +2550,9 @@ dependencies = [
[[package]]
name = "tokio-rustls"
-version = "0.25.0"
+version = "0.26.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f"
+checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4"
dependencies = [
"rustls",
"rustls-pki-types",
Note in particular that webpki-roots
is not upgraded. The fact that we can connect to zec.rocks
without the upgrade means that ISRV Root X1
must be in webpki-roots
; the problem must be in changes to certificate path building.
Code changes for these updates:
Aha, the issue is this change in rustls 0.23.0
: https://github.com/hyperium/tonic/pull/1731
The feature flags enable webpki-roots
to be used, but they are no longer used unless an explicit call to ClientTlsConfig::with_webpki_roots
is added.
This breaking change to the API was not noted in the changelog at all until two weeks ago: https://github.com/hyperium/tonic/pull/1781
1446 migrated us from
tokio 0.11
totokio 0.12
. This results in dependency updates that cause the following error when trying to connect tozec.rocks
:zec.rocks
has this certificate chain:
``` CONNECTED(00000003) --- Certificate chain 0 s:CN = zec.rocks i:C = US, O = Let's Encrypt, CN = R3 a:PKEY: id-ecPublicKey, 256 (bit); sigalg: RSA-SHA256 v:NotBefore: May 28 23:25:39 2024 GMT; NotAfter: Aug 26 23:25:38 2024 GMT -----BEGIN CERTIFICATE----- MIIEEzCCAvugAwIBAgISAy/kdOxAsW7vVouWK843ahYzMA0GCSqGSIb3DQEBCwUA MDIxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQswCQYDVQQD EwJSMzAeFw0yNDA1MjgyMzI1MzlaFw0yNDA4MjYyMzI1MzhaMBQxEjAQBgNVBAMT CXplYy5yb2NrczBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABGRdbaS9ttli4ny8 9Vvwvt/B16lK70iqiKcyLyTeGj4p9z20WxEIok9D0vOrG9uYXGGoU399bir/7b7i 89A8OxijggIKMIICBjAOBgNVHQ8BAf8EBAMCB4AwHQYDVR0lBBYwFAYIKwYBBQUH AwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFEgN471CWEM7QnTN 1QZJLb+a7OqUMB8GA1UdIwQYMBaAFBQusxe3WFbLrlAJQOYfr52LFMLGMFUGCCsG AQUFBwEBBEkwRzAhBggrBgEFBQcwAYYVaHR0cDovL3IzLm8ubGVuY3Iub3JnMCIG CCsGAQUFBzAChhZodHRwOi8vcjMuaS5sZW5jci5vcmcvMBQGA1UdEQQNMAuCCXpl Yy5yb2NrczATBgNVHSAEDDAKMAgGBmeBDAECATCCAQMGCisGAQQB1nkCBAIEgfQE gfEA7wB1AHb/iD8KtvuVUcJhzPWHujS0pM27KdxoQgqf5mdMWjp0AAABj8G9AK8A AAQDAEYwRAIgIdKfKsBjvX0xTahZ0drXQ9ZsXGq5NQ/wsTUTjM3GgEYCIFL6CkbZ Gkw2UTbKRcFQvyCdaDWbRSeWiHUv1zYkcAvdAHYASLDja9qmRzQP5WoC+p0w6xxS ActW3SyB2bu/qznYhHMAAAGPwb0AZAAABAMARzBFAiEApkMjdBbS2BmrdXGjvgmO 67Dz8K17pZ4QEWJZrjd/fiICIFaLK2qAqJXIBMJzhACC4WoEEwG1NthNvEn712MM Mgm4MA0GCSqGSIb3DQEBCwUAA4IBAQCeTGVx7MlRCxJL3TiNSbTex4bdfHbPjafy 3bz5Tv/+d1r+dDbxk7Mz/Th+iv57VzlznNaauigsrR594dM+Nz5ijhY7Agb5DBUa O4ia+FBJdM5lDU8J2tpBbn5eN+J6XkM0UPBPQBkGm3v0flyKLfjqpZWSEe+XW9OO iVRA3fNZ57dJhiwQ7mT9cXdYnhlTMgqUz2Uom4YKMy0VPD9/H6U3YlWt52tSdBNR yfu8jq29A1e+0AsMb2pMpB37CzmejnOuQmMu4kLok8YMYpP6TlsO97SY+7fhaUHm QYp/YnupTpTVoW7cUu9a9qXPvD0aZfhNJ3dCl2fkYaa3IVn6JL38 -----END CERTIFICATE----- 1 s:C = US, O = Let's Encrypt, CN = R3 i:C = US, O = Internet Security Research Group, CN = ISRG Root X1 a:PKEY: rsaEncryption, 2048 (bit); sigalg: RSA-SHA256 v:NotBefore: Sep 4 00:00:00 2020 GMT; NotAfter: Sep 15 16:00:00 2025 GMT -----BEGIN CERTIFICATE----- MIIFFjCCAv6gAwIBAgIRAJErCErPDBinU/bWLiWnX1owDQYJKoZIhvcNAQELBQAw TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMjAwOTA0MDAwMDAw WhcNMjUwOTE1MTYwMDAwWjAyMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNTGV0J3Mg RW5jcnlwdDELMAkGA1UEAxMCUjMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK AoIBAQC7AhUozPaglNMPEuyNVZLD+ILxmaZ6QoinXSaqtSu5xUyxr45r+XXIo9cP R5QUVTVXjJ6oojkZ9YI8QqlObvU7wy7bjcCwXPNZOOftz2nwWgsbvsCUJCWH+jdx sxPnHKzhm+/b5DtFUkWWqcFTzjTIUu61ru2P3mBw4qVUq7ZtDpelQDRrK9O8Zutm NHz6a4uPVymZ+DAXXbpyb/uBxa3Shlg9F8fnCbvxK/eG3MHacV3URuPMrSXBiLxg Z3Vms/EY96Jc5lP/Ooi2R6X/ExjqmAl3P51T+c8B5fWmcBcUr2Ok/5mzk53cU6cG /kiFHaFpriV1uxPMUgP17VGhi9sVAgMBAAGjggEIMIIBBDAOBgNVHQ8BAf8EBAMC AYYwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMBMBIGA1UdEwEB/wQIMAYB Af8CAQAwHQYDVR0OBBYEFBQusxe3WFbLrlAJQOYfr52LFMLGMB8GA1UdIwQYMBaA FHm0WeZ7tuXkAXOACIjIGlj26ZtuMDIGCCsGAQUFBwEBBCYwJDAiBggrBgEFBQcw AoYWaHR0cDovL3gxLmkubGVuY3Iub3JnLzAnBgNVHR8EIDAeMBygGqAYhhZodHRw Oi8veDEuYy5sZW5jci5vcmcvMCIGA1UdIAQbMBkwCAYGZ4EMAQIBMA0GCysGAQQB gt8TAQEBMA0GCSqGSIb3DQEBCwUAA4ICAQCFyk5HPqP3hUSFvNVneLKYY611TR6W PTNlclQtgaDqw+34IL9fzLdwALduO/ZelN7kIJ+m74uyA+eitRY8kc607TkC53wl ikfmZW4/RvTZ8M6UK+5UzhK8jCdLuMGYL6KvzXGRSgi3yLgjewQtCPkIVz6D2QQz CkcheAmCJ8MqyJu5zlzyZMjAvnnAT45tRAxekrsu94sQ4egdRCnbWSDtY7kh+BIm lJNXoB1lBMEKIq4QDUOXoRgffuDghje1WrG9ML+Hbisq/yFOGwXD9RiX8F6sw6W4 avAuvDszue5L3sz85K+EC4Y/wFVDNvZo4TYXao6Z0f+lQKc0t8DQYzk1OXVu8rp2 yJMC6alLbBfODALZvYH7n7do1AZls4I9d1P4jnkDrQoxB3UqQ9hVl3LEKQ73xF1O yK5GhDDX8oVfGKF5u+decIsH4YaTw7mP3GFxJSqv3+0lUFJoi5Lc5da149p90Ids hCExroL1+7mryIkXPeFM5TgO9r0rvZaBFOvV2z0gp35Z0+L4WPlbuEjN/lxPFin+ HlUjr8gRsI3qfJOQFy/9rKIJR0Y/8Omwt/8oTWgy1mdeHmmjk7j1nYsvC9JSQ6Zv MldlTTKB3zhThV1+XWYp6rjd5JW1zbVWEkLNxE7GJThEUG3szgBVGP7pSWTUTsqX nLRbwHOoq7hHwg== -----END CERTIFICATE----- --- Server certificate subject=CN = zec.rocks issuer=C = US, O = Let's Encrypt, CN = R3 --- No client certificate CA names sent Peer signing digest: SHA256 Peer signature type: ECDSA Server Temp Key: X25519, 253 bits --- SSL handshake has read 2733 bytes and written 391 bytes Verification: OK --- New, TLSv1.3, Cipher is TLS_AES_256_GCM_SHA384 Server public key is 256 bit Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE No ALPN negotiated Early data was not sent Verify return code: 0 (ok) --- ```$ cat zec.rocks.pem
My suspicion is that something in the upgrade is preventing the
ISRG Root X1
root from being found.