Как создать запрос сертификата TLS SHA256

Один из наших деловых партнеров запрашивает нас использовать сертификат TLS SHA256 для соединения с их API. Я не уверен, как генерировать эти запросы. Я использовал openssl в прошлом для создания этих запросов, но это генерировало сертификат SSL с помощью SHa1. Я могу использовать openssl для генерации этого запроса? Если не, как я генерирую то, что они просят?

Я не эксперт в этом поле, таким образом, я даже не знаю, имеет ли то, что я спрашиваю, смысл.

10
задан 27 April 2015 в 23:22
2 ответа

Хэш CSR и хэш сертификата не связаны

Тип хеша в запросе и в фактическом сертификате не связаны друг с другом.

CA проверяет подпись на CSR. Таким образом, CA может проверить, что CSR не был изменен при передаче. Это все, что делает подпись в CSR.

Не существует официального (или даже полуофициального) внутриполосного способа сообщить CA, какой хэш вам нужен. Вместо этого компания CA может запустить несколько центров сертификации, один из которых использует исключительно SHA256. И если вам нужен SHA256, вы отправляете свой CSR на веб-сайт этого конкретного CA, предназначенного только для SHA256. (И не на их веб-сайте SHA1-CA.)

Часто предполагается что-то вроде этого: «Если я отправлю CSR, подписанный с помощью SHA1, то мой сертификат будет подписан с помощью SHA1». Это обычно не делается. ( Единственным известным мне центром сертификации, который использовался для этого некоторое время, был Gandi.net .)

Как подписать CSR с помощью SHA256
При этом используйте - Параметр sha256 для подписи вашего CSR с помощью SHA256, например:

openssl req -new -newkey rsa: 2048 -nodes -sha256 -out www.example.com.sha256.csr -keyout www.example.com.key -subj "/C=US/ST=ExampleState/L=ExampleLocation/O=ExampleOrganisation/CN=www.example.com"

Как проверить тип хэша CSR
Вот как вы узнаете тип хэша вашего CSR:

$ openssl req -in www.example.com.sha256.csr -noout -text | grep Signature  
    Signature Algorithm: sha256WithRSAEncryption

Хорошо. Он использует SHA256, как мы и хотели.

12
ответ дан 2 December 2019 в 22:04

Если вы используете OpenSSL, вы можете просто добавить параметр командной строки -sha256 , который сгенерирует CSR с подписью SHA-256 алгоритм.

5
ответ дан 2 December 2019 в 22:04

Теги

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