Buenas, El Monday 19 May 2008 10:48:47 [EMAIL PROTECTED] escribió: > Buenos días ;) > > Hemos estado peleando con eclipse/maven para compilar las fuentes del > cryptoapplet, y tras conseguirlo, comprobamos que la ejecución del applet > arroja un fallo (justo en el momento en el que presionamos el botón > firmar): > > java.lang.SecurityException: class "com.lowagie.text.pdf.TSAClient"'s > signer information does not match signer information of other classes in > the same package > at java.lang.ClassLoader.checkCerts(Unknown Source) > at java.lang.ClassLoader.preDefineClass(Unknown Source) > at java.lang.ClassLoader.defineClass(Unknown Source) > at java.security.SecureClassLoader.defineClass(Unknown Source) > at java.net.URLClassLoader.defineClass(Unknown Source) > at java.net.URLClassLoader.access$000(Unknown Source) > at java.net.URLClassLoader$1.run(Unknown Source) > at java.security.AccessController.doPrivileged(Native Method) > at java.net.URLClassLoader.findClass(Unknown Source) > at sun.applet.AppletClassLoader.findClass(Unknown Source) > at java.lang.ClassLoader.loadClass(Unknown Source) > at sun.applet.AppletClassLoader.loadClass(Unknown Source) > at java.lang.ClassLoader.loadClass(Unknown Source) > at java.lang.ClassLoader.loadClassInternal(Unknown Source) > at java.lang.Class.forName0(Native Method) > at java.lang.Class.forName(Unknown Source) > at es.uji.dsign.applet2.SignatureThread.run(SignatureThread.java:126) > > Como apunte hemos creado para firmar el propio applet un keystore con el > keytool de java. Evidentemente, hemos comprobado que sin firmarlo, el > applet nisiquiera llegaba a cargarse correctamente... ¿Alguna idea sobre el > error? >
Si, es por que al estar la clase TSAClient bajo el package com.lowagie.text.pdf para poder acceder a atributos y métodos protected, la política de segurida de la máquina de sun exige que ambos paquetes "jar" estén firmados con el mismo certificado. Lo solucionaréis firmando la lib itext con el certificado que habéis utilizado. > Segundo: Como comentaba Antonio, estamos muy interesados en la > implementación de la cofirma de ficheros PDF (creo recordar que ya la > teníais implementada en el código del SVN precisamente), de cualquier modo, > ¿Podríais decirnos donde encontrar los RFC relativos a este tipo de firma > múltiple? > Sí, en el código del svn al firmar un pdf con una firma se añade una nueva revisión, con lo que la firma anterior no se invalida y las dos firmas coexisten en dos revisiones diferentes del documento. Las referencias que te puedo dar son: Cómo calcular y verificar firmas mediante iText [1]. Referencia al estándar ISO 3200 aka PDF 1.7, página 725 [2] > Por último también estabamos contemplando la posibilidad de implementar un > sistema de autentificación de usuarios haciendo uso de los datos incluidos > en los certificados (como el CN, o el OID), y habíamos pensado en utilizar > vuestro applet como base. ¿Tenéis la intención de implementar algo parecido > próximamente? En cualquier caso estaríamos dispuestos a trabajar en ello. > ¿Qué es exactamente lo que queréis implementar?, ¿autenticación por reto?, os lo comento dado que en el estado actual del applet ya se podría implementar puesto que la autenticación podría ser enviar al cliente un reto a firmar, que éste lo devolviera firmado en XMLDSig o XAdES, validar la firma y si ésta es correcta, establecer la autenticación en la sesión en base a los parámetros del certificado. No se si lo he entendido bien, os referíais a eso o algo diferente ... ? Lo que si podemos hacer es desarrollar un ejemplo en el wiki ... [1] http://itextpdf.sourceforge.net/howtosign.html [2] http://www.adobe.com/devnet/acrobat/pdfs/pdf_reference.pdf Saludos. Paúl. > Un saludo y espero vuestras respuestas. > > _______________________________________________ > CryptoApplet mailing list > [email protected] > http://llistes.uji.es/mailman/listinfo/cryptoapplet _______________________________________________ CryptoApplet mailing list [email protected] http://llistes.uji.es/mailman/listinfo/cryptoapplet
