Login Registre-se
Erro token a3 - RSAPrivate(Crt)Key or have PKCS#8 encoding [Resolvido]  XML
Índice dos Fóruns » NF-e / NFS-e / CT-e / CF-e / Certificados Digitais
Autor Mensagem
Alberto Reis

JavaC Membro

Membro desde: 25/04/2017 10:27:01
Mensagens: 5
Offline

Olá. Já verifiquei no próprio fórum, mas não consegui resolver meu problema.

Ao assinar um xlm da NF-e usando token A3 recebo o seguinte erro:
javax.xml.crypto.dsig.XMLSignatureException: java.security.InvalidKeyException: Private keys must be instance of RSAPrivate(Crt)Key or have PKCS#8 encoding

Meu código:

private KeyStore ks;
private PrivateKey privateKey;



Quando vou assinar gera o erro:
DOMSignContext dsc = new DOMSignContext(privateKey, document.getDocumentElement().getElementsByTagName("NFe").item(i));
signature.sign(dsc);

Meu Token.cfg:
name = eToken
library = c:\windows\system32\eTPKCS11.dll
showInfo = true

Alguém tem alguma sugestão?

Esta mensagem foi editada 1 vez. Última atualização foi em 26/12/2019 19:09:25

Alberto Reis

JavaC Membro

Membro desde: 25/04/2017 10:27:01
Mensagens: 5
Offline

Pessoal, ninguém para auxiliar?

Eu visitei os seguintes posts, mas tudo que foi comentado estamos fazendo (única instância para o ks.load, definir 1 vez o PrivateKey, etc..)

http://www.javac.com.br/jc/posts/list/441-problema-com-assinatura-do-xml-de-cancelamento.page

http://javac.com.br/jc/posts/list/521-token-a3-charismathics.page

http://www.javac.com.br/jc/posts/list/908-ajuda-keystore-invalidkeyexception.page
Cleonir

JavaC Membro
[Avatar]

Membro desde: 06/04/2018 14:07:33
Mensagens: 25
Localização: Dois Vizinhos-PR
Offline

Olá,
Já resolveu?

Eu trabalho com diversos tipos de A3 e não tenho problemas.
No mais extremo dos casos, carrego com o provider 'SunMSCAPI' e faço uma espécie de override na requisição da senha. Mesmo que carregado como certificado do windows, o usuário não precisa digitar senha.

Por acaso, antes da chamada do seu método você tem esses comandos abaixo:


Se já resolveu favor desconsiderar!
[Email]
Alberto Reis

JavaC Membro

Membro desde: 25/04/2017 10:27:01
Mensagens: 5
Offline

Oi.

Resolvi sim.

Eu acredito que o problema foi a instalação do driver deste certificado no computador.

Neste caso foi o Safenet Authentication Client, pelo que vi deveria ser o pkiclient.

Como não quis mexer na máquina do usuário, eu fiz assim para obter o keyStore (neste caso o usuário tem que digitar a senha do Safenet também):



Abs.

Cleonir

JavaC Membro
[Avatar]

Membro desde: 06/04/2018 14:07:33
Mensagens: 25
Localização: Dois Vizinhos-PR
Offline

...bacana!

Marca o tópico como resolvido por favor.
Se algum dia precisar...
http://www.javac.com.br/jc/posts/list/3307-certificado-digital-a3-configuracao-de-senha-automatica.page
Esse link pode te auxiliar com essa parte da senha.

Vlw.
[Email]
 
Índice dos Fóruns » NF-e / NFS-e / CT-e / CF-e / Certificados Digitais
Ir para:   
Powered by JForum 2.1.9 © JForum Team