преобразуйте .p7b ключ к .pfx

Сделайте себе одолжение и получите аппаратный маршрутизатор с хорошей поддержкой VPN. Даже что-то столь недорогое, как строка Netgear ProSafe может иметься за 70$ или около этого.

http://www.netgear.com/Products/VPNandSSL/WiredVPNFirewallRouters/FVS114.aspx

Эти типы единиц будет очень легко настроить и настроить. Если Вы заканчиваете тем, что нуждались в динамических сервисах IP (который можно так легко сделать), используйте DynDNS как предложенный.

10
задан 10 November 2009 в 06:37
5 ответов

PKCS#7 не включает частную (ключевую) часть пары сертификата/закрытого ключа, это является наиболее часто используемым для распространения сертификата (например, как ответ на запрос сертификата PKCS#10, поскольку средство распределить сертификаты S/MIME раньше шифровало сообщения или проверяло подписанные сообщения и т.д.). Важно помнить, что это только для сертификатов, которые являются по определению общедоступными объектами.

PKCS#12 является более универсальным контейнером - он предназначается для хранения и и общедоступных частей сертификата с закрытым ключом вместе так, чтобы они могли быть перемещены. Это имеет возможность того, чтобы быть защищенным паролем для обеспечивания некоторой защиты к ключам.

PFX был предшественником PKCS#12.

Вы не можете (как Anitak указывает), преобразовывают от PKCS#7 до PKCS#12 без дополнительных данных (часть с закрытым ключом), потому что PKCS#7 не имеет всех данных.

Mark Sutton указал, почему Вы не можете экспортировать как PFX - рассматриваемому сертификату отметили его закрытый ключ как неэкспортный. Провайдер криптографических служб (CSP) не позволит тому ключу быть перемещенным, это намеренное. Единственное* способ, которым можно получить экспортную cert\key пару, состоит в том, если исходный Сертификат был выпущен с экспортным набором флага. Также возможно, что нет никакого закрытого ключа, связанного с сертификатом, но я принимаю это дело не в этом здесь.

Существует хорошая сводка различных типов PKCS на Википедию.

  • Единственный законный путь, по крайней мере. В зависимости от Аппаратных средств CSP\Crypto могут быть механизмы, специально для программного обеспечения только CSP's, но это - область для исследования уязвимости системы обеспечения безопасности только, что касается меня, не системный администратор.
20
ответ дан 2 December 2019 в 21:58
  • 1
    Спасибо - похоже на покупку нового сертификата, может быть более дешевым, чем восстановление его, на основе количества времени we' ll должны иметь дело с третьим лицом, чтобы сделать это. –  DrStalker 11 November 2009 в 01:56

С инструментом окон, если pfx опция отключена, это означает, что закрытый ключ не может быть экспортированным из локального хранилища. Это также, потому что не там (потому что ключи не были сгенерированы на поле Ваше использование) или потому что, когда Вы генерировали ключи, закрытый ключ не был отмечен как экспортный и шаблон сертификата окон, не был настроен для разрешения экспорта.

Я предполагаю, что Ваше использование центра сертификации Microsoft выпускает Ваши сертификаты. Это корректно?

Раз так затем:-

1. Удостоверьтесь, что шаблон сертификата позволяет экспорт закрытых ключей.
2. Как Вы генерируете свой запрос сертификата, можно ли использовать следующую технику

СОЗДАЙТЕ файл INF следующим образом

[Версия]
Подпись =" NT$ $Windows

[NewRequest]
Предмет = "и т.д."
KeySpec=1
Exportable=1
MachineKeySet=TRUE
ProviderName = "CSPName"
ProviderType=1

[RequestAttributes] CertificateTemplate =

ОТМЕТЬТЕ экспортные =1
Затем используйте плавные команды в командной строке

certreq - новый infile.inf reqfile.req//, где infile.inf является файлом выше и reqfile, является выходным файлом запроса

certreq - отправляют - конфигурация \reqfile.req//Отправляет запрос сертификата к CA

После того как это завершено, Вы сможете экспортировать сертификат как pfx

Кроме того, http://www.blacktipconsulting.com/Site/Products.html goto, куда я поместил свой свободный инструмент командной строки, который делает все это для Вас и экспортирует сертификат как pfx когда-то законченный

3
ответ дан 2 December 2019 в 21:58

Я мог быть неправым, но я думаю, что Ваш файл PCKCS#7 только включает общедоступную половину Вашего сертификата.

Файл PKCS#12 должен был бы иметь обе половины - следовательно, почему ему нужно -inkey опция.

1
ответ дан 2 December 2019 в 21:58

Я прохожу это каждые 2 года (когда я возобновляю сертификат подписывания кода), и это - боль каждый раз.

Основная часть информации - то, что можно просто переименовать .p7b файлы к .spc (как указано здесь: http://support.microsoft.com/kb/269395).

Можно затем использовать инструмент pvk2pfx.exe для преобразования PVK + SPC в PFX.

pvk2pfx.exe -pvk input.pvk -pi <existing_input.pvk_password> -spc input.spc -pfx output.pfx -po <new_output.pfx_password>

(Вы можете пропускать шаг переименования p7b и использовать его непосредственно; я не попробовал...),

12
ответ дан 2 December 2019 в 21:58

Как указал Хелвик, ответ PKCS10 - это PKCS7, и он не содержит закрытого ключа. Таким образом, при создании CSR вы должны были создать файл privatekey.key. Вы можете использовать следующие команды. (Я знаю, что это вопрос четырехлетней давности, но я не смог ответить, следя за обсуждением на странице).

 openssl pkcs7 -inform DER -in PK7BDownloadedArchive.p7b -text -print_certs -out IntermediateCert.pem

openssl pkcs12 -export -in intermediateCert.pem -inkey privateKey.key -out FinalPKCS12Cert.p12

Удачи!

С уважением, JE

1
ответ дан 2 December 2019 в 21:58

Теги

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