Каково различие между cer, pvk, и pfx файлом? Кроме того, какие файлы я сохраняю и который является, я ожидал давать своим контрагентам?
Windows использует расширение .cer для сертификата X.509. Они могут быть «двоичными» (ASN.1 DER) или могут быть закодированы с помощью Base-64 и иметь верхний и нижний колонтитулы (PEM); Windows тоже распознает. Чтобы проверить целостность сертификата, вы должны проверить его подпись с помощью открытого ключа эмитента ... который, в свою очередь, является другим сертификатом.
Windows использует .pfx для файла PKCS # 12. Этот файл может содержать различную криптографическую информацию, включая сертификаты, цепочки сертификатов, сертификаты корневых центров и закрытые ключи. Его содержимое может быть криптографически защищено (с помощью паролей) для сохранения секретности закрытых ключей и сохранения целостности корневых сертификатов.
Windows использует .pvk для файла закрытого ключа. Я не уверен, какой стандарт (если таковой имеется) Windows следует для них. Надеюсь, это ключи в кодировке PKCS # 8. Эммануэль Бур сообщает, что это частный формат. Доступна некоторая документация .
Никогда не раскрывайте свой закрытый ключ. Они содержатся в файлах .pfx и .pvk.
Как правило, вы обмениваетесь своим сертификатом (.cer) и сертификатами любых промежуточных эмитентов (т. Е. Сертификатами всех ваших центров сертификации, кроме корневого) с другими сторонами.
Я действительно столкнулся с чем-то вроде этого не так давно ... проверьте это на msdn (см. Первый ответ)
вкратце :
.cer - сертификат, хранящийся в стандартном формате X.509. Этот сертификат содержит информацию о владельце сертификата ... вместе с открытым и закрытым ключами.
.pvk - файлы используются для хранения закрытых ключей для подписи кода. Вы также можете создать сертификат на основе файла закрытого ключа .pvk.
.pfx - формат личного обмена. Он используется для обмена общедоступными и частными объектами в одном файле. Файл pfx можно создать из файла .cer. Также может использоваться для создания сертификата издателя программного обеспечения .
Я резюмировал информацию со страницы, основываясь на предложении из комментариев.