PKCS#7
¿Qué es PKCS#7?
PKCS#7Formato binario para empaquetar datos firmados y/o cifrados, estandarizado por el IETF como Cryptographic Message Syntax (CMS) en el RFC 5652.
PKCS#7, definido originalmente por RSA Laboratories, describe como envolver datos arbitrarios en estructuras criptograficamente protegidas: SignedData, EnvelopedData, EncryptedData, DigestedData y AuthenticatedData. El IETF lo republico como Cryptographic Message Syntax (CMS) en el RFC 5652, con actualizaciones como el RFC 8933. CMS se codifica en ASN.1/DER y es la base de S/MIME (RFC 8551), firma de codigo (Authenticode, notarizacion de Apple), sellado de tiempo (RFC 3161), firma de documentos (PAdES) y paquetes de certificados. Las firmas independientes (.p7s) y los paquetes de certificados (.p7b/.p7c) son los usos mas frecuentes. CMS admite algoritmos modernos mediante los RFC 8419 (EdDSA), 5754 (SHA-2) y 8769 (AES-GCM).
● Ejemplos
- 01
Correo firmado con S/MIME cuya firma se transporta como un .p7s SignedData independiente.
- 02
Un binario firmado con Authenticode incorpora un SignedData PKCS#7 en la cabecera PE.
● Preguntas frecuentes
¿Qué es PKCS#7?
Formato binario para empaquetar datos firmados y/o cifrados, estandarizado por el IETF como Cryptographic Message Syntax (CMS) en el RFC 5652. Pertenece a la categoría de Criptografía en ciberseguridad.
¿Qué significa PKCS#7?
Formato binario para empaquetar datos firmados y/o cifrados, estandarizado por el IETF como Cryptographic Message Syntax (CMS) en el RFC 5652.
¿Cómo funciona PKCS#7?
PKCS#7, definido originalmente por RSA Laboratories, describe como envolver datos arbitrarios en estructuras criptograficamente protegidas: SignedData, EnvelopedData, EncryptedData, DigestedData y AuthenticatedData. El IETF lo republico como Cryptographic Message Syntax (CMS) en el RFC 5652, con actualizaciones como el RFC 8933. CMS se codifica en ASN.1/DER y es la base de S/MIME (RFC 8551), firma de codigo (Authenticode, notarizacion de Apple), sellado de tiempo (RFC 3161), firma de documentos (PAdES) y paquetes de certificados. Las firmas independientes (.p7s) y los paquetes de certificados (.p7b/.p7c) son los usos mas frecuentes. CMS admite algoritmos modernos mediante los RFC 8419 (EdDSA), 5754 (SHA-2) y 8769 (AES-GCM).
¿Cómo defenderse de PKCS#7?
Las defensas contra PKCS#7 combinan habitualmente controles técnicos y prácticas operativas, como se detalla en la definición.
¿Cuáles son otros nombres para PKCS#7?
Nombres alternativos comunes: CMS, Cryptographic Message Syntax, p7s, p7b.
● Términos relacionados
- cryptography№ 065
ASN.1
Abstract Syntax Notation One: estandar ITU-T (serie X.680) que describe estructuras de datos usadas en criptografia y telecomunicaciones de forma independiente del lenguaje.
- cryptography№ 811
Formato PEM
Codificacion textual de objetos criptograficos (claves, certificados, CRL) definida en el RFC 7468 que envuelve DER en Base64 con encabezados BEGIN y END.
- cryptography№ 830
PKCS#12
Formato de archivo protegido por contrasena (.pfx / .p12) que agrupa una clave privada con su cadena de certificados, estandarizado en el RFC 7292.
- cryptography№ 321
Firma digital
Mecanismo criptográfico de clave pública que demuestra la autenticidad, integridad y no repudio de un mensaje o documento.
- network-security№ 955
S/MIME
Estándar IETF para firmar y cifrar de extremo a extremo mensajes MIME mediante certificados X.509 emitidos por una CA pública o corporativa.