PKCS #12 пакет (.p12)

IETF Стандарт

PKCS #12 (P12/PFX) е контейнерен формат, който може да съхранява частни ключове, сертификати и свързани данни. В зависимост от начина на създаване файлът може да е защитен с парола или да не е криптиран.

Конвертиране от P12 към PEM

Безплатен конвертор от P12 към PEM в браузъра. Конвертирайте файлове незабавно на вашето устройство.

Проверка и метаданни

Операционните системи и файловите анализатори идентифицират P12 файлове чрез проверка на началната двоична байтова последователност:

Изберете или пуснете файлове тук

Поверително - файловете никога не напускат устройството ви

или поставете Ctrl+V
Гаранция за поверителност с нулево мрежово предаване: 0 байта са качени на външни сървъри. Цялата обработка се извършва локално в пясъчниците на вашия браузър.

Байтов подпис на заглавката (сигнатурни байтове)

Операционните системи и файловите анализатори идентифицират P12 файлове чрез проверка на началната двоична байтова последователност:

HEX ПОДПИС (ОФСЕТ 0):

30

ASCII ПРЕДСТАВЯНЕ: 0

Стандартизация: IETF RFC 7292 / PKCS #12 v1.1

Технически спецификации

Контейнерна архитектураСтруктура PFX ASN.1, криптирана с парола, която съдържа SafeBags с частни ключове, сертификати и CRL
КомпресияНекомпресирани криптографски данни
Поредност на байтовете (Endianness)Старши байт първи (Big-Endian, ASN.1 DER)
Цветови пространстваНе се прилага (криптирано хранилище на ключове)
Канали и структураЧастни ключове, публични сертификати, вериги от междинни сертификати на сертифициращи органи (CA) и коренови сертификати на CA
Максимални размериОбикновено 5 KB до 25 KB
ПрозрачностКриптиран контейнер (защитен с парола)
Поточно предаване и прогресивно зарежданеАтомарно извличане на криптиран архив

Техническа сравнителна матрица: P12 спрямо конкуренти

Технически атрибутP12 (Текущ)PEMCRTDER
Възможност за пакетЧастен ключ + верига от сертификати в един файлМоже да се комбинира в текстов файл; ключът не е криптиранСамо сертификатЕдин двоичен ключ или сертификат
КриптиранеКриптиран с парола (AES-256)Допълнителна парола за частния ключНекриптиран публичен сертификатНекриптиран двоичен файл
Apple iOS и macOSВграден стандарт за експортиране на идентификационни данниИзползва се през командния редИмпортиран като сертификатИмпортиран като суров ключ
Взаимозаменяем с.pfx (идентичен формат).crt, .key.cer.asn1

Често срещани видове повреди и ръководство за възстановяване на шестнадесетични данни

Грешка при извличане: 'Mac verify error: invalid password' въпреки въвеждането на правилната парола.

Първопричина: По подразбиране настройките на OpenSSL 3.0 отказват старите алгоритми за криптиране 3DES/RC2 в по-стари P12 файлове.

Възстановяване: Прекриптирайте със съвременен AES-256, като използвате инструмента за сертификати File2File.app.

Анализ на сигурността и вектори на атака към парсера

Контейнерите P12 съдържат критични частни ключове; старите шифри за криптиране трябва да бъдат актуализирани към съвременните стандарти AES.

Известни вектори на атака

  • Атаки с изпробване на множество пароли срещу слабо криптирани P12 архиви с нисък брой итерации.
  • Експлоатация на стари слаби шифри RC2-40-CBC в стари P12 файлове.
  • Изтичане на декриптирани частни ключове от незащитени буфери в паметта.

Най-добри практики за защита: Винаги използвайте силни пароли и модерно AES-256 криптиране с PBKDF2/SHA-256 за P12 файлове.

Исторически произход и етапи

2014IETF публикува RFC 7292, стандартизирайки съвременния PKCS #12 v1.1 с AES криптиране.
2000Apple macOS Keychain и Microsoft Windows стандартизират PKCS #12 за транспортиране на потребителски цифрови самоличности.
1999RSA Laboratories публикува PKCS #12 v1.0, с който заменя по-ранния формат PFX на Microsoft.

Основни предимства

  • Пакет „всичко в едно": обединява частния ключ, публичния сертификат и пълната верига от междинни CA сертификати в един сигурен файл.
  • Криптиране, защитено с парола: частните ключове се криптират с помощта на AES-256 или 3DES, което ги прави безопасни за прехвърляне.
  • Стандартен формат за клиентски сертификат при удостоверяване в уеб браузър и за профили за подписване на код за разработчици на Apple iOS.

Технически ограничения и минуси

  • Изисква парола за извличане: забравянето на паролата прави частния ключ завинаги невъзстановим.
  • Старите P12 файлове използват слаби алгоритми за криптиране като 3DES или RC2, които задействат предупреждения в съвременния OpenSSL 3.0.
  • Двоичният формат не може да бъде инспектиран визуално без инструменти за криптографско извличане.

Интересни технически факти

  • Разширенията .p12 и .pfx се използват за файлове PKCS #12, но конвенциите зависят от софтуера; проверете изискванията на приложението, което ще получава файла.
  • Сертификатите и профилите за осигуряване за разработчици на Apple iOS се разпространяват като .p12 файлове за подписване на приложения за iPhone.
  • OpenSSL 3.0 маркира остарелите алгоритми PKCS#12 (RC2-40-CBC) като deprecated, което налага флага '-legacy' за отваряне на стари P12 файлове.

Често задавани технически въпроси

Каква е разликата между .p12 и .pfx?

Няма разлика. .pfx е предишният формат на Microsoft, който е стандартизиран от лабораториите RSA като PKCS #12 (.p12). Днес и двете разширения се отнасят до абсолютно същия формат.

Как мога да извлека частния ключ от .p12 файл?

Можете да извлечете частния ключ и публичния сертификат в чисти .pem файлове за секунди, като използвате File2File.app директно във вашия уеб браузър.

Защо моят P12 файл се нуждае от парола?

Тъй като P12 файловете съдържат вашия чувствителен частен ключ, те са криптирани с парола, за да се предотврати кражбата на вашата цифрова самоличност от неоторизирани лица.