signer
signer copied to clipboard
Validação das CAs
Primeiro gostaria de parabenizar o projeto, muito bom mesmo!
Já utilizo o Signer para assinar documentos PDFs e tudo funciona quando utilizo um certificado que faz parte da cadeia ICP, mas surgiu a necessidade de assinar utilizando certificados emitidos por uma cadeia privada (que não faz parte da ICP).
Não encontrei uma forma de ignorar a validação mas olhei a CAManager o funcionamento do uso dos Providers que contém as AC, para fazer isso seria esse o caminho mesmo (com um ProviderCA) ou existe uma forma de ignorar essa validação da cadeia?
Estou interessado na mesma ideia, neste caso usar os certificados ICPEdu da RNP.
O objetivo do componente é suportar apenas ICP-Brasil. Mas é possível criar um componente a parte, que não terá validade legal. Como esse que é usado em ambiente de homologação do SERPRO: https://github.com/demoiselle/signer/tree/master/chain-icp-brasil-homolog
Olá Emerson, bom dia.
Ramon da UFMG.
A minha intenção é propor um Assinador/Verificador ICPEdu para a UFMG usar internamente.
Pesquisando aqui e ali, fiquei a par da Medida Provisória 2200-2 de 24 de agosto de 2001 (link http://www.planalto.gov.br/ccivil_03/MPV/Antigas_2001/2200-2.htm http://www.planalto.gov.br/ccivil_03/MPV/Antigas_2001/2200-2.htm) “Institui a Infra-Estrutura de Chaves Públicas Brasileira - ICP-Brasil, transforma o Instituto Nacional de Tecnologia da Informação em autarquia, e dá outras providências”, assim como o Decreto no 8.543 de 8 de outubro de 2015 (link http://www.planalto.gov.br/ccivil_03/_Ato2015-2018/2015/Decreto/D8539.htm http://www.planalto.gov.br/ccivil_03/_Ato2015-2018/2015/Decreto/D8539.htm) “Dispõe sobre o uso do meio eletrônico para a realização do processo administrativo no âmbito dos órgãos e das entidades da administração pública federal direta, autárquica e fundacional”, a Lei no 14.063 de 23 de setembro de 2020 (link http://www.planalto.gov.br/ccivil_03/_ato2019-2022/2020/lei/L14063.htm http://www.planalto.gov.br/ccivil_03/_ato2019-2022/2020/lei/L14063.htm) “Dispõe sobre o uso de assinaturas eletrônicas em interações com entes públicos, em atos de pessoas jurídicas e em questões de saúde e sobre as licenças de softwares desenvolvidos por entes públicos; e altera a Lei nº 9.096, de 19 de setembro de 1995, a Lei nº 5.991, de 17 de dezembro de 1973, e a Medida Provisória nº 2.200-2, de 24 de agosto de 2001” e, por fim, o Decreto no 10.543 de 13 de novembro de 2020 (link http://www.planalto.gov.br/ccivil_03/_Ato2019-2022/2020/Decreto/D10543.htm http://www.planalto.gov.br/ccivil_03/_Ato2019-2022/2020/Decreto/D10543.htm) “Dispõe sobre o uso de assinaturas eletrônicas na administração pública federal e regulamenta o art. 5º da Lei nº 14.063, de 23 de setembro de 2020, quanto ao nível mínimo exigido para a assinatura eletrônica em interações com o ente público”, este último decreto, no Art. 5^o ,fundamenta o uso de login e senha para assinar documentos no SEI, em muitas instituições.
Eu presumo que a ICP-Brasil ofereça resistência à adoção do certificado ICPEdu, mas o Decreto 14.063 mencionado acima permitiria o uso deste certificado em situações onde as assinaturas classificadas como "assinatura eletrônica simples" e "assinatura eletrônica avançada" são permitidas, i.e., até fora do contexto da CAFe/RNP.
Agradeço a dica e, se o tempo me permitir, tentarei modificar o componente para uso próprio, como prova de conceito.
Com votos de um 2021 suave, saudável e com vacina para todos.
Att, -rps
On Sun, Jan 10, 2021 at 3:20 AM Emerson Sachio Saito < [email protected]> wrote:
O objetivo do componente é suportar apenas ICP-Brasil. Mas é possível criar um componente a parte, que não terá validade legal. Como esse que é usado em ambiente de homologação do SERPRO: https://github.com/demoiselle/signer/tree/master/chain-icp-brasil-homolog
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/demoiselle/signer/issues/268#issuecomment-757424757, or unsubscribe https://github.com/notifications/unsubscribe-auth/AG5JFJCDLJTE2QXJVGVOU2LSZFBKJANCNFSM4RNVMCMA .
Realmente não há impedimento legal, mas o componente é voltado para ICP-Brasil por possuir um arcabouço legal e padrões bem definidos. Mas tecnicamente nada impede de utilizar os componentes e criar extensões. Um ótimo 2021 para todos nós!
@granella @ramonpsilva caso não tenham caminhado com isso, disponibilizei um gist com exemplo de um provider baseado na truststore.
Olá @laubstein . Muito obrigado por compartilhar o gist. Não sou desenvolver profissional, mas creio que conseguirei fazer um exemplo funcionar.
At.te, -rps
Lembrando que permitir uso de certificado sem ser ICP-Brasil não é a única funcionalidade a ser implementada no caso. Ao assinar, o componente vai informar na assinatura uma política de assinatura. O componente só está preparado para informar as políticas padronizadas pelo ITI. Neste caso se faz necessário, além de permitir o uso de certificado não-ICP, a remoção da informação de política ou o uso de uma política que adote certificados não-ICP. Esta política é usada na validação da assinatura e, caso utilize uma política ICP-Brasil, qualquer validador vai refutar a assinatura pois não utiliza certificado de uma cadeia ICP-Brasil.
O demoiselle-signer é focado nas políticas ICP-Brasil. Mas poderíamos implementar a validação de cadeias apenas baseando-se na política escolhida ao assinar. Caso não tenha escolhido uma política de assinatura, o componente poderia habilitar quaisquer cadeias, mesmo não possuindo truststore compatível. O que acham?
o. Ao assinar, o componente vai informar na assinatura uma política de assinatura. O componente só está preparado para informar as políticas padronizadas pelo ITI. Neste caso se faz necessário, além de permitir o uso de certificado não-ICP, a remoção da informação de política ou o uso de uma política que adote certificados nã
Acho interessante, pois aqui tem uma prefeitura da qual tenho de gerar assinatura eles usam desde certificados da SafeWEB como certificados auto assinados, pois no município eles têm uma portaria liberando isso , fora que tenho outro problema que converto o certificado autoassinado pfx em base64 e carrego ele no keystore do java dai ele da um erro short read of der length
e até agora não consegui corrigir mas se eu importar o mesmo no sistema de certificados do windows dai só da erro que não conseguiu validar a CA do certificado não sei se já teve esse erro do DER se poderia me ajudar