В чем разница между файлами cer, pvk и pfx?
В чем разница между файлами cer, pvk и pfx? Кроме того, какие файлы я храню и которые я должен передать своим контрагентам?
4 ответа
Windows использует расширение.cer для сертификата X.509. Они могут быть в "двоичном" (ASN.1 DER) или кодироваться с помощью Base-64 и иметь заголовок и нижний колонтитул (PEM); Windows распознает либо. Чтобы проверить целостность сертификата, вы должны проверить его подпись, используя открытый ключ эмитента... который, в свою очередь, является другим сертификатом.
Windows использует файл.pfx для файла PKCS #12. Этот файл может содержать различную криптографическую информацию, включая сертификаты, цепочки сертификатов, сертификаты корневого центра и закрытые ключи. Его содержимое может быть криптографически защищено (с помощью паролей), чтобы сохранить закрытые ключи закрытыми и сохранить целостность корневых сертификатов.
Windows использует.pvk для файла закрытого ключа. Я не уверен, какой стандарт (если таковой имеется) Windows следует для них. Надеемся, что это ключи PKCS #8. Emmanuel Bourg сообщает, что это проприетарный формат. Некоторая документация доступна.
Вы никогда не должны раскрывать свой закрытый ключ. Они содержатся в файлах.pfx и.pvk.
Как правило, вы только обмениваете свой сертификат (.cer) и сертификаты любых промежуточных эмитентов (т. Е. Сертификаты всех ваших CA, кроме корневого CA) с другими сторонами.
Вот мои личные, сверхконденсированные заметки, поскольку эта тема относится ко мне в настоящее время, для всех, кто интересуется:
- Как PKCS12, так и PEM могут хранить целые цепочки сертификатов: открытые ключи, закрытые ключи и корневые (CA) сертификаты.
- .pfx == .p12 == " PKCS12 "
- полностью зашифрован
- .pem == .cer == .cert == " PEM "
- сертификат X509 (двоичный) в кодировке base-64 (строка) с верхним и нижним колонтитулом
- base-64 - это просто строка "A-Za-z0-9+/", используемая для представления 0-63, 6 бит двоичных данных за раз, в последовательности, иногда с 1 или 2 символами "=" в самом конец, когда есть остатки (символы "=", являющиеся "заполнителем / мусором / игнорировать / выбрасывать")
- верхний и нижний колонтитулы - что-то вроде "-----BEGIN CERTIFICATE-----" и "-----END CERTIFICATE-----" или "-----BEGIN ENCRYPTED PRIVATE KEY---- "и" ----- КОНЕЦ ЗАКРЫТЫМ ЧАСТНЫМ КЛЮЧОМ ----- "
- Windows распознает.cer и.cert как файлы сертификации
- сертификат X509 (двоичный) в кодировке base-64 (строка) с верхним и нижним колонтитулом
- .jks == " Хранилище ключей Java "
- только специфичный для Java формат файла, который использует API
- Файлы.p12 и.pfx также можно использовать с JKS API
- только специфичный для Java формат файла, который использует API
- " Хранилища доверия " содержат публичные, доверенные, корневые (CA) сертификаты, тогда как " Хранилища идентификаторов / ключей " содержат частные сертификаты идентификации; по файлам, однако, они одинаковы.
На платформе Windows эти типы файлов используются для информации о сертификатах. Обычно используется для сертификата SSL и инфраструктуры открытых ключей (X.509).
- Файлы CER: файл CER используется для хранения сертификата X.509. Обычно используется для сертификации SSL для проверки и идентификации безопасности веб-серверов. Файл содержит информацию о владельце сертификата и открытый ключ. Файл CER может быть в двоичном формате (ASN.1 DER) или кодироваться с помощью Base-64 с включенным заголовком и нижним колонтитулом (PEM), Windows распознает любой из этих макетов.
- Файлы PVK: обозначает закрытый ключ. Windows использует файлы PVK для хранения закрытых ключей для подписи кода в различных продуктах Microsoft. PVK является закрытым форматом.
- Файлы PFX Personal Exchange Format, это файл PKCS12. Он содержит различную криптографическую информацию, такую как сертификаты, сертификаты корневого центра, цепочки сертификатов и закрытые ключи. Он криптографически защищен паролями, чтобы сохранить закрытые ключи закрытыми и сохранить целостность корневых сертификатов. Файл PFX также используется в различных продуктах Microsoft, таких как IIS.
для получения дополнительной информации посетите: Файлы сертификатов: .Cer x .Pvk x .Pfx
Я на самом деле сталкивался с чем-то подобным не так давно... проверьте это на MSDN (см. Первый ответ)
В итоге:
.cer - сертификат хранится в стандартном формате X.509. Этот сертификат содержит информацию о владельце сертификата, а также открытый и закрытый ключи.
.pvk - файлы используются для хранения приватных ключей для подписи кода. Вы также можете создать сертификат на основе файла закрытого ключа.pvk.
.pfx - обозначает формат личного обмена. Он используется для обмена открытыми и закрытыми объектами в одном файле. Файл pfx может быть создан из файла.cer. Может также использоваться для создания сертификата издателя программного обеспечения.
Я суммировал информацию со страницы на основе предложения из комментариев.