signer
signer copied to clipboard
Validação de documento Assinado usando XADES
Boa tarde. Baixei o truststore e instalei conforme instruções https://www.gov.br/iti/pt-br/assuntos/navegadores/java/versao-linux
Carreguei o truestore e consegui realizar a assinatura do documento Porém na validação tenho os seguintes erros: Chave criptográfica inválida Erro ao validar o resumo criptográfico da assinatura
Gostaria de uma orientação do que pode estar errado.
Segue codigo utilizado na geração
`String fileName = "xmlexemplo.xml";
XMLSigner xmlSigner = new XMLSigner();
KeyPairGenerator kpg = KeyPairGenerator.getInstance("RSA");
kpg.initialize(2048);
KeyPair keyPair = kpg.generateKeyPair();
PublicKey pub = keyPair.getPublic();
PrivateKey prv = keyPair.getPrivate();
ICPBrasilOnLineITIProviderCA ca = new ICPBrasilOnLineITIProviderCA();
Collection<X509Certificate> cas = ca.getCAs();
xmlSigner.setPrivateKey(prv);
xmlSigner.setCertificateChain(cas.toArray(new X509Certificate[0]));
xmlSigner.setPolicyId(XMLPoliciesOID.AD_RB_XADES_2_3.getOID());
if (org.demoiselle.signer.core.keystore.loader.configuration.Configuration.getInstance().getSO().toLowerCase().indexOf("indows") > 0) {
xmlSigner.setSignatureAlgorithm(Constants.SHA256withRSA);
}
CAManagerConfiguration config = CAManagerConfiguration.getInstance();
//config.setCached(false);
// indicando o local do arquivo XML
Document doc = xmlSigner.signEnveloped(true, fileName);
xmlSigner.saveSignedDocument(fileName.replaceFirst(".xml$", "_rb_signed.xml"));
Você precisa utilizar certificados emitidos por autoridades certificadoras credenciadas junto a ICP-Brasil.
Certo. Obrigado pelo retorno.
fechada por tempo de inatividade