Visão Geral sobre Assinaturas Digitais na ICP-Brasil – DOC-ICP-15 v.4.0 16
6.4.2.1 O padrão CMS é uma evolução do padrão Public-Key Cryptography Standards #7
(PKCS#7) [6]. A versão CMS utilizada como referência neste documento é a descrita na RFC 5652
[7]. O padrão CMS descreve uma estrutura para armazenamento de conteúdos (dados) assinados
digitalmente, conteúdos cifrados, conteúdos autenticados e conteúdos com resumos criptográficos.
Este documento trata especificamente do tipo de conteúdo Signed-data, relevante para o contexto de
assinatura digital.
6.4.2.2 O padrão CMS dispõe de ampla documentação e de variada gama de bibliotecas de software
disponíveis. É o padrão mais utilizado, atualmente, nas aplicações em nível mundial.
6.4.2.3 Quando usado para representar o conteúdo digital assinado, a inclusão do conteúdo digital
propriamente dito é opcional e, por este motivo, permite a existência de duas representações
diferentes:
a) estrutura assinada com conteúdo digital anexado (attached): neste caso, o conteúdo digital
está incluído na estrutura CMS;
b) estrutura assinada com conteúdo digital separado (detached): neste caso, o conteúdo digital
não está incluído na estrutura CMS.
6.4.2.4 Além dos atributos assinados (ou seja, que fazem parte do cálculo do resumo criptográfico,
sobre o qual a assinatura será gerada), o CMS permite adicionar atributos não assinados, bem como
gerar assinaturas em paralelo e assinaturas em série (ver Seção 6.9). O CMS não permite, todavia,
assinar partes de um documento, somente o documento como um todo.
6.4.2.5 O CMS Advanced Electronic Signature (CAdES) é uma extensão do padrão CMS, descrita
no documento ETSI TS 101 733 [8], criada com vistas a prover as assinaturas digitais de
informações que permitam sua validação por longo prazo.
6.4.2.6 CAdES-ICP-Brasil é toda assinatura no formato CAdES que, além de seguir os requisitos de
Assinatura Digital ICP-Brasil, descritas na Seção 4.1, possui um identificador de política de
assinatura pertencente ao conjunto de políticas de assinatura divulgadas e aprovadas conforme
regulamento editado por instrução normativa da AC Raiz que defina os requisitos das políticas de
assinatura digital na ICP-Brasil [5].
6.4.2.7 A validação de uma assinatura digital de acordo com o padrão CAdES-ICP-Brasil deve
exigir que essa assinatura esteja de acordo com uma das políticas de assinatura aprovadas pela ICP-
Brasil (ver Seção 6.6).
6.4.2.8 A incorporação desses dados de validação às assinaturas digitais leva à criação de diferentes
formatos de assinaturas. Para cada formato, existe um conjunto de atributos de caráter obrigatório,
sendo permitida a incorporação de atributos não obrigatórios à assinatura, conforme a necessidade
de cada signatário, organização, aplicação ou negócio.
6.4.3 XMLDSig Advanced Electronic Signature
6.4.3.1 Em XML utiliza-se o XMLSignature [9] para a representação de assinaturas digitais, cuja
especificação é mantida pelas organizações World Wide Web Consortium (W3C) e Internet
Engineering Task Force - IETF.
6.4.3.2 Sua última especificação é dada pela RFC 3275 [10]. Em comparação ao CMS, o
XMLSignature apresenta as vantagens da própria linguagem XML, que é extensível, possibilitando
a criação de tags de um modo arbitrário, desde que as regras de aninhamento sejam respeitadas. É