⚿ Как сопоставить сертификат и его закрытый ключ – Information Security Squad
⚿ Как сопоставить сертификат и его закрытый ключ

Сопоставьте сертификат и его закрытый ключ, сравнив модуль сертификата с модулем закрытого ключа.

Показать значение модуля

Вывести значение модуля сертификата.

$ openssl x509 -in certificate.crt -modulus -noout
Modulus=D257F54F0AC566FF330283Z3AC3ZF3697FE848AD62EFCE25FF59D3D65FDB50322567085C6F36B04200C55C2494D0B55EE5295DD2EFD229FDC7ECD5235C052C2D3A4689A47DE057FFDEDDA27C2456DF253C4074C5E405EC305EA988C368555D8E5F560ADF2CC29E44F856BD5A267CD869E66FEF55F299E5F8B60580483F2D55F43B5D036CFC5A92EBE472F4434B05BF56D7DF37A27D2FAD85F523F8DE42A0F853E8269EF33E43F75EFA53D67F99C35083428FF348CE5A5524D3280C82C66A902E60EB2FEE875E9F60A4C235F633DCA3E59CB26590A79555923E6BF4AF069DD0CC5F9027AE64A6350DCE9E09E3E28FF79A579EF4FF0C54F0FD323F5FC08532077A

Показать значение модуля закрытого ключа.

$ openssl rsa -in certificate.key  -noout -modulus
Modulus=D257F54F0AC566FF330283Z3AC3ZF3697FE848AD62EFCE25FF59D3D65FDB50322567085C6F36B04200C55C2494D0B55EE5295DD2EFD229FDC7ECD5235C052C2D3A4689A47DE057FFDEDDA27C2456DF253C4074C5E405EC305EA988C368555D8E5F560ADF2CC29E44F856BD5A267CD869E66FEF55F299E5F8B60580483F2D55F43B5D036CFC5A92EBE472F4434B05BF56D7DF37A27D2FAD85F523F8DE42A0F853E8269EF33E43F75EFA53D67F99C35083428FF348CE5A5524D3280C82C66A902E60EB2FEE875E9F60A4C235F633DCA3E59CB26590A79555923E6BF4AF069DD0CC5F9027AE64A6350DCE9E09E3E28FF79A579EF4FF0C54F0FD323F5FC08532077A

Сократить значение модуля

Используйте хэш-функцию для визуального сравнения двух или более значений модуля.

Выведите значение модуля сертификата в виде контрольной суммы CRC-32.

$ crc32 <(openssl x509 -in certificate.crt -modulus -noout)
07ee38ca

Выведите значение модуля закрытого ключа в виде контрольной суммы CRC-32.

$ crc32 <(openssl rsa -in certificate.key -noout -modulus)
07ee38ca

Выведите значение модуля сертификата в виде контрольной суммы MD5.

$ openssl x509 -in certificate.crt -modulus -noout | openssl md5 -r | cut -d " " -f 1
8b930394115ed70aee117553c7927331

Выведите значение модуля закрытого ключа в виде контрольной суммы MD5.

$ openssl rsa -in a.key  -noout -modulus | openssl md5 -r | cut -d " " -f 1
8b930394115ed70aee117553c7927331

Сравните значения модулей

Сравните модуль сертификата с модулем закрытого ключа, чтобы убедиться, что сертификат соответствует предоставленному секретному ключу.

$ CERTIFICATE="certificate.crt"; KEY="certificate.key"; (openssl x509 -in $CERTIFICATE -modulus -noout; openssl rsa -in $KEY -noout -modulus) | uniq -c | awk '{ if($1 == 2 && NR == 1)  print "OK";  else { print "NOT OK"; exit(1);} }'
OK
$ echo $?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *