openssl - Какой MD по умолчанию для открытого ключа

В openssl. cnf default_md (использовать MD с открытым ключом по умолчанию) установлен на default . Как я могу узнать значение по умолчанию без создания сертификата? Есть ли файл, в котором я могу проверить, где указаны значения по умолчанию?

5
задан 18 December 2015 в 22:04
2 ответа

md означает дайджест сообщения и начиная с версии openssl 1.1 по умолчанию используется sha256.

-md алг

дайджест сообщения для использования. Можно использовать любой дайджест, поддерживаемый командой OpenSSL dgst. Эта опция также применима к CRL.

https://www.openssl.org/docs/manmaster/man1/ca.html

В Openssl 1.1 дайджест по умолчанию изменен с MD5 на SHA256.

https://www.openssl.org/docs/manmaster/man1/dgst.html

4
ответ дан 3 December 2019 в 01:43

Начиная с версии 1.0.0 (в 2010 г.), хэш по умолчанию, используемый req и ca — или, точнее, хэш по умолчанию, используемый внутренними функциями, которые вызывают эти команды, X509_sign x509_req_sign x509_crl_sign - определяется в asn1_item_sign , вызывая avp_pkey_get_default_digest_nid , который использует PKEY-> AMETH-> PKEY_CTRL (PKEY, ASN1_PKEY_CTRL_DEFAULT_MD_NID, ...) . Таким образом, в принципе выбор хэша может зависеть от типа ключа или даже самого ключа, но для трех поддерживаемых в настоящее время типов подписи открытого ключа (RSA, DSA, ECDSA) он фактически жестко закодирован: в 1.0.0 и 1.0. 1 это SHA1, а в 1.0.2 1.1.0 и 1.1.1 это SHA256.

До этого, в версии 0.9.8, значение по умолчанию для req было жестко запрограммировано как SHA1, а для ca по умолчанию не было: если вы не указали хэш на командной строке, и у вас не было default_md установленного на действительный хэш, это не удалось. Конфигурация восходящего потока, которая может использоваться или не использоваться в каждом конкретном случае, имеет значение sha1.

0
ответ дан 20 July 2020 в 07:13

Теги

Похожие вопросы