Назад | Перейти на главную страницу

Должен ли SHA-1 Chrome соответствовать OpenSSL?

Если я сравню SHA-1, показанный для сертификата для https://0000.jp в Chrome:

79 72 28 12 74 83 85 DE 3C B0 DE E7 A4 C3 14 BE B4 93 79 6E

с тем, что представлено OpenSSL:

$ echo -n | openssl s_client -connect 0000.jp:443 2>/dev/null | openssl x509 -noout -fingerprint
SHA1 Fingerprint=79:72:28:12:74:83:85:DE:3C:B0:DE:E7:A4:C3:14:BE:B4:93:79:6E

тогда я получаю такое же значение.

Если я сделаю то же самое для https://google.co.uk затем Chrome показывает:

06 4B 11 0D 63 4A 83 E2 6B 1A 12 19 EC 04 46 F3 7C 3A 01 D7

в то время как OpenSSL показывает:

$ echo -n | openssl s_client -connect google.co.uk:443 2>/dev/null | openssl x509 -noout -fingerprint
SHA1 Fingerprint=3F:6D:D9:AB:60:92:1E:EE:D3:4C:C7:36:04:49:B2:FA:F9:E5:2D:92

В Chrome нет предупреждений, и я предполагаю, что АНБ / русские / Северная Корея не так ответственны, как ошибка с моей стороны ... так в чем причина такой разницы?

Это разные сертификаты. Google по каким-либо техническим и административным причинам использует множество разных SSL-сертификатов из разных источников.

Скорее всего, ваши два теста касаются двух разных серверов Google. У них много серверов с различными методами балансировки нагрузки, поэтому запросы не всегда отправляются на один и тот же сервер.

Попробуйте оба метода просмотра сертификата, подключившись к одному и тому же IP-адресу вместо домена мощь заставить их обоих подключаться к одному серверу и показывать один и тот же хеш.

Пока оба сертификата действительны, не показывают никаких предупреждений и исходят от известных центров сертификации, все в порядке. Не о чем беспокоиться.