Requisitos da ICP-Brasil para assinaturas digitais (DOC-ICP-15.01)

Requisito Release Observações
4.1.1 Formatos de assinatura digital admitidos na ICP-Brasil 0.2 Deverão ser suportados igualmente os perfis genéricos CAdES-BES e CAdES-T
4.1.2 a 4.1.8 Características dos perfis de assinatura 0.2 Ver documento Implementação das políticas de assinatura
4.2.1.1 Manipulação de certificados digitais da ICP-Brasil 0.1
4.2.1.2 Proteção contra falsificação e alterações 0.1 Os conteúdos são carregados em memória antes da assinatura e salvos num envelope CMS diretamente, sem novo acesso ao disco. Todas as informações necessárias à verificação da assinatura são incluídas no envelope CMS, em estrita conformidade com as especificações, assegurando que quaisquer alterações no conteúdo invalidem a assinatura.
4.2.1.2 Apresentação dos conteúdos assinados 0.3 A versão 0.1 não impede a visualização do conteúdo assinado; no entanto, o próprio software ainda não dispõe de mecanismo para extração e apresentação do conteúdo assinado.
4.2.2.1 A aposição de uma assinatura digital ICP-Brasil DEVE referir-se inequivocamente a uma pessoa física ou jurídica e ao documento eletrônico ao qual é aposta. 0.1 O atendimento estrito à especificação CMS assegura o cumprimento deste requisito, em especial pela inclusão do campo SignerIdentifier. Além disso, todos os certificados utilizados pelos assinantes são incluídos no documento CMS.
4.2.2.2 A assinatura digital ICP-Brasil será reconhecida quando aposta durante o prazo de validade do certificado em que está baseada e respeitadas as restrições indicadas neste. 0.1 Antes da geração da assinatura é verificada a conformidade do certificado do assinante às regras da ICP-Brasil. Essa verificação é efetuada também na conferência de um documento assinado. Adicionalmente, o certificado é incluído no documento CMS.
4.2.2.3 A assinatura digital ICP-Brasil aposta após a expiração ou revogação do certificado em que está baseada ou que não respeite as restrições indicadas neste equivale à ausência de assinatura. 0.2 Na release 0.1 a revogação do certificado é verificada antes da aposição da assinatura e quando o documento é conferido. No entanto, as LCR's obtidas não são incluídas no documento CMS, implementação planejada para a release 0.2.
4.2.2.4 A assinatura de documentos eletrônicos com certificados ICP-Brasil exige o uso de componentes de aplicação de assinatura que indiquem a produção de uma assinatura digital ICP-Brasil e permitam a identificação do documento a que a assinatura se refere. 0.2 Na release 0.1 o documento assinado é incluído no envelope CMS. Evidentemente, as políticas de assinatura da ICP-Brasil ainda não estão implementadas.
4.2.2.5 Os componentes de aplicação de assinatura conterão mecanismos que demonstrem: a) a que documento a assinatura se refere; b) se o documento não foi modificado; c) a que titular de certificado está vinculado o documento; e d) o conteúdo do certificado em que está baseada a assinatura. 0.3 Na release 0.1 esses requisitos estão implícitos no mecanismo de verificação. No entanto, o feedback ao operador não apresenta todas essas informações nem fornece mecanismo para exibir o conteúdo assinado.
4.2.2.6 A menos que explicitamente mencionado, as regras definidas nesta seção referentes ao processo de geração de assinatura digital aplicam-se à geração de assinaturas digitais simples, co-assinaturas digitais e contra-assinaturas digitais. 0.1 Contra-assinaturas não são suportadas pela aplicação.
4.2.2.7 Quando aplicável, os requisitos para considerar um certificado digital válido PODEM ser verificados antes da geração da assinatura digital. Entretanto, caso haja algum problema ou não conformidade com o certificado digital do signatário que foi verificado, exceto no caso de expiração, cabe ao contexto, aplicação ou negócio decidir se o processo de geração da assinatura digital vai ser executado ou não. 0.2 Na release 0.1 é efetuada verificação pelo menos uma vez antes de ser utilizado o certificado digital. Casos de inconformidade são relatados ao operador. No entanto, a função de assinatura não é bloqueada em caso de expiração.
4.2.2.8 Caso seja o desejo do signatário, o processo de geração de assinatura digital DEVE permitir que o conteúdo digital seja visualizado antes e depois da realização da(s) assinatura(s) digital(is). Além disso, o conteúdo digital visualizado DEVE corresponder ao conteúdo digital assinado, ou seja, o conteúdo digital que foi visualizado pelo signatário DEVE ser o conteúdo submetido ao processo de geração de assinatura digital. 0.3
4.2.2.9 Um documento eletrônico a ser assinado DEVE conter apenas objetos estáticos e todos os componentes necessários devem estar contidos no documento eletrônico, isto é, ele NÃO DEVE conter referências a recursos internos ou externos que possam alterar a visualização do conteúdo assinado ao longo do tempo. Quando for necessário realizar a assinatura digital sobre um documento eletrônico cuja visualização possa se alterar ao longo do tempo, é OBRIGATÓRIO realizar sua conversão para um formato estático. 0.1 A aplicação somente assina conteúdos armazenados em disco.
4.2.2.10 Os processos de geração de assinatura digital DEVEM ser capazes de incluir e manipular atributos assinados e não assinados definidos conforme a política de assinatura adotada. 0.2 Para os atributos suportados, ver documento Implementação das políticas de assinatura.
4.2.11 a 4.2.14 Implementação das políticas de assinatura 0.2 Os dados referentes aos atributos incluídos deverão ser sempre incorporados pelo signatário.
4.2.3.1 Toda assinatura digital ICP-Brasil DEVE ser passível de validação. Para verificar a validade de uma assinatura digital ICP-Brasil o verificador DEVE utilizar: a) o documento eletrônico para o qual a assinatura digital ICP-Brasil foi criada; b) a assinatura digital ICP-Brasil do documento eletrônico; c) o certificado digital do signatário e sua correspondente cadeia de certificação; d) elementos utilizados para verificação do estado de revogação dos certificados da cadeia de certificação; e) a política de assinatura, cujo identificador encontra-se na assinatura digital ICP-Brasil; f) um dos algoritmos definidos no DOC-ICP-01.01 [21]. 0.2 Apenas o item e requer implementação.
4.2.3.2 Para validar uma assinatura digital ICP-Brasil, realizada sobre um documento eletrônico com base nos dados mencionados no parágrafo 4.2.3.1, é necessário assegurar-se que: a) o estado criptográfico da assinatura digital seja válido, o que envolve: i. autenticação e/ou autoria: pela decifração da assinatura digital gerada sobre o conteúdo digital utilizando a chave criptográfica assimétrica pública contida no certificado digital do signatário; ii. integridade: por comparação de resultados hash , mostrando que o conteúdo digital não foi alterado desde que sua assinatura digital foi criada pelo signatário. b) o certificado digital correspondente à chave privada utilizada para geração da assinatura seja válido, o que envolve a verificação de: i. observância aos requisitos definidos nos itens 4.2.2.2 e 4.2.2.3; ii. validade da assinatura digital da entidade que emitiu o certificado do signatário. 0.1
4.2.3.3 A validade de uma assinatura digital ICP-Brasil NÃO DEVE ser verificada se o verificador não dispuser dos dados listados no item 4.2.3.1, acima. 0.1
4.2.3.4 a 4.2.3.8 A validação de uma assinatura digital 0.2
4.2.3.9 Caso uma entidade específica (por exemplo, uma aplicação de assinatura digital para contratos eletrônicos de câmbio) necessite gerar a última co-assinatura digital do processo de negócio ou aplicação, então tal entidade DEVE realizar o processo de verificação sobre sua assinatura digital gerada e também sobre as assinaturas anteriores. Neste caso, a verificação de revogação do certificado digital pelo primeiro signatário e pelos signatários intermediários PODE ser opcional. 0.1 Sempre que uma co-assinatura é realizada, a validade de todas as assinaturas anteriores é compulsoriamente realizada.
4.2.3.10 Um conteúdo digital PODE estar armazenado de forma particionada em um repositório interno de um ambiente computacional. A aplicação somente assina documentos na forma de arquivos armazenados em disco.
4.2.3.11 O término do processo de validação de assinatura digital DEVE mostrar como resultado o estado de cada assinatura avaliada em termos de válido, inválido e indeterminado, identificando também os signatários. Além disso, caso algum certificado digital de assinatura apresente qualquer não conformidade, o sistema DEVE gerar um alerta ao verificador, ressaltando quais são os problemas encontrados. 0.1
4.2.3.12 Com relação aos instantes de tempo envolvidos numa assinatura digital, e considerando o disposto no item 5.12 do DOC-ICP-15, as seguintes restrições temporais DEVEM ser satisfeitas no processo de validação de uma assinatura digital 0.1 A assinatura é verificada contra a expiração e revogação do certificado digital do assinante.
4.2.4 Os processos de assinatura digital DEVEM permitir, quando for do desejo dos signatários ou de alguma parte interessada envolvida nos processos, a visualização e/ou extração do conteúdo digital assinado. 0.3
4.3.5.1 Para assinaturas digitais em lote DEVEM ser aplicados os mesmos requisitos definidos para os processos relacionados ao ciclo de vida da assinatura individual. 0.3 A release 0.1 não fornece facilidades para assinaturas de múltiplos documentos
4.3.5.2 Quando for necessário realizar assinaturas digitais em lote DEVEM ser estabelecidos métodos ou procedimentos seguros de acesso à chave privada do signatário de tal forma que permitam o uso contínuo e seguro dessa chave durante a realização da assinatura digital em cada conteúdo digital pertencente a um lote. 0.3
4.3.5.3 No caso das assinaturas digitais em lote, por questões de pragmatismo, a chave assimétrica privada do signatário PODE ser habilitada somente uma vez (por exemplo, com a inserção do PIN) para a geração das assinaturas digitais em todos os conteúdos do lote. 0.3
4.5 Algoritmos admitidos para assinaturas digitais na ICP-Brasil 0.1 Adicionalmente, a aplicação permite (e sempre verifica) assinaturas digitais com DSA com SHA-1 e RSA com MD5.