Em criptografia, "PKCS # 7: sintaxe de mensagem criptográfica" (também conhecida como CMS) é uma sintaxe padrão para armazenar dados assinados e/ou criptografados. PKCS #7 é um dos padrões da família de padrões chamados PKCS (public-key cryptography standards - padrões de criptografia de chave pública) criado pelos laboratórios RSA. A versão mais recente, 1.5, está disponível como RFC 2315.IETF RFC 2315 - Padrões de criptografia de chave pública (PKCS) nº 7: Especificação de sintaxe de mensagem criptográfica versão 1.5, março de 1998

Uma atualização para PKCS #7 é descrita na RFC 2630, IETF RFC 2630 - Sintaxe de mensagem criptográfica, junho de 1999 que se tornou obsoleta pela RFC 3369, IETF RFC 3369 - Sintaxe de mensagem criptográfica (CMS), agosto de 2002 que se tornou obsoleta pela RFC 3852, IETF RFC 3852 - Sintaxe de mensagem criptográfica (CMS), julho de 2004 que se tornou obsoleta pela RFC 5652. IETF RFC 5652 - Sintaxe de mensagem criptográfica (CMS), setembro de 2009

Os arquivos PKCS #7 podem ser armazenados tanto no formato DER bruto quanto no formato PEM. O formato PEM é igual ao formato DER, mas contido na codificação Base64 e colocado entre -----BEGIN PKCS7----- e -----END PKCS7-----. O Windows usa a extensão de nome de arquivo ".p7b" https://extension.nirsoft.net/p7b para ambas as codificações.

Um uso típico de um arquivo PKCS #7 seria para armazenar certificados e/ou CRLs (listas de revogação de certificados).

Aqui está um exemplo de como primeiro fazer o download de um certificado, em seguida, envolvê-lo em um arquivo PKCS #7 e, em seguida, ler esse arquivo:

$ echo '' | openssl s_client -connect example.org:443 -host example.org 2>/dev/null | openssl x509 > example.org.cer 2>/dev/null

$ openssl crl2pkcs7 -nocrl -certfile example.org.cer -out example.org.cer.pem.p7b

$ openssl pkcs7 -in example.org.cer.pem.p7b -noout -print_certs subject=C = US, ST = California, L = Los Angeles, O = Internet Corporation for Assigned Names and Numbers, OU = Technology, CN = www.example.org issuer=C = US, O = DigiCert Inc, CN = DigiCert SHA2 Secure Server CA

Ligações externas

openssl-pkcs7

Categoria:Padrões de criptografia