Что такое файл PFX?
Формат файла .pfx, сокращённо от Обмен личной информацией, в основном используется для безопасного хранения сертификатов, закрытых ключей и связанных публичных сертификатов в одном зашифрованном файле. Он обычно применяется в средах Windows для управления SSL/TLS сертификатами для приложений, веб‑серверов и почтовых клиентов.
Обзор файлов PFX
- Формат: Файлы PFX основаны на стандарте PKCS#12 (Public Key Cryptography Standards #12).
- Содержание: Они хранят:
- Закрытые ключи (необходимы для расшифровки)
- Публичные сертификаты (подтверждают личность владельца сертификата)
- Промежуточные сертификаты (используются для проверки цепочек сертификатов)
- Шифрование: файлы PFX защищены паролем и зашифрованы для обеспечения безопасности конфиденциальной информации.
Использование файлов PFX
- SSL/TLS сертификаты: часто файл .pfx используется для установки SSL/TLS сертификатов на веб‑серверы, такие как Microsoft IIS.
- Шифрование электронной почты и цифровая подпись: почтовые клиенты, такие как Microsoft Outlook, используют файлы PFX для защищённой электронной переписки.
- Подпись кода: разработчики могут использовать файлы PFX для подписи кода или программного обеспечения с целью подтверждения подлинности.
Что такое PKCS #12?
PKCS #12 (Public Key Cryptography Standards #12) — это безопасный контейнерный формат для объединения криптографических объектов, таких как закрытые ключи и сертификаты, в один файл. Часто используется в настройках SSL/TLS, он позволяет безопасно передавать как сертификат, так и его закрытый ключ, обычно с расширениями .pfx или .p12. Файлы PKCS #12 защищены паролем и зашифрованы, обеспечивая безопасный способ управления конфиденциальной информацией на разных платформах. Этот формат особенно популярен для SSL/TLS сертификатов, подписи кода и защиты электронной почты, где конфиденциальность и целостность ключей и сертификатов критически важны для аутентификации и шифрования.
Ключевые характеристики файлов PFX
| Характеристика | Описание |
|---|---|
| Расширение файла | .pfx (и функционально взаимозаменяемый с .p12) |
| Основные варианты | Синтаксис обмена персональной информацией PKCS#12 (v1.0 / RFC 7292), устаревший формат Microsoft PFX |
| Тип формата | Защищённый паролем, бинарный криптографический архивный контейнер |
| Основное применение | Перенос и резервное копирование SSL/TLS сертификатов вместе с закрытыми ключами, развертывание сертификатов для подписи кода и обеспечение идентификаций клиентской аутентификации S/MIME |
| Основная функция | Зашифрованное объединение публичных сертификатов X.509, полных промежуточных цепочек доверия и приватных криптографических ключей в одном файле, защищённом паролем |
| Профиль безопасности | Контейнер высокой безопасности; требует надёжных паролей для защиты от офлайн-атак словарём; никогда не должен быть публично распространён или закоммичен в систему контроля версий из‑за встроенных приватных ключей |
| Совместимость | Нативно поддерживается Windows Certificate Manager, Microsoft IIS, Exchange и macOS Keychain; полностью управляется в Linux и Unix через OpenSSL |
Сравнение: PFX и CER
| Функция / Показатель | Файл PFX (.pfx) | Файл CER / CRT (.cer) |
|---|---|---|
| Стандарт формата | Криптографический архив PKCS#12 | Стандартный цифровой сертификат X.509 |
| Включение закрытого ключа | Да (зашифровано внутри контейнера) | Нет (хранит только данные публичного сертификата) |
| Механизм защиты | Защищено паролем с использованием симметричного шифрования (например, AES или 3DES) | Обычно без шифрования; доступно как обычный текст или публичные бинарные данные |
| Область распределения | Внутренний и конфиденциальный: Хранится строго на сервере хостинга; никогда не передаётся внешним сторонам | Публичный: Распространяется свободно веб-браузерам, клиентам и зависимым сторонам во время рукопожатий |
| Типичные сценарии использования | Миграция серверов, полное резервное копирование SSL‑учётных данных, подпись кода и привязка к веб‑серверу IIS | Проверка идентичности, установка корневых/промежуточных доверенных якорей CA и проверка токенов |
| Кодировка файла | Только двоичный формат | Бинарный (DER) или ASCII, закодированный в Base64 (PEM) |
В то время как файл .cer представляет собой публичную идентификационную карту, которую вы открыто делитесь с подключающимися клиентами, файл .pfx — это полностью закрытый сейф, содержащий как эту идентификационную карту, так и секретный ключ, необходимый для подтверждения владения.
Как открыть файл PFX?
Вы можете открыть или использовать файлы PFX следующими способами.
- Windows Certificate Manager: Вы можете импортировать файлы PFX в Windows, открыв Certificate Manager через
certmgr.msc. - Command Line: В Windows вы можете использовать команду
certutilдля работы с файлами .pfx. - Third-Party Tools: Программы, такие как OpenSSL, могут конвертировать файлы PFX в другие форматы (например, PEM).
Конвертация файлов PFX
Чтобы конвертировать файл .pfx в другой формат, например .pem, вы можете использовать такие инструменты, как OpenSSL:
openssl pkcs12 -in file.pfx -out file.pem -nodes
Соображения безопасности
Поскольку файлы .pfx содержат конфиденциальную информацию, храните их в безопасном месте, желательно используя надёжные пароли и безопасные решения для хранения.
Часто задаваемые вопросы
| Вопрос | Ответ |
|---|---|
| Какова основная функция файла .pfx? | Он надёжно объединяет SSL/TLS‑сертификат, его промежуточную цепочку и соответствующий закрытый ключ в один зашифрованный файл. |
| Является ли файл .pfx функционально идентичным файлу .p12? | Да, оба расширения реализуют стандарт PKCS#12 и обычно могут взаимозаменяться современными криптографическими инструментами. |
| Можно ли безопасно отправлять файл .pfx по публичным или незашифрованным каналам? | Нет, потому что он содержит ваш секретный закрытый ключ; его раскрытие может позволить злоумышленникам выдавать себя за ваш домен или подписывать вредоносный код. |
| Как я могу конвертировать файл .pfx в читаемые файлы сертификата и ключа? | Вы можете использовать инструменты командной строки OpenSSL, чтобы извлечь публичный сертификат и расшифрованный закрытый ключ в отдельные файлы в формате PEM. |
| Почему Windows запрашивает пароль при импорте файла .pfx? | Контейнер зашифрован с использованием паролем, чтобы предотвратить несанкционированное извлечение встроенного закрытого ключа. |