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. |