From: Sergey Matveev Date: Sun, 26 Mar 2023 12:34:07 +0000 (+0300) Subject: Бага в Go, когда есть X.509 сертификат с неподдерживаемым алгоритмом X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=9a4adf51f358a9f04dafe9979d7472ff72c1815c;p=stargrave-blog.git Бага в Go, когда есть X.509 сертификат с неподдерживаемым алгоритмом Обнаружилась проблема в Go. Если в списке доверенных сертификатов есть, например, с ГОСТовым алгоритмом, то при попытке проверки сертификата, он запаникует: panic: interface conversion: interface is nil, not x509.pubKeyEqual goroutine 194 [running]: crypto/x509.alreadyInChain(0xc000466100, {0xc00029e760, 0x2, 0xc0006062e8?}) /.../src/crypto/x509/verify.go:870 +0x14a То есть, авторы crypto/x509 не предполагают что может быть алгоритм который они не поддерживают. Я то этого всего не замечал, так как использую fork с поддержкой ГОСТов, но если подсунуть мой CA bundle (http://www.ca.cypherpunks.ru/cert.pem.), то на обычной версии Go это проявится. ---