Создание закрытого ключа RSA из файла PFX (PKCS #12)


Я пытаюсь получить закрытый ключ RSA из файла pkcs #12.

Я пробовал запустить Стандарт

openssl pkcs12 -nocerts -out priv.pem -in domain.com.pfx

Однако это приводит к ключевому файлу, как показано ниже:

Bag Attributes
Microsoft Local Key set: <No Values>
localKeyID: 01 00 00 00 
friendlyName: xxxxxxxx
Microsoft CSP Name: Microsoft RSA SChannel Cryptographic Provider
Key Attributes
X509v3 Key Usage: 10
-----BEGIN ENCRYPTED PRIVATE KEY-----

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

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,2CF27DD60B8BB3FF

И конечно же ключ присутствует в обоих файлах. Однако, похоже, сервер будет принимать только файл закрытого ключа RSA, и мне кажется, что вывод I get-это файл X509v3, кто-нибудь знает, как получить его в файл закрытого ключа RSA?

2 13

2 ответа:

Ну-использование текстового редактора для удаления оскорбительных строк может быть проще всего. В противном случае ниже будут убирать атрибуты мешка:

openssl pkcs12 -in x.pfx  -nocerts -nodes -passin pass:123456 | openssl rsa -out privkey.pem

И может также использоваться для получения der / net

openssl pkcs12 -in x-fred.p12  -nocerts -nodes -passin pass: | openssl rsa -outform DER -out privkey.der

Который может быть фактически тем форматом, который вы хотите. Это довольно распространено для инструментов, чтобы не принимать пароль меньше закрытого ключа, хотя (и многие инструменты будут молча терпеть неудачу, если # символов не по крайней мере 4 или 6). Поэтому в этих случаях измените значение tailend на:

.... | openssl rsa -passout pass:123456 -out privkey.pem
.... | openssl rsa -passout pass:123456 -out privkey.der -outform der

В windows 7 64bit вы можете просто использовать свою команду.Но в mac и linux, вы должны сделать следующие шаги:

1, Создайте свой PEM-файл:
openssl pkcs12-in xxx. pfx-out xxx. pem

2, Создайте свой закрытый ключ rsa:
openssl pkcs12-in xxx. pfx-passin pass:yourpassword | openssl rsa-des3-passout pass: yourpassowrd-out xxx.key

На этом шаге будет создан ключевой файл с содержимым:" ----- НАЧАТЬ ЗАКРЫТЫЙ КЛЮЧ RSA----- Proc-Тип: 4, зашифрованный Дек-Инфо: DES-EDE3-CBC, 2CF27DD60B8BB3FF "

3, Открой свой .Пем И.файл ключа в текстовом редакторе и заменить исходный ключ" ----- Начните шифровать закрытый ключ - - - - - " в .PEM файл с ключом rsa в .ключевой файл.