Hola Rafael,

Sí que es un poco extraño ...

Lo que parece que pasa es que no es capaz de acceder a la clave
privada, por eso te dice que no tiene la codificación adecuada o, al
ser nulo, falla y da una excepción.

¿Puedes pegar la traza entera por si vemos algo?

---
Salut,
====================================
Ricardo Borillo Domenech
http://xml-utils.com



2010/3/3  <[email protected]>:
> He traceado todo el código siguiendo la pila de la excepción, y el
> asunto es rarísimo, porque el error según se lee en la excepción,
> parece que es de la clave privada, pero la clave llega intacta a
>
> sap.setCrypto((PrivateKey) pk, chain, null,
> PdfSignatureAppearance.VERISIGN_SIGNED);
>
> incluso le he hecho un casting por si acaso, y además es la misma que
> se usa en la primera vez que se firma, que sí funciona.
>
> La verdad que no tengo ni idea de que puede ser.
>
> También he buscado algo por internet, pero nada.
>
> Ojalá alguien sepa algo!!! Porque de otra manera me voy a tener que
> dedicar a reiniciar el navegador cada vez que quiera firmar :-S
>
> Muchas Gracias!!!
>
> Rafa
>
>
>
> Quoting Ricardo Borillo <[email protected]>:
>
>> Hola Rafael,
>>
>> ¿Qué versión de CryptoApplet utilizas?
>> ¿Te pasa lo mismo con el test que tenemos publicado?
>>
>> http://proyectostic.uji.es/pr/cryptoapplet/samples/v2.1.0/test.html
>>
>> ---
>> Salut,
>> ====================================
>> Ricardo Borillo Domenech
>> http://xml-utils.com
>>
>>
>>
>> 2010/3/2  <[email protected]>:
>>> Muy buenas a todos,
>>>
>>> Estoy usando CryptoApplet en una aplicación y ya lo tengo
>>> perfectamente integrado en el xhtml y con las funciones JavaScript
>>> necesarias, y me va muy bien, pero tengo un problema que no se de que
>>> puede ser, lo explico.
>>>
>>> El caso es que al acceder a la web en cuestión, se carga el applet
>>> (aparece la consola de Java), y me deja firmar la primera vez
>>> correctamente y sin problemas, por cierto, utilizo la función
>>> signDataUrlToUrl(urlIn, urlOut).
>>> Pero al intentar firmar la segunda vez consecutivamente me aparece la
>>> siguiente excepción con el mensaje "No se ha podido calcular la
>>> firma". Sin tocar absolutamente nada, la segunda vez que intento
>>> firmar consecutivamente me aparece eso.
>>>
>>> La única solución es volver a cargar el applet "completamente desde
>>> cero", es decir, no me vale recargar la página, porque el applet ya
>>> está cargado, tengo que cerrar el navegador y volverlo a arrancar, o
>>> cambiar de página y esperar a que el applet (consola de Java) se cierre.
>>>
>>> Espero haberme explicado bien, ¿alguien tiene alguna pista de lo que
>>> puede pasar?
>>>
>>> Muchas gracias!!!
>>>
>>> Rafa
>>>
>>> ***********************EXCEPCION**********************************************
>>>
>>> Using provider: SunPKCS11-NSS
>>> ExceptionConverter: java.security.InvalidKeyException: Private key
>>> must be instance of RSAPrivate(Crt)Key or have PKCS#8 encoding
>>>        at
>>> sun.security.pkcs11.P11RSAKeyFactory.implTranslatePrivateKey(P11RSAKeyFactory.java:84)
>>>        at
>>> sun.security.pkcs11.P11KeyFactory.engineTranslateKey(P11KeyFactory.java:115)
>>>        at
>>> sun.security.pkcs11.P11KeyFactory.convertKey(P11KeyFactory.java:48)
>>>        at
>>> sun.security.pkcs11.P11Signature.engineInitSign(P11Signature.java:326)
>>>        at
>>> java.security.Signature$Delegate.engineInitSign(Signature.java:1095)
>>>        at java.security.Signature.initSign(Signature.java:480)
>>>        at com.lowagie.text.pdf.PdfPKCS7.<init>(PdfPKCS7.java:420)
>>>        at
>>> com.lowagie.text.pdf.PdfSigGenericPKCS.setSignInfo(PdfSigGenericPKCS.java:106)
>>>        at
>>> com.lowagie.text.pdf.PdfSignatureAppearance.preClose(PdfSignatureAppearance.java:928)
>>>        at
>>> com.lowagie.text.pdf.PdfSignatureAppearance.preClose(PdfSignatureAppearance.java:847)
>>>        at com.lowagie.text.pdf.PdfStamper.close(PdfStamper.java:183)
>>>        at
>>> es.uji.security.crypto.pdf.PDFSignatureFactory.formatSignature(PDFSignatureFactory.java:215)
>>>        at
>>> es.uji.security.ui.applet.SignatureThread.run(SignatureThread.java:298)
>>> DEBUG thread-sig-1 es.uji.security.ui.applet.SignatureThread
>>> [18:37:56,453] - The signature is not valid
>>> java.lang.NullPointerException
>>>        at
>>> es.uji.security.ui.applet.SignatureThread.run(SignatureThread.java:315)
>>>
>>> ******************************************************************************
>>>
>>> _______________________________________________
>>> CryptoApplet mailing list
>>> [email protected]
>>> http://llistes.uji.es/mailman/listinfo/cryptoapplet
>>>
>>>
>> _______________________________________________
>> CryptoApplet mailing list
>> [email protected]
>> http://llistes.uji.es/mailman/listinfo/cryptoapplet
>>
>
>
>
> _______________________________________________
> CryptoApplet mailing list
> [email protected]
> http://llistes.uji.es/mailman/listinfo/cryptoapplet
>
>
_______________________________________________
CryptoApplet mailing list
[email protected]
http://llistes.uji.es/mailman/listinfo/cryptoapplet

Responder a