Яка різниця між файлом cer, pvk та pfx?


Відповіді:


142

Windows використовує розширення .cer для сертифіката X.509. Вони можуть бути у "двійкових" (ASN.1 DER), або вони можуть бути закодовані з Base-64 і мати заголовок та колонтитул (PEM); Windows розпізнає будь-який. Щоб перевірити цілісність сертифіката, ви повинні перевірити його підпис за допомогою відкритого ключа емітента ... що, в свою чергу, є ще одним сертифікатом.

Windows використовує .pfx для файлу PKCS №12. Цей файл може містити різноманітну криптографічну інформацію, включаючи сертифікати, ланцюги сертифікатів, сертифікати кореневих повноважень та приватні ключі. Його вміст може бути криптографічно захищеним (з паролями), щоб зберегти приватні ключі приватними та зберегти цілісність кореневих сертифікатів.

Windows використовує .pvk для файлу приватного ключа. Я не впевнений, який стандарт (якщо такий є) Windows для них дотримується. Сподіваємось, це закодовані ключі PKCS # 8. Еммануель Бур повідомляє, що це фірмовий формат. Деяка документація доступна.

Ніколи не слід розголошувати свій приватний ключ. Вони містяться у файлах .pfx та .pvk.

Як правило, ви обмінюєтеся лише своїм сертифікатом (.cer) та сертифікатами будь-яких проміжних емітентів (тобто сертифікатів усіх ваших ЦП, крім кореневого ЦС) з іншими сторонами.


7
Файли PVK не містяться у ПКС №8, це формат власності. Дивіться drh-consultancy.demon.co.uk/pvk.html
Еммануель Бург

шукайте утиліту pvk2pfx.exe у вікнах SDK
BozoJoe

@erickson, який сенс вигадувати .pvk? Чи не вистачає .pfx?
Pacerier

@Pacerier Так, .pfx є досить. Я не впевнений, в чому суть .pvk; Я можу лише здогадуватися, що він був винайдений у незнанні.
erickson

55

На платформі Windows ці типи файлів використовуються для отримання інформації про сертифікати. Зазвичай використовується для сертифіката SSL та інфраструктури відкритих ключів (X.509).

  • Файли CER: файл CER використовується для зберігання сертифіката X.509. Зазвичай використовується для сертифікації SSL для перевірки та ідентифікації безпеки веб-серверів. Файл містить інформацію про власника сертифіката та відкритий ключ. Файл CER може бути у двійковому (ASN.1 DER) або закодованому Base-64 із включеним заголовком та колонтитулом (PEM), Windows розпізнає будь-яку з цих версток.
  • Файли PVK: Підставки для приватного ключа. Windows використовує файли PVK для зберігання приватних ключів для підписання коду в різних продуктах Microsoft. PVK - фірмовий формат.
  • Персональний формат обміну файлами PFX - це файл PKCS12. Він містить різноманітну криптографічну інформацію, таку як сертифікати, кореневі сертифікати авторизації, ланцюги сертифікатів та приватні ключі. Криптографічно захищено паролями, щоб зберегти приватні ключі приватними та зберегти цілісність кореневих сертифікатів. Файл PFX також використовується в різних продуктах Microsoft, таких як IIS.

для отримання додаткової інформації відвідайте: Файли сертифікатів: .Cer x .Pvk x .Pfx


4
Файли Cer: .... "Файл містить інформацію про власника сертифіката та публічні та приватні ключі сертифікатів" ... невірно. Як зазначив Еріксон у своїй відповіді: Він містить лише інформацію про відкритий ключ. Файл .cer із приватними та відкритими ключами був би марним.
thor_hayek

1
Це неправильно. Файл .Cer не містить приватних ключів. Удосконаліть свою відповідь.
ANewGuyInTown

36

Ось мої особисті, надто стислі нотатки, наскільки ця тема зараз стосується мене для тих, хто зацікавлений:

  • І PKCS12, і PEM можуть зберігати цілі ланцюги cert: відкриті ключі, приватні ключі та кореневі (CA) серти .
  • .pfx == .p12 == " PKCS12 "
    • повністю зашифрований
  • .pem == .cer == .cert == " PEM "
    • base-64 (рядок) кодує X509 cert (двійковий) із заголовком та колонтитулом
      • base-64 - це лише рядок "A-Za-z0-9 + /", який використовується для представлення 0-63, 6 біт двійкових даних одночасно, послідовно, іноді з 1 або 2 символами "=" закінчуються, коли є залишки (символи "=" будучи "заповнювач / мотлох / ігнорувати / викидати")
      • заголовок і колонтитул - це щось на кшталт "----- ПОЧАТИ СЕРТИФІКАТ -----" та "----- ЗАКОНЧИЙ СЕРТИФІКАТ -----" або "----- ПОЧАТИ КОНТРОЛЬНИЙ ПРИВАТНИЙ КЛЮЧ --- - "та" ----- ЗАКРІТНИЙ КОНКУРЕНТНИЙ ПРИВАТНИЙ КЛЮЧ ----- "
    • Windows розпізнає .cer та .cert як файли cert
  • .jks == " Магазин ключів Java "
    • просто специфічний для Java формат файлів, який використовує API
      • Файли .p12 та .pfx також можна використовувати з API JKS
  • " Довірені магазини " містять загальнодоступні, довірені, кореневі (CA) серти , тоді як " ідентифікаційні / ключові магазини " містять приватні, ідентифікаційні сертифікати; Файлово, однак вони однакові.

Тож де визначено .pvk?
zwcloud

@zwcloud Я дав те, що знав на той час. Інші відповіді дають це.
Андрій

18

Я насправді не так давно натрапив на щось подібне ... перевірте це на msdn (див. Першу відповідь)

підсумовано:

.cer - сертифікат, що зберігається у стандартному форматі X.509 Цей сертифікат містить інформацію про власника сертифіката ... разом із відкритими та приватними ключами.

.pvk - файли використовуються для зберігання приватних ключів для підписання коду. Ви також можете створити сертифікат на основі файлу приватного ключа .pvk.

.pfx - означає персональний формат обміну. Він використовується для обміну публічними та приватними об'єктами в одному файлі. З файлу .cer можна створити файл pfx. Можна також використовувати для створення сертифіката видавця програмного забезпечення .

Я узагальнив інформацію зі сторінки на основі пропозиції з коментарів.


2
Я рекомендую цитувати або узагальнювати зв'язаний вміст на додаток до самого посилання. Таким чином ви обидва надаєте належний кредит і захищаєте нас від втрати інформації наступного разу, коли MS переробляє свій сайт.
Джонатан Аллен

Я бачив це посилання, але я не повністю відповідає на питання.
Джонатан Аллен

15
Також частина інформації у посиланні неправильна. Наприклад, не можна витягти приватний ключ із сертифіката. Очевидно.
erickson

До коментаря вище мова не йде про видобуток. Просто не має сенсу мати приватні ключі у файлах .cer. Файл .cer повинен бути спільним із зовнішнім світом, тому він містить лише відкритий ключ.
Раджив
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.