Как я могу проверить, соответствует ли сертификат x509 CSR (если сертификат был создан на основе определенного CSR) в Go?Нужно ли генерировать новый сертификат из CSR и сравнивать их?
Если ваш запрос на подпись в формате DER, в стандартной библиотеке есть пара функций, которые вы можете использовать;сначала проанализировать CSR (https://golang.org/pkg/crypto/x509/#ParseCertificateRequest), а затем сертификат (https://golang.org/pkg/crypto/x509/#ParseCertificate).). После анализа вы можете сравнить значения открытого ключа.
Стандартное, но важное примечание по безопасности:
Обратите внимание, что это НЕ подтверждает сертификат в любом случае. Он может или не может быть безопасным в использовании, и мог быть заменен или изменен.