PKCS#7
Что такое PKCS#7?
PKCS#7Бинарный формат для упаковки подписанных и/или зашифрованных данных, стандартизованный IETF как Cryptographic Message Syntax (CMS) в RFC 5652.
PKCS#7, изначально определённый RSA Laboratories, описывает, как помещать произвольные данные в криптографически защищённые структуры: SignedData, EnvelopedData, EncryptedData, DigestedData и AuthenticatedData. IETF переиздал стандарт как Cryptographic Message Syntax (CMS) в RFC 5652 и развивает его дальше (например, RFC 8933 о защите алгоритмов). CMS кодируется в ASN.1/DER и лежит в основе S/MIME (RFC 8551), подписи кода (Authenticode, нотаризация Apple), меток времени (RFC 3161), подписи документов (PAdES) и форматов хранения сертификатов. Распространены отделённые подписи (.p7s) и пакеты с одними лишь сертификатами (.p7b/.p7c). Современные алгоритмы поддерживаются через RFC 8419 (EdDSA), 5754 (SHA-2) и 8769 (AES-GCM).
● Примеры
- 01
Письмо, подписанное S/MIME, чья подпись передаётся в отдельном .p7s SignedData.
- 02
Windows-бинарь, подписанный Authenticode, содержит структуру PKCS#7 SignedData в PE-заголовке.
● Частые вопросы
Что такое PKCS#7?
Бинарный формат для упаковки подписанных и/или зашифрованных данных, стандартизованный IETF как Cryptographic Message Syntax (CMS) в RFC 5652. Относится к категории Криптография в кибербезопасности.
Что означает PKCS#7?
Бинарный формат для упаковки подписанных и/или зашифрованных данных, стандартизованный IETF как Cryptographic Message Syntax (CMS) в RFC 5652.
Как работает PKCS#7?
PKCS#7, изначально определённый RSA Laboratories, описывает, как помещать произвольные данные в криптографически защищённые структуры: SignedData, EnvelopedData, EncryptedData, DigestedData и AuthenticatedData. IETF переиздал стандарт как Cryptographic Message Syntax (CMS) в RFC 5652 и развивает его дальше (например, RFC 8933 о защите алгоритмов). CMS кодируется в ASN.1/DER и лежит в основе S/MIME (RFC 8551), подписи кода (Authenticode, нотаризация Apple), меток времени (RFC 3161), подписи документов (PAdES) и форматов хранения сертификатов. Распространены отделённые подписи (.p7s) и пакеты с одними лишь сертификатами (.p7b/.p7c). Современные алгоритмы поддерживаются через RFC 8419 (EdDSA), 5754 (SHA-2) и 8769 (AES-GCM).
Как защититься от PKCS#7?
Защита от PKCS#7 обычно сочетает технические меры и операционные практики, как описано в определении выше.
Какие есть другие названия PKCS#7?
Распространённые альтернативные названия: CMS, Cryptographic Message Syntax, p7s, p7b.
● Связанные термины
- cryptography№ 065
ASN.1
Abstract Syntax Notation One — стандарт ITU-T серии X.680, описывающий структуры данных, применяемые в криптографии и телекоме, независимо от языка программирования.
- cryptography№ 811
Формат PEM
Текстовое кодирование криптографических объектов (ключей, сертификатов, CRL), определённое в RFC 7468 — оно оборачивает Base64-представление DER строками BEGIN и END.
- cryptography№ 830
PKCS#12
Защищённый паролем файловый формат (.pfx / .p12), объединяющий закрытый ключ с цепочкой сертификатов; стандартизован в RFC 7292.
- cryptography№ 321
Цифровая подпись
Криптографический механизм с открытым ключом, доказывающий подлинность, целостность и невозможность отказа от авторства сообщения или документа.
- network-security№ 955
S/MIME
Стандарт IETF для сквозного подписания и шифрования MIME-сообщений с использованием сертификатов X.509, выданных публичным или корпоративным CA.