+/=. Шестнадцатеричныйciphertext использует0-9иa-f, по два символа в байте. Если вы загружаете двоичный файл .enc, селектор кодировки автоматически игнорируется.1️⃣ Что такое PEM?
PEM (Почта с улучшенной конфиденциальностью) — это текстовый формат, используемый для хранения и передачи ключей и сертификатов. Он кодирует двоичные данные DER в формате Base64 и обертывает их строками верхнего и нижнего колонтитула, такими как-----НАЧАЛО ЧАСТНОГО КЛЮЧА-----и-----КОНЕЦ ЧАСТНОГО КЛЮЧА-----. Общие этикетки включают в себяПУБЛИЧНЫЙ КЛЮЧ, ЧАСТНЫЙ КЛЮЧиСЕРТИФИКАТ. Поскольку это простой текст, PEM легко копировать, вставлять и обмениваться между системами.
2️⃣ Какие еще форматы вы можете увидеть?
- DER: необработанный двоичный формат, который напрямую хранит структуры ASN.1 и распространен в Java или инструментах сертификации.
- HEX: шестнадцатеричное строковое представление байтов DER, полезное для отладки или внедрения байтовых данных в код.
- Base64 без заголовков: полезные данные DER, закодированные как Base64, но без оболочек PEM, часто используемые в форматах компактной конфигурации.
- PKCS#12 (PFX): двоичный контейнер, который может упаковывать вместе открытый и закрытый ключи, обычно защищенный паролем.
3️⃣ Когда следует использовать каждый формат?
- PEM: наиболее универсальный выбор для OpenSSL, веб-серверов, обмена API и ручной обработки ключей.
- DER: полезно, когда двоичное хранилище является предпочтительным или требуется инструментами, специфичными для платформы.
- HEX: удобен для отладки и в ситуациях, когда важна проверка на уровне байтов.
- Base64 без заголовков: полезно, когда окружающий формат не поддерживает оболочки PEM и вам нужна компактная текстовая полезная нагрузка.
- PKCS#12: лучше всего использовать, когда вам нужно перенести сертификат и закрытый ключ вместе с защитой паролем.