В инструкции описан способ проверки соответствия приватного ключа, сертификата и csr-файла с помощью библиотеки OpenSSL.
Зачем?
Это может потребоваться, если у вас несколько SSL-сертификатов и вы не знаете, какой именно private key идет в паре с конкретным сертификатом.
Примечание: библиотека openssl обладает широким набором возможностей для работы с сертификатами, начиная от генерации самоподписанных ssl-сертификатов с различной длиной ключа до использования датаграмм безопасности транспортного уровня.
Проверка
Для проверки необходимо вычислить md5 хэш модуля каждого файла. Равенство хэша означает соответствие private key, сертификата и csr.
- Вычисление хэша модуля SSL-сертификата:
openssl x509 -noout -modulus -in <имя_файла>.crt | openssl md5
Пример:
openssl x509 -noout -modulus -in example.ru_crt.crt | openssl md5
Результат:
(stdin)= 342bd7490c3b79c83afbb90b3e78dd67
- Вычисление хэша приватного ключа:
openssl rsa -noout -modulus -in <имя_файла>.key | openssl md5
Пример:
openssl rsa -noout -modulus -in example.ru_key.key | openssl md5
Результат:
(stdin)= 342bd7490c3b79c83afbb90b3e78dd67
- Расчет хэша модуля CSR:
openssl req -noout -modulus -in <имя_файла>.csr | openssl md5
Пример:
openssl req -noout -modulus -in example.ru_csr.csr | openssl md5
Результат:
(stdin)= 342bd7490c3b79c83afbb90b3e78dd67
Примечание: если вы используете данную библиотеку на Windows, то вид команды будет следующий:
> ./openssl.exe <command> -noout -modulus -in <имя_файла> | ./openssl.exe md5