Что такое формат файла P7S?
Файл .p7s - это вложение к электронному письму, защищенное цифровой подписью. Он не содержит самого текста письма - он несет в себе только криптографическую подпись и сертификат X.509 подписавшего, в то время как тело сообщения остается отдельной, читаемой частью письма.
Цифровая подпись гарантирует, что письмо не было изменено в процессе доставки, и подтверждает, что отправитель именно тот, за кого себя выдает. Таким образом, исключается возможность подмены сообщения третьей стороной в случае его перехвата.
Поддержка цифровой подписи
Электронные сообщения подписываются цифровой подписью с использованием технологии PKCS #7 (Public-Key Cryptography Standard), которая в настоящее время стандартизирована IETF как CMS (Cryptographic Message Syntax, RFC 5652). Файл .p7s хранится в бинарной кодировке DER или, реже, в виде текста PEM Base64, начинающегося с -----BEGIN PKCS7-----. Его MIME-тип - application/pkcs7-signature.
Чтобы проверить такое сообщение, пользователю необходимо использовать почтовый клиент, поддерживающий этот стандарт. Большинство почтовых приложений, включая Microsoft Outlook, Apple Mail и Mozilla Thunderbird, распознают цифровые подписи автоматически. Если почтовый клиент не поддерживает S/MIME, файл .p7s отображается как видимое вложение с именем smime.p7s, содержащее необработанные бинарные данные или данные Base64, а не читаемый текст. Чтобы просмотреть его содержимое из командной строки, используйте openssl pkcs7 -in smime.p7s -print_certs -noout.
Тесно связанным форматом является .p7m, который объединяет и сообщение, и подпись в единый подписанный или зашифрованный пакет.
Безопасность и защита
РИСК: LOWФайл p7s сам по себе безвреден - это данные подписи/сертификата без исполняемого кода, и он защищает вас, доказывая подлинность и неизменность сообщения или документа. Реальные риски связаны с интерпретацией, а не с заражением: (1) «подписано» не означает «зашифровано» - тело подписанного письма все равно передается в открытом виде; (2) действительная подпись доказывает личность отправителя и целостность, но НЕ то, что контент заслуживает доверия (злоумышленник с валидным сертификатом может подписать вредоносное сообщение); (3) проверка ценна лишь настолько, насколько надежна цепочка доверия сертификата, поэтому значок «валидно» от недоверенного/самоподписанного сертификата мало что значит. Относитесь к неожиданному smime.p7s как к признаку того, что письмо легитимно подписано, а затем оценивайте отправителя по самому сообщению.
Детали формата
в двух словахПрограммы, открывающие файлы P7S
Технические подробности
глубокая спецификация| Полное название | Цифровая подпись PKCS #7 / S/MIME |
| MIME-тип | application/pkcs7-signature |
| Бинарная кодировка | DER (ASN.1 Distinguished Encoding Rules) - создает компактный бинарный файл |
| Текстовый вариант | PEM: данные Base64 между маркерами -----BEGIN PKCS7----- и -----END PKCS7----- |
| Магические байты (DER) | 0x30 0x82 со смещением 0 - тег ASN.1 SEQUENCE, за которым следует 2-байтовое поле длины |
| Структура данных | ASN.1 SEQUENCE, инкапсулирующая объект CMS SignedData, как определено в RFC 5652 |
| Типичное имя файла в почте | smime.p7s - фиксированное имя, предписанное стандартом S/MIME |
| Содержимое | Значение криптографической подписи плюс один или несколько встроенных сертификатов подписавшего X.509 v3 |
| Тип подписи | Отсоединенная (Detached) - тело письма остается в отдельной части MIME, читаемой без файла .p7s |
| Алгоритмы подписи | RSA, DSA, ECDSA - определяются типом ключа в сертификате X.509 подписавшего |
| Алгоритмы хеширования | SHA-256, SHA-384, SHA-512; SHA-1 устарел согласно RFC 8419 и RFC 9325 |
| Формат сертификата | X.509 v3; полная цепочка сертификатов может быть встроена для поддержки автономной проверки |
| Управляющая спецификация | CMS RFC 5652, заменяющая оригинальные PKCS #7 v1.5 и RFC 2630 |
| Модель доверия | PKI на основе CA - валидность подписи требует цепочки сертификатов до доверенного центра сертификации |
| Выпущен | PKCS #7 v1.5 (1993, RSA); S/MIME v2 RFC 2311 (1998); CMS RFC 5652 (2009) |
| Открыть стандартное | Да · без роялти |
| Спецификация | www.rfc-editor.org |
Конвертации P7S
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах P7S.