Я попытался создать CSR, следуя Инструкции Heroku. В частности
openssl genrsa -des3 -out server.pass.key 2048
openssl rsa -in server.pass.key -out server.key
openssl req -nodes -new -key server.key -out server.csr
# input data here
Я получаю следующую ошибку:
140509003069088:error:04075070:rsa routines:RSA_sign:digest too big for rsa key:rsa_sign.c:127:
140509003069088:error:0D0DC006:asn1 encoding routines:ASN1_item_sign_ctx:EVP lib:a_sign.c:314:
Я использую версию openssl:
OpenSSL> version
OpenSSL 1.0.1f 6 Jan 2014
Что я делаю не так?
У меня была та же проблема, которая была вызвана размещением 256 в командах, где требуется размер ключа. Работал набирать 1024, у тебя 2048
У меня это случилось, когда я неправильно набрал длину ключа для предыдущей команды. например, '409' бит вместо '4096' -
openssl genrsa -out key.pem 409
openssl req -subj '/CN=client' -new -key key.pem -out client.csr
(error)
vs.
openssl genrsa -out key.pem 4096
openssl req -subj '/CN=client' -new -key key.pem -out client.csr
(success)
Так что, возможно, попробуйте сделать резервную копию нескольких шагов и убедитесь, что все ваши предыдущие команды были введены правильно.
Хотя это очень интересно, я просто перешел на другую машину (та же версия openssl). Работал как шарм. Также работал над двумя другими, которые я пробовал.
Итак, решение: переключиться на другую машину.