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

IETF Стандарт

PKCS #12 (P12, также известный как PFX) - это зашифрованный, защищенный паролем формат архива, предназначенный для безопасного хранения и передачи закрытых ключей вместе с соответствующими им открытыми сертификатами X.509 и цепочками центров сертификации.

Конвертировать из P12 в PEM

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

Анализ и метаданные

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

Выберите или перетащите файлы сюда

100% конфиденциальное преобразование в браузере - файлы никогда не покидают ваше устройство

или вставьте Ctrl+V
Гарантия конфиденциальности без передачи по сети: 0 байт загружено на внешние серверы. Вся обработка выполняется локально в песочнице вашего браузера.

Сигнатура заголовка на уровне байтов (Magic Bytes)

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

HEX-СИГНАТУРА (СМЕЩЕНИЕ 0):

30 82

ПРЕДСТАВЛЕНИЕ ASCII: 0\x82

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

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

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

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

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

Типичные режимы повреждения и руководство по восстановлению в HEX

Ошибка извлечения: 'Mac verify error: invalid password' несмотря на ввод правильного пароля.

Первопричина: Настройки по умолчанию в OpenSSL 3.0 отклоняют устаревшие алгоритмы шифрования 3DES/RC2 внутри старых файлов P12.

Восстановление: Выполните повторное шифрование с использованием современного алгоритма AES-256 с помощью инструмента сертификатов File2File.

Анализ безопасности и векторы атак на парсер

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

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

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

Защитные лучшие практики: Всегда используйте надежные пароли и современное шифрование AES-256 с алгоритмом PBKDF2/SHA-256 для файлов P12.

Исторические истоки и вехи

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

Ключевые преимущества и плюсы

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

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

  • Требуется пароль для извлечения: утеря пароля делает закрытый ключ навсегда не подлежащим восстановлению.
  • Устаревшие файлы P12 использовали слабые алгоритмы шифрования 3DES или RC2, которые вызывают предупреждения в современном OpenSSL 3.0.
  • Бинарный формат невозможно визуально проверить без инструментов криптографического извлечения.

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

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

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

В чем разница между .p12 и .pfx?

Разницы нет. .pfx был предшествующим форматом от Microsoft, который был стандартизирован лабораториями RSA Laboratories как PKCS #12 (.p12). Сегодня оба расширения относятся к абсолютно одному и тому же формату.

Как извлечь закрытый ключ из файла .p12?

Вы можете извлечь закрытый ключ и открытый сертификат в чистые файлы .pem за секунды с помощью File2File.app прямо в вашем веб-браузере.

Почему моему файлу P12 требуется пароль?

Поскольку файлы P12 содержат ваш конфиденциальный закрытый ключ, они зашифрованы паролем, чтобы злоумышленники не смогли похитить вашу цифровую личность.