ctt-gob-es / clienteafirma Goto Github PK
View Code? Open in Web Editor NEWCliente @firma
Home Page: http://administracionelectronica.gob.es/ctt/clienteafirma
Cliente @firma
Home Page: http://administracionelectronica.gob.es/ctt/clienteafirma
Simplemente clono el repositorio con
git clone github:ctt-gob-es/clienteafirma
Después siguiendo las instrucciones del README ejecuto:
mvn clean install
pero faltan dependencias:
[ERROR] Failed to execute goal on project afirma-core: Could not resolve dependencies for project es.gob.afirma:afirma-core:jar:1.6.4-SNAPSHOT: Could not find artifact es.gob.afirma.lib:afirma-lib-jmimemagic:jar:0.0.5-SNAPSHOT -> [Help 1]
Buenas, estamos haciendo pruebas de firma en batch (múltiples documentos) con certificados en tarjetas Ceres y nos está pasando algo muy curioso:
Cuando firmamos con una tarjeta antigua la detecta como una tajeta Ceres y firma todo pidiendo el PIN sólo una vez al principio.
Cuando firmamos con una tarjeta más nueva la detecta como si fuera un Dnie y nos pide el PIN por cada documento que hay en el lote.
Mirando el log de la aplicación vemos lo siguiente:
Tarjeta antigua
INFORMACIÓN: Cargando KeyStore 100% Java para Tarjeta FNMT-RCM CERES 4.30 o superior
...
INFORMACIÓN: No se ha encontrado una tarjeta CERES 4.30 o superior: ...
...
INFORMACIÓN: Detectada clave privada CERES 100% Java
Tarjeta nueva
INFORMACIÓN: Cargando KeyStore 100% Java para Tarjeta FNMT-RCM CERES 4.30 o superior
...
INFORMACIÓN: Encontrada TC CERES en version 04.30
...
INFORMACIÓN: Detectada clave privada DNIe 100% Java
¿Es normal que una tarjeta Ceres 4.30 o superior se detecte y comporte como un DNI electrónico? Si efectivamente es así, ¿cómo podríamos hacer para que no pida el PIN por cada documento del lote cuando firmemos con una tarjeta Ceres 4.30 o superior?
Por otro lado comentaros que depurando y revisando el código nos ha llamado la antención que el método engineGetKey de la clase Ceres430KeyStoreImpl devuelva un objeto DniePrivateKey en lugar de un CeresPrivateKey. ¿Eso es correcto?
Gracias de antemano y un saludo.
Hola,
He instalado el programa Autofirma en un MAC y como herramienta de escritorio funciona correctamente, se abre y firma documentos con los certificados que tengo en el llavero, pero a la hora de utilizarlo desde una página web para realizar la firma de documentos me abre igualmente el programa como herramienta de escritorio en lugar de utilizar la invocación por protocolo.
¿Alguien se ha encontrado con este probrema y sabe cómo solucionarlo?
Los datos del ordenador son:
Sistema operativo: Mac OS X
Version del SO: 10.13.5
Version de Java: 1.8.0_162
Lo he probado en otro MAC y si ha funcionado correctamente.
Gracias por vuestra ayuda.
Problemas
En el momento que hay que firmar y pagar las tasas de la DGT, se abre un enlace. Este enlace debe ejecutar la aplicación Autofirma. Ésta se ejecuta en el ordenador, pero no se abre ninguna ventana. Solo aparece el icono en la dock inferior. Además, en el navegador salta un mensaje diciéndome que tengo que bajarme la aplicación Autofirma. Esto no tiene sentido dado que ya la tengo instalada. No sale nada más.
Cosas que he probado
Desinstalar y reinstalar la aplicación de Autofirma. Sigo con el problema.
Probar en Google Chrome. Sigo con el mismo problema.
Versiones
Java: 1.8.0_77
Autofirma: 1.4.2
MAC OS X: capitan 10.11.6
Firefox: 60.0.2
Veo que el cliente de @firma se distribuye en formato .deb, empaquetado para sistemas Linux, yo uso Fedora 28 y no tengo para nada claras las instrucciones de instalación. ¿Podríais indicarme algunas pautas o pasos necesarios?
Puedo utilizar autofirma en standalone, pero cuando la llama el navegador (firefox) sale el error: No se ha podido conectar con AutoFirma.
Estoy firmando un archivo office antiguo (.xls) con el programa de Autofirma, y éste me genera un archivo .csig que contiene dentro el fichero original.
Cuando abro el archivo .csig con Autofirma y hago click en la opción "Ver datos firmados", el programa no detecta correctamente la extensión del archivo y me lo intenta abrir con el word. Por curiosidad he probado a hacer lo mismo con un archivo powerpoint (.ppt) y también lo intenta abrir con word.
Con otros archivos (como .txt) hago la misma prueba y al intentar ver los datos firmados tampoco detecta la extensión (por lógica, debería abrirlo con el bloc de notas) y en lugar de eso, me dice que guarde el fichero en disco.
Esto sólo pasa con ciertas extensiones, ya que por ejemplo las imágenes las abre correctamente.
Buenos días
Autofirma no toma en consideración las excepciones de proxy
Cuando una organización dispone de proxy explicito y tiene configuradas excepciones en el navegador. Autofirma no las toma en consideración.
Esto es importante por varios motivos:
Cuando quieres hacer una firma a una web interna lo normal es no utilizar proxy.
A la hora de realizar granjas web para firma de documentos. El balanceo de la petición siempre se envía desde el proxy y no puedes realizar persistencia de servidor por IP al ser siempre el servidor proxy quien realiza la conexión
Java en su configuración de red tiene implementadas todas las opciones de proxy necesarias en su panel de control.
Un saludo
Muy buenas,
El comando firma el fichero pero con alguna diferencia a nivel de fichero cuando se firma por comando o cuando se firma a través de la aplicación. Si firmas el fichero por los dos métodos y comparas el tamaño de los dos ficheros son diferentes.
El fichero que estoy intentando es un .zip, el cual, contiene un .xml. Cuando lo firmas con la aplicación, el fichero final se puede descomprimir, cuando lo firmas por comando, el fichero de salida sale con un formato desconocido o dañado y no se puede descomprimir.
ubuntu@SERVIDOR:~/Firmar$ AutoFirma sign -algorithm SHA256withRSA -store mozilla -filter subject.contains:AXXXXXX -i ./FICHERO.zip -o ./FICHERO.zip.sign
¿Alguna ayuda o idea? Gracias de antemano.
Hola,
estoy intentando enviar declaraciones sumarias a la AEAT y firmando los documentos con clienteafirma utilizando la clase AOXAdESSigner del paquete afirma-crypto-xades. Que me ha parecido la correcta.
El problema es que la agencia tributaria me responde con Error no existe QualifyingProperties dentro de ds:Object y la única diferencia que veo es que el prefijo que esperan es "etsi" en lugar de "xades" (aunque me parece extraño que eso influya para que no lo encuentre).
<etsi:QualifyingProperties
xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:etsi="http://uri.etsi.org/01903/v1.2.2#" Target="#Firma">
...
He tenido que cambiar la versión de ETSI a la 1.2.2 a través de las properties:
props.setProperty("xadesNamespace", "http://uri.etsi.org/01903/v1.2.2#");
y me imagino que hay algo similar para cambiar el prefijo pero no logro encontrarlo. Mi XML tiene este aspecto:
<xades:QualifyingProperties Id="Signature-b456398c-7465-4985-8102-24a4e93ec444-QualifyingProperties" Target="#Signature-b456398c-7465-4985-8102-24a4e93ec444-Signature"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:xades="http://uri.etsi.org/01903/v1.3.2#">
...
Muchas gracias!
Esto es lo que se escribe:
`francesc@francesc:/tmp$ AutoFirma
d’abr. 05, 2018 6:24:26 PM es.gob.afirma.standalone.LookAndFeelManager applyLookAndFeel
INFO: Establecido 'Look&Feel' GTK look and feel
d’abr. 05, 2018 6:24:26 PM es.gob.afirma.standalone.SimpleAfirma main
INFO: Se intenta una precarga temprana de NSS
d’abr. 05, 2018 6:24:26 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities loadNSS
INFO: Configuracion de NSS para SunPKCS11:
name=NSSCrypto-AFirma
library=/usr/lib/firefox/libsoftokn3.so
attributes=compatibility
slot=2
showInfo=false
allowSingleThreadedModules=true
nssArgs="configdir='USERHOME/.mozilla/firefox/lnb18ajg.default' certPrefix='' keyPrefix='' flags='readOnly'"
d’abr. 05, 2018 6:24:26 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities loadNssJava8
INFO: NSS necesita una precarga o tratamiento de sus dependencias: java.lang.reflect.InvocationTargetException
d’abr. 05, 2018 6:24:26 PM es.gob.afirma.keystores.mozilla.NssKeyStoreManager getNssProvider
SEVERE: Error obteniendo el proveedor NSS: java.lang.reflect.InvocationTargetException
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities.loadNssJava8(MozillaKeyStoreUtilities.java:558)
at es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities.loadNSS(MozillaKeyStoreUtilities.java:603)
at es.gob.afirma.keystores.mozilla.NssKeyStoreManager.getNssProvider(NssKeyStoreManager.java:112)
at es.gob.afirma.keystores.mozilla.NssKeyStoreManager.init(NssKeyStoreManager.java:59)
at es.gob.afirma.keystores.mozilla.MozillaUnifiedKeyStoreManager.init(MozillaUnifiedKeyStoreManager.java:67)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getNssKeyStoreManager(AOKeyStoreManagerFactory.java:446)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getMozillaUnifiedKeyStoreManager(AOKeyStoreManagerFactory.java:480)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getAOKeyStoreManager(AOKeyStoreManagerFactory.java:119)
at es.gob.afirma.standalone.SimpleAfirma.main(SimpleAfirma.java:541)
Caused by: java.security.ProviderException: Initialization failed
at sun.security.pkcs11.SunPKCS11.(SunPKCS11.java:376)
at sun.security.pkcs11.SunPKCS11.(SunPKCS11.java:107)
... 13 more
Caused by: sun.security.pkcs11.wrapper.PKCS11Exception: CKR_DEVICE_ERROR
at sun.security.pkcs11.wrapper.PKCS11.C_Initialize(Native Method)
at sun.security.pkcs11.wrapper.PKCS11$SynchronizedPKCS11.C_Initialize(PKCS11.java:1545)
at sun.security.pkcs11.wrapper.PKCS11.getInstance(PKCS11.java:157)
at sun.security.pkcs11.SunPKCS11.(SunPKCS11.java:330)
... 14 more
d’abr. 05, 2018 6:24:26 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities getMozillaPKCS11Modules`
El programa de autofirma no funciona correctamente con la versión de java por defectro de Debian Buster (openjdk-11). Supongo que pasará lo mismo con las versiones recientes de Ubuntu. Para que funcione es necesario instalar la verisión 8 de openjdk.
Buenas,
Tengo instalado Autofirma 1.6 en mi Linux (Manjaro 17), el cual no puedo utilizar a través del portal portafirmas de la Universidad de Murcia. Utilizo Firefox 58
Cuando procedo a firmar, recibo el siguiente error:
Utilizando la aplicación gráfica, no hay ningún problema: Me sale el diálogo del almacén de claves y puedo usar mi firma. Sin embargo, desde Firefox tengo el siguiente error y no sé dónde se consultan los certificados (el certificado está instalado en el almacén del navegador, por lo que supongo que no lo coge de ahi).
Un saludo,
Valentín
Kaspersky lleva meses clasificando Autofirma como software potencialmente peligroso, ya que los programadores han decidido no substituir el módulo de java SE 9 por Java SE 10 (18.3 o posterior). Este módulo ya no recibe soporte alguno por parte de Oracle. Por lo cual, si hay alguna vulnerabilidad no será corregida.
Cuando los programadores decidan cambiar a versiones de Java actualizadas, Kaspersky dejará de clasificar Autofirma como "SOFTWARE NO SEGURO".
Hola, he podido comprobar que el cliente de AutoFirma no funciona en macOS, si el sistema de ficheros distingue entre mayusculas / minúsculas, simplemente se cierra.
Si se crea un volumen sin distinción, y se mueve a este la aplicación funciona perfectamente. Ya que en linux, todos los sistemas de ficheros distinguen entre mayusculas / minúsculas, debería poder hacerse lo mismo en macOS.
Gracias de antemano.
Nota: Si este no es el foro adecuado, por háganmelo saber.
EDIT: El título original del issue era Errores java de AutoFirma en Linux Mint 18.3 64bits
, pero lo cambio porque, como se ve en el segundo cometario, el problema es que AutoFirma
no es compatible con OpenJDK
y requiere Oracle Java
.
Errores java en el arranque del AutoFirma
en Linux Mint 18.3 64bits
, con el resultado de que la aplicación no llega a abrirse y por lo tanto no se puede usar.
$ lsb_release -a
No LSB modules are available.
Distributor ID: LinuxMint
Description: Linux Mint 18.3 Sylvia
Release: 18.3
Codename: sylvia
$ uname -a
Linux ya 4.8.0-53-generic #56~16.04.1-Ubuntu SMP Tue May 16 01:18:56 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
$ java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 8.0.5.10 - pxa6480sr5fp10-20180214_01(SR5 FP10))
IBM J9 VM (build 2.9, JRE 1.8.0 Linux amd64-64 Compressed References 20180208_378436 (JIT enabled, AOT enabled)
OpenJ9 - 39bb844
OMR - c04ccb2
IBM - 2321a81)
JCL - 20180209_01 based on Oracle jdk8u161-b12
$ sudo dpkg -i AutoFirma_1_6_2.deb
Seleccionando el paquete autofirma previamente no seleccionado.
(Leyendo la base de datos ... 319025 ficheros o directorios instalados actualmente.)
Preparando para desempaquetar AutoFirma_1_6_2.deb ...
Desempaquetando autofirma (1.6.2) ...
Configurando autofirma (1.6.2) ...
abr 11, 2018 7:21:13 PM es.gob.afirma.standalone.configurator.AutoFirmaConfigurator <init>
INFORMACIÓN: Se configurara la aplicacion en modo nativo
abr 11, 2018 7:21:14 PM es.gob.afirma.standalone.configurator.ConsoleManager getConsole
INFORMACIÓN: Se utilizara la consola de tipo I/O
abr 11, 2018 7:21:14 PM es.gob.afirma.standalone.configurator.ConfiguratorLinux configure
INFORMACIÓN: Identificando directorio de aplicación...
abr 11, 2018 7:21:14 PM es.gob.afirma.standalone.configurator.ConfiguratorLinux configure
INFORMACIÓN: Directorio de aplicación: /usr/lib/AutoFirma
abr 11, 2018 7:21:14 PM es.gob.afirma.standalone.configurator.ConfiguratorLinux configure
INFORMACIÓN: Generando certificado para la comunicación con el navegador web...
abr 11, 2018 7:21:18 PM es.gob.afirma.standalone.configurator.ConfiguratorLinux configure
INFORMACIÓN: Se guarda el almacén de claves en el directorio de instalación de la aplicación
abr 11, 2018 7:21:20 PM es.gob.afirma.standalone.configurator.ConfiguratorLinux configure
INFORMACIÓN: Se va a instalar el certificado en el almacen de Mozilla Firefox
abr 11, 2018 7:21:20 PM es.gob.afirma.standalone.configurator.ConfiguratorLinux configure
INFORMACIÓN: Fin de la configuración
Generacion de certificados
Enter Password or Pin for "NSS Certificate DB":
Instalacion del certificado CA en el almacenamiento de Firefox y Chrome
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
done.
Instalacion del certificado CA en el almacenamiento del sistema
Procesando disparadores para bamfdaemon (0.5.3~bzr0+16.04.20180209-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Procesando disparadores para gnome-menus (3.13.3-6ubuntu3.1) ...
Procesando disparadores para desktop-file-utils (0.22+linuxmint1) ...
Procesando disparadores para mime-support (3.59ubuntu1) ...
$ AutoFirma
abr 11, 2018 7:22:04 PM es.gob.afirma.standalone.ProxyUtil setDefaultProxy
INFORMACIÓN: Las conexiones para protocolo 'http' son por defecto de tipo: DIRECT
abr 11, 2018 7:22:04 PM es.gob.afirma.standalone.ProxyUtil setDefaultProxy
INFORMACIÓN: Las conexiones para protocolo 'https' son por defecto de tipo: DIRECT
abr 11, 2018 7:22:04 PM es.gob.afirma.standalone.ProxyUtil setProxySettings
INFORMACIÓN: No se usara Proxy para las conexiones de red
abr 11, 2018 7:22:04 PM es.gob.afirma.standalone.SimpleAfirma main
INFORMACIÓN: No se buscaran nuevas versiones de la aplicacion
abr 11, 2018 7:22:04 PM es.gob.afirma.standalone.SimpleAfirma printSystemInfo
INFORMACIÓN: Resolucion DPI de pantalla: 0
Sistema operativo: Linux
Version del SO: 4.8.0-53-generic
Version de Java: 1.8.0_161
Arquitectura del JRE: 64
Java Vendor: IBM Corporation
Localizacion por defecto: es_ES
Tamano actual en memoria: 31MB
Tamano maximo de memoria: 512MB
Memoria actualmente libre: 11MB
abr 11, 2018 7:22:04 PM es.gob.afirma.standalone.SimpleAfirma main
INFORMACIÓN: Apertura como herramienta de escritorio
Failed to instantiate SLF4J LoggerFactory
Reported exception:
java.lang.NoClassDefFoundError: org.slf4j.impl.StaticLoggerBinder
at org.slf4j.LoggerFactory.bind(LoggerFactory.java:121)
at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:111)
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:268)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:241)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:254)
at com.dmurph.tracking.JGoogleAnalyticsTracker.<clinit>(JGoogleAnalyticsTracker.java:94)
at es.gob.afirma.standalone.SimpleAfirma.lambda$main$0(SimpleAfirma.java:502)
at es.gob.afirma.standalone.SimpleAfirma$$Lambda$12.000000004CD1A510.run(Unknown Source)
at java.lang.Thread.run(Thread.java:811)
Caused by: java.lang.ClassNotFoundException: org.slf4j.impl.StaticLoggerBinder
at java.net.URLClassLoader.findClass(URLClassLoader.java:609)
at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:924)
at java.lang.ClassLoader.loadClass(ClassLoader.java:869)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:332)
at java.lang.ClassLoader.loadClass(ClassLoader.java:852)
... 9 more
Exception in thread "Thread-8" java.lang.NoClassDefFoundError: org.slf4j.impl.StaticLoggerBinder
at org.slf4j.LoggerFactory.bind(LoggerFactory.java:121)
at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:111)
at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:268)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:241)
at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:254)
at com.dmurph.tracking.JGoogleAnalyticsTracker.<clinit>(JGoogleAnalyticsTracker.java:94)
at es.gob.afirma.standalone.SimpleAfirma.lambda$main$0(SimpleAfirma.java:502)
at es.gob.afirma.standalone.SimpleAfirma$$Lambda$12.000000004CD1A510.run(Unknown Source)
at java.lang.Thread.run(Thread.java:811)
Caused by: java.lang.ClassNotFoundException: org.slf4j.impl.StaticLoggerBinder
at java.net.URLClassLoader.findClass(URLClassLoader.java:609)
at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:924)
at java.lang.ClassLoader.loadClass(ClassLoader.java:869)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:332)
at java.lang.ClassLoader.loadClass(ClassLoader.java:852)
... 9 more
abr 11, 2018 7:22:05 PM es.gob.afirma.standalone.SimpleAfirma main
INFORMACIÓN: Se intenta una precarga temprana de NSS
abr 11, 2018 7:22:05 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities loadNSS
INFORMACIÓN: Configuracion de NSS para SunPKCS11:
name=NSSCrypto-AFirma
library=/usr/lib/thunderbird/libsoftokn3.so
attributes=compatibility
slot=2
showInfo=false
allowSingleThreadedModules=true
nssArgs="configdir='sql:/USERHOME/.mozilla/firefox/mwad0hks.default' certPrefix='' keyPrefix='' flags='readOnly'"
abr 11, 2018 7:22:05 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities loadNssJava8
INFORMACIÓN: NSS necesita una precarga o tratamiento de sus dependencias: java.lang.ClassNotFoundException: sun.security.pkcs11.SunPKCS11
abr 11, 2018 7:22:05 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities loadNssJava8
AVISO: Ha fallado el segundo intento de carga de NSS: java.lang.ClassNotFoundException: sun.security.pkcs11.SunPKCS11
abr 11, 2018 7:22:05 PM es.gob.afirma.keystores.mozilla.NssKeyStoreManager getNssProvider
GRAVE: Error obteniendo el proveedor NSS: java.lang.ClassNotFoundException: sun.security.pkcs11.SunPKCS11
java.lang.ClassNotFoundException: sun.security.pkcs11.SunPKCS11
at java.lang.Class.forNameImpl(Native Method)
at java.lang.Class.forName(Class.java:297)
at es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities.loadNssJava8(MozillaKeyStoreUtilities.java:669)
at es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities.loadNSS(MozillaKeyStoreUtilities.java:718)
at es.gob.afirma.keystores.mozilla.NssKeyStoreManager.getNssProvider(NssKeyStoreManager.java:111)
at es.gob.afirma.keystores.mozilla.NssKeyStoreManager.init(NssKeyStoreManager.java:58)
at es.gob.afirma.keystores.mozilla.MozillaUnifiedKeyStoreManager.init(MozillaUnifiedKeyStoreManager.java:68)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getNssKeyStoreManager(AOKeyStoreManagerFactory.java:488)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getMozillaUnifiedKeyStoreManager(AOKeyStoreManagerFactory.java:519)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getAOKeyStoreManager(AOKeyStoreManagerFactory.java:116)
at es.gob.afirma.standalone.SimpleAfirma.main(SimpleAfirma.java:571)
abr 11, 2018 7:22:05 PM es.gob.afirma.keystores.AOKeyStoreManager init
INFORMACIÓN: Inicializamos el almacen de tipo: DNIe y tarjetas FNMT-TIF
Exception in thread "main" java.lang.NoClassDefFoundError: javax.smartcardio.CardException
at java.lang.Class.forNameImpl(Native Method)
at java.lang.Class.forName(Class.java:297)
at es.gob.jmulticard.jse.provider.DnieProvider.<init>(DnieProvider.java:97)
at es.gob.jmulticard.jse.provider.DnieProvider.<init>(DnieProvider.java:87)
at es.gob.afirma.keystores.AOKeyStoreManagerHelperFullJava.initDnieJava(AOKeyStoreManagerHelperFullJava.java:93)
at es.gob.afirma.keystores.AOKeyStoreManager.init(AOKeyStoreManager.java:213)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getDnieJavaKeyStoreManager(AOKeyStoreManagerFactory.java:300)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getAOKeyStoreManager(AOKeyStoreManagerFactory.java:132)
at es.gob.afirma.keystores.KeyStoreUtilities.getDnieKeyStoreManager(KeyStoreUtilities.java:389)
at es.gob.afirma.keystores.KeyStoreUtilities.addPreferredKeyStoreManagers(KeyStoreUtilities.java:322)
at es.gob.afirma.keystores.mozilla.MozillaUnifiedKeyStoreManager.init(MozillaUnifiedKeyStoreManager.java:83)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getNssKeyStoreManager(AOKeyStoreManagerFactory.java:488)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getMozillaUnifiedKeyStoreManager(AOKeyStoreManagerFactory.java:519)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getAOKeyStoreManager(AOKeyStoreManagerFactory.java:116)
at es.gob.afirma.standalone.SimpleAfirma.main(SimpleAfirma.java:571)
Caused by: java.lang.ClassNotFoundException: javax.smartcardio.CardException
at java.net.URLClassLoader.findClass(URLClassLoader.java:609)
at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:924)
at java.lang.ClassLoader.loadClass(ClassLoader.java:869)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:332)
at java.lang.ClassLoader.loadClass(ClassLoader.java:852)
... 15 more
$
Estoy haciendo pruebas de firma en algunos documentos PDF/A 1b, 2b y 3b generados mediante itext 7.0.7 y cuando los firmo y los valido dejan de cumplir el estandar PDF/A. Previamente eran válidos.
El único que me ha funcionado es PDF/A generado en un escaner a PDF/A1b. Los generados mediante itext, al firmarlos duplican ciertos metadados xmp.
Los documentos los he validado mediante https://www.pdf-online.com/osa/validate.aspx
Salida de Lintian mostrada por Gdebi:
E: autofirma: changelog-file-missing-in-native-package
E: autofirma: file-in-etc-not-marked-as-conffile etc/firefox/pref/AutoFirma.js
E: autofirma: no-copyright-file
E: autofirma: description-starts-with-package-name
E: autofirma: extended-description-is-empty
W: autofirma: non-standard-dir-perm etc/ 0775 != 0755
W: autofirma: non-standard-dir-perm etc/firefox/ 0775 != 0755
W: autofirma: non-standard-dir-perm etc/firefox/pref/ 0775 != 0755
W: autofirma: non-standard-executable-perm etc/firefox/pref/AutoFirma.js 0775 != 0755
W: autofirma: non-standard-dir-perm usr/ 0775 != 0755
W: autofirma: non-standard-dir-perm usr/bin/ 0775 != 0755
W: autofirma: non-standard-executable-perm usr/bin/AutoFirma 0775 != 0755
W: autofirma: non-standard-dir-perm usr/lib/ 0775 != 0755
W: autofirma: non-standard-dir-perm usr/lib/AutoFirma/ 0775 != 0755
W: autofirma: non-standard-executable-perm usr/lib/AutoFirma/AutoFirma.jar 0766 != 0755
W: autofirma: non-standard-file-perm usr/lib/AutoFirma/AutoFirma.png 0664 != 0644
W: autofirma: non-standard-executable-perm usr/lib/AutoFirma/AutoFirmaConfigurador.jar 0766 != 0755
W: autofirma: non-standard-dir-perm usr/share/ 0775 != 0755
W: autofirma: non-standard-dir-perm usr/share/AutoFirma/ 0775 != 0755
W: autofirma: non-standard-executable-perm usr/share/AutoFirma/AutoFirma.svg 0775 != 0755
W: autofirma: non-standard-dir-perm usr/share/applications/ 0775 != 0755
W: autofirma: non-standard-executable-perm usr/share/applications/afirma.desktop 0775 != 0755
W: autofirma: non-standard-dir-perm usr/share/doc/ 0775 != 0755
W: autofirma: non-standard-dir-perm usr/share/doc/AutoFirma/ 0775 != 0755
E: autofirma: executable-in-usr-share-doc usr/share/doc/AutoFirma/copyright 0775
W: autofirma: non-standard-executable-perm usr/share/doc/AutoFirma/copyright 0775 != 0755
E: autofirma: missing-dep-on-jarwrapper
W: autofirma: binary-without-manpage usr/bin/AutoFirma
E: autofirma: executable-desktop-file usr/share/applications/afirma.desktop 0775
W: autofirma: executable-not-elf-or-script usr/share/applications/afirma.desktop
W: autofirma: executable-not-elf-or-script etc/firefox/pref/AutoFirma.js
W: autofirma: executable-not-elf-or-script usr/share/AutoFirma/AutoFirma.svg
W: autofirma: executable-not-elf-or-script usr/share/doc/AutoFirma/copyright
W: autofirma: maintainer-script-ignores-errors postinst
W: autofirma: maintainer-script-empty postrm
W: autofirma: maintainer-script-ignores-errors postrm
W: autofirma: maintainer-script-ignores-errors preinst
W: autofirma: maintainer-script-ignores-errors prerm
Lintian finalizó con el estado de salida 1
Muy buenas
En un momento dado, necesito que el usuario vuelva a introducir su clave de la tarjeta/dni antes de volver a utilizar la firma.
En este punto el usuario ya ha introducido su clave de manera correcta.
Pero por especificaciones del producto, debe de volver a poner su clave en la siguiente operación.
Estoy usando el método refresh() del KeyStoreManager pero no sirve
¿No deberia de pedir la clave si intento firmar algo después del refresh()?
Si no es así, ¿ como puedo forzar la petición de clave?
Gracias
En la pagina https://enares.mjusticia.gob.es/enares/clave/solicitud/editarDocumentacion.action (que imagino es una integracion de autofirma), no funciona la firma con autofirma en entorno:
He podido firmar un pdf en LOCAL con autofirma, pero en la integracion con este pagina no funciona (error: ERR_25 - Para poder firmar, debe tener instalado AutoFirma.). En local se me abre la app de autofirma (veo el icono y el proceso), pero luego da error en la pagina.
Hay alguna forma de ver los logs? Alguna sugerencia?
Matias. (soy un usuario de https://enares.mjusticia.gob.es/)
Hola, estoy intentando firmar unos documentos para presentarlos (o me quedo sin NIE) y no hay forma de hacerlo funcionar. Este es el log de AutoFirma
Sep 29, 2018 7:04:19 PM es.gob.afirma.standalone.ProxyUtil setDefaultProxy
INFO: Las conexiones para protocolo 'http' son por defecto de tipo: DIRECT
Sep 29, 2018 7:04:19 PM es.gob.afirma.standalone.ProxyUtil setDefaultProxy
INFO: Las conexiones para protocolo 'https' son por defecto de tipo: DIRECT
Sep 29, 2018 7:04:19 PM es.gob.afirma.standalone.ProxyUtil setProxySettings
INFO: No se usara Proxy para las conexiones de red
Sep 29, 2018 7:04:19 PM es.gob.afirma.standalone.SimpleAfirma main
INFO: No se buscaran nuevas versiones de la aplicacion
Sep 29, 2018 7:04:19 PM es.gob.afirma.standalone.SimpleAfirma printSystemInfo
INFO: Resolucion DPI de pantalla: 0
Sistema operativo: Linux
Version del SO: 4.15.0-34-generic
Version de Java: 10.0.2
Arquitectura del JRE: 64
Java Vendor: Oracle Corporation
Localizacion por defecto: en_US
Tamano actual en memoria: 248MB
Tamano maximo de memoria: 3940MB
Memoria actualmente libre: 234MB
Sep 29, 2018 7:04:19 PM es.gob.afirma.standalone.SimpleAfirma main
INFO: Apertura como herramienta de escritorio
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Sep 29, 2018 7:04:19 PM es.gob.afirma.standalone.SimpleAfirma main
INFO: Se intenta una precarga temprana de NSS
Sep 29, 2018 7:04:19 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities loadNSS
INFO: Configuracion de NSS para SunPKCS11:
name=NSSCrypto-AFirma
library=/usr/lib/thunderbird/libsoftokn3.so
attributes=compatibility
slot=2
showInfo=false
allowSingleThreadedModules=true
nssArgs="configdir='sql:/USERHOME/.mozilla/firefox/xtwjd55b.default' certPrefix='' keyPrefix='' flags='readOnly'"
Sep 29, 2018 7:04:19 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities loadNssJava8
INFO: NSS necesita una precarga o tratamiento de sus dependencias: java.lang.NoSuchMethodException: sun.security.pkcs11.SunPKCS11.<init>(java.io.InputStream)
Sep 29, 2018 7:04:19 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities loadNssJava8
WARNING: Ha fallado el segundo intento de carga de NSS: java.lang.NoSuchMethodException: sun.security.pkcs11.SunPKCS11.<init>(java.io.InputStream)
Sep 29, 2018 7:04:19 PM es.gob.afirma.keystores.mozilla.NssKeyStoreManager getNssProvider
SEVERE: Error obteniendo el proveedor NSS: java.lang.NoSuchMethodException: sun.security.pkcs11.SunPKCS11.<init>(java.io.InputStream)
java.lang.NoSuchMethodException: sun.security.pkcs11.SunPKCS11.<init>(java.io.InputStream)
at java.base/java.lang.Class.getConstructor0(Class.java:3302)
at java.base/java.lang.Class.getConstructor(Class.java:2110)
at es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities.loadNssJava8(MozillaKeyStoreUtilities.java:669)
at es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities.loadNSS(MozillaKeyStoreUtilities.java:718)
at es.gob.afirma.keystores.mozilla.NssKeyStoreManager.getNssProvider(NssKeyStoreManager.java:111)
at es.gob.afirma.keystores.mozilla.NssKeyStoreManager.init(NssKeyStoreManager.java:58)
at es.gob.afirma.keystores.mozilla.MozillaUnifiedKeyStoreManager.init(MozillaUnifiedKeyStoreManager.java:68)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getNssKeyStoreManager(AOKeyStoreManagerFactory.java:488)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getMozillaUnifiedKeyStoreManager(AOKeyStoreManagerFactory.java:519)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getAOKeyStoreManager(AOKeyStoreManagerFactory.java:116)
at es.gob.afirma.standalone.SimpleAfirma.main(SimpleAfirma.java:571)
Sep 29, 2018 7:04:19 PM es.gob.afirma.keystores.AOKeyStoreManager init
INFO: Inicializamos el almacen de tipo: DNIe y tarjetas FNMT-TIF
Sep 29, 2018 7:04:19 PM es.gob.afirma.keystores.KeyStoreUtilities addPreferredKeyStoreManagers
INFO: No se ha encontrado un DNIe: java.security.ProviderException: No se ha podido inicializar el proveedor de DNIe: es.gob.jmulticard.apdu.connection.NoReadersFoundException: No se detectaron lectores de tarjetas en el sistema
Sep 29, 2018 7:04:19 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities getMozillaPKCS11Modules
INFO: Se incluiran los modulos nativos de DNIe/CERES si se encuentran configurados
Sep 29, 2018 7:04:19 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities getMozillaPKCS11Modules
INFO: Obtenidos los modulos externos de Mozilla desde 'pkcs11.txt'
Sep 29, 2018 7:04:19 PM es.gob.afirma.keystores.mozilla.MozillaUnifiedKeyStoreManager init
INFO: No se han encontrado modulos PKCS#11 externos instalados en Firefox
Sep 29, 2018 7:04:19 PM es.gob.afirma.standalone.SimpleAfirma setKeyStoreManager
INFO: Establecido KeyStoreManager: Gestor de almacenes de claves Mozilla / Firefox (unificado) con nombre Mozilla / Firefox (unificado)
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by es.gob.afirma.standalone.SimpleAfirma (file:/usr/lib/AutoFirma/AutoFirma.jar) to field sun.awt.X11.XToolkit.awtAppClassName
WARNING: Please consider reporting this to the maintainers of es.gob.afirma.standalone.SimpleAfirma
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Sep 29, 2018 7:04:19 PM es.gob.afirma.standalone.SimpleAfirma loadDefaultKeyStore
INFO: Se omite la carga concurrente de almacen por haberse hecho una precarga previa
Sep 29, 2018 7:06:42 PM es.gob.afirma.keystores.AggregatedKeyStoreManager getAliases
WARNING: No se pudieron obtener los alias del almacen Mozilla / Firefox (unificado): java.lang.IllegalStateException: Se han pedido alias a un almacen no inicializado
Sep 29, 2018 7:06:42 PM es.gob.afirma.standalone.ui.SignPanelSignTask doSignature
SEVERE: El almacen no contiene ningun certificado que se pueda usar para firmar: es.gob.afirma.keystores.AOCertificatesNotFoundException: No se han encontrado certificados en el almacen acordes a los filtros establecidos
Intenté hacer los pasos descritos en #16 pero nada.
Uso Ubuntu 18
Buenas tardes,
intentando realizar una firma con el MiniApplet y la conexión de autofirma tengo problemas al firmar documentos "grandes" (+120MB). En principio el documento no es un problema ya que he podido firmarlo correctamente usando directamente AutoFirma pero si el documento pasa por el MiniApplet, aparecen errores a la hora de obtener su codificacion en Base64.
He realizado pruebas tanto con la version 1.4 como 1.5 y en ambos casos ocurren cosas parecidas, ya que en ambas se quiere obtener el documento en Base64.
¿Se han realizado pruebas con documentos de más de 100MB? Espero vuestra respuesta.
Un saludo,
Andrés Lugo
En entorno Windows 10, se instala AutoFirma con un usuario administrador de la maquina, distinto al usuario habitual del equipo que va a usar el programa (no administrador).
Al pinchar en un fichero con extensión .xsig funciona correctamente, abre el fichero y muestra la validez de las firmas.
Cambiamos al usuario habitual no administrador. A pesar de estar asignado el fichero con extensión .xsig a Autofirma, no se abre AutoFirma.
Hola, he instalado la versión de Autofirma 1.6.2. y cuando intento usarlo con Chromium aparece el error:
SAF_04: Operación no soportada. Compruebe que dispone de la última versión de AutoFirma.)
Por lo que he visto en el log, da la sensación de que Chromium envía una URL de la forma afirma://service%3Fxxxx mientras que Autofirma espera que la URL sea de la forma afirma://service?xxxx
Un saludo
Los certificados digitales emitidos por la FMNT a veces presentan el caracter \0 (es decir, el caracter NULL) como parte del ALIAS del certificado. Cuando esto sucede, no se puede especificar dicho alias como parámetro al llamar a AutofirmaCommandLine, porque la linea de comandos no soporta el caracter \0.
Una posible solución a este problema sería permitir especificar los parámetros de firma via un fichero, y pasar dicho fichero como parámetro al AutofirmaCommandLine.
Buenas,
Echo en falta poder seleccionar una imagen vectorial (.svg) a la hora de incrustar junto con la firma. Mejoraría notablemente la visualización.
Un saludo,
Valentín
DNIe Funcionando en Firefox Quantum 60.0.1 (64 bit)
AutoFirma muestra el mensaje "El almacen no contiene ningún certificado..."
Este es el log:
may 29, 2018 1:17:15 PM es.gob.afirma.standalone.ProxyUtil setDefaultProxy
INFORMACIÓN: Las conexiones para protocolo 'http' son por defecto de tipo: DIRECT
may 29, 2018 1:17:15 PM es.gob.afirma.standalone.ProxyUtil setDefaultProxy
INFORMACIÓN: Las conexiones para protocolo 'https' son por defecto de tipo: DIRECT
may 29, 2018 1:17:15 PM es.gob.afirma.standalone.ProxyUtil setProxySettings
INFORMACIÓN: No se usara Proxy para las conexiones de red
may 29, 2018 1:17:15 PM es.gob.afirma.standalone.SimpleAfirma main
INFORMACIÓN: No se buscaran nuevas versiones de la aplicacion
may 29, 2018 1:17:15 PM es.gob.afirma.standalone.SimpleAfirma printSystemInfo
INFORMACIÓN: Resolucion DPI de pantalla: 0
Sistema operativo: Linux
Version del SO: 4.13.0-43-generic
Version de Java: 1.8.0_102
Arquitectura del JRE: 64
Java Vendor: Oracle Corporation
Localizacion por defecto: es_ES
Tamano actual en memoria: 234MB
Tamano maximo de memoria: 3451MB
Memoria actualmente libre: 207MB
may 29, 2018 1:17:15 PM es.gob.afirma.standalone.SimpleAfirma main
INFORMACIÓN: Apertura como herramienta de escritorio
may 29, 2018 1:17:16 PM es.gob.afirma.standalone.SimpleAfirma main
INFORMACIÓN: Se intenta una precarga temprana de NSS
may 29, 2018 1:17:16 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities loadNSS
INFORMACIÓN: Configuracion de NSS para SunPKCS11:
name=NSSCrypto-AFirma
library=/usr/lib/thunderbird/libsoftokn3.so
attributes=compatibility
slot=2
showInfo=false
allowSingleThreadedModules=true
nssArgs="configdir='sql:/USERHOME/.mozilla/firefox/neab2acl.default' certPrefix='' keyPrefix='' flags='readOnly'"
may 29, 2018 1:17:16 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities loadNssJava8
INFORMACIÓN: NSS necesita una precarga o tratamiento de sus dependencias: java.lang.reflect.InvocationTargetException
may 29, 2018 1:17:16 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities loadNSS
INFORMACIÓN: Proveedor PKCS#11 para NSS anadido: SunPKCS11-NSSCrypto-AFirma
may 29, 2018 1:17:16 PM es.gob.afirma.keystores.AOKeyStoreManager init
INFORMACIÓN: Inicializamos el almacen de tipo: DNIe y tarjetas FNMT-TIF
may 29, 2018 1:17:16 PM es.gob.afirma.keystores.KeyStoreUtilities addPreferredKeyStoreManagers
INFORMACIÓN: No se ha encontrado un DNIe: java.security.ProviderException: No se ha podido inicializar el proveedor de DNIe: es.gob.jmulticard.apdu.connection.NoReadersFoundException: No se detectaron lectores de tarjetas en el sistema
may 29, 2018 1:17:16 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities getMozillaPKCS11Modules
INFORMACIÓN: Se incluiran los modulos nativos de DNIe/CERES si se encuentran configurados
may 29, 2018 1:17:16 PM es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities getMozillaPKCS11Modules
INFORMACIÓN: Obtenidos los modulos externos de Mozilla desde 'pkcs11.txt'
may 29, 2018 1:17:16 PM es.gob.afirma.keystores.mozilla.MozillaUnifiedKeyStoreManager init
INFORMACIÓN: Encontrados los siguientes modulos PKCS#11 externos instalados en Mozilla / Firefox: '/usr/lib/x86_64-linux-gnu/opensc-pkcs11.so'
may 29, 2018 1:17:16 PM es.gob.afirma.keystores.AOKeyStoreManager init
INFORMACIÓN: Inicializamos el almacen de tipo: PKCS#11
may 29, 2018 1:17:16 PM es.gob.afirma.keystores.KeyStoreUtilities createPKCS11ConfigFile
INFORMACIÓN: Creada configuracion PKCS#11:
library=/usr/lib/x86_64-linux-gnu/opensc-pkcs11.so
name=opensc-pkcs11_so
showInfo=false
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
may 29, 2018 1:17:16 PM es.gob.afirma.standalone.SimpleAfirma lambda$main$0
ADVERTENCIA: Error registrando datos en Google Analytics: java.net.ConnectException: Conexión rehusada
may 29, 2018 1:17:19 PM es.gob.afirma.keystores.AOKeyStoreManager init
INFORMACIÓN: Inicializamos el almacen de tipo: PKCS#11
may 29, 2018 1:17:19 PM es.gob.afirma.keystores.KeyStoreUtilities createPKCS11ConfigFile
INFORMACIÓN: Creada configuracion PKCS#11:
library=/usr/lib/x86_64-linux-gnu/opensc-pkcs11.so
name=opensc-pkcs11_so
showInfo=false
may 29, 2018 1:17:19 PM es.gob.afirma.keystores.mozilla.MozillaUnifiedKeyStoreManager init
ADVERTENCIA: No se ha podido inicializar el PKCS#11 'DNIe' tras haberlo intentado dos veces: es.gob.afirma.keystores.AOKeyStoreManagerException: Error construyendo el KeyStore PKCS#11 para la biblioteca '/usr/lib/x86_64-linux-gnu/opensc-pkcs11.so': java.security.KeyStoreException: KeyStore instantiation failed, es.gob.afirma.keystores.AOKeyStoreManagerException: Error construyendo el KeyStore PKCS#11 para la biblioteca '/usr/lib/x86_64-linux-gnu/opensc-pkcs11.so': java.security.KeyStoreException: KeyStore instantiation failed
may 29, 2018 1:17:19 PM es.gob.afirma.standalone.SimpleAfirma setKeyStoreManager
INFORMACIÓN: Establecido KeyStoreManager: Gestor de almacenes de claves Mozilla / Firefox (unificado) con nombre Mozilla / Firefox (unificado)
may 29, 2018 1:17:19 PM es.gob.afirma.standalone.SimpleAfirma loadDefaultKeyStore
INFORMACIÓN: Se omite la carga concurrente de almacen por haberse hecho una precarga previa
may 29, 2018 1:17:34 PM es.gob.afirma.signers.xml.Utils installXmlDSigProvider
INFORMACIÓN: Se usara el proveedor de XMLDSig 'XMLDSig': org.jcp.xml.dsig.internal.dom.XMLDSigRI
may 29, 2018 1:17:34 PM es.gob.afirma.signers.xml.Utils installXmlDSigProvider
INFORMACIÓN: Se usara el proveedor de XMLDSig 'XMLDSig': org.jcp.xml.dsig.internal.dom.XMLDSigRI
may 29, 2018 1:17:35 PM es.gob.afirma.signers.xml.Utils installXmlDSigProvider
INFORMACIÓN: Se usara el proveedor de XMLDSig 'XMLDSig': org.jcp.xml.dsig.internal.dom.XMLDSigRI
may 29, 2018 1:17:35 PM es.gob.afirma.signers.xml.Utils installXmlDSigProvider
INFORMACIÓN: Se usara el proveedor de XMLDSig 'XMLDSig': org.jcp.xml.dsig.internal.dom.XMLDSigRI
may 29, 2018 1:17:35 PM es.gob.afirma.signers.xml.Utils installXmlDSigProvider
INFORMACIÓN: Se usara el proveedor de XMLDSig 'XMLDSig': org.jcp.xml.dsig.internal.dom.XMLDSigRI
may 29, 2018 1:17:36 PM es.gob.afirma.standalone.ui.SignPanelSignTask doSignature
GRAVE: El almacen no contiene ningun certificado que se pueda usar para firmar: es.gob.afirma.keystores.AOCertificatesNotFoundException: No se han encontrado certificados en el almacen acordes a los filtros establecidos
Dear all,
we have been using autofirma with esing-cert alfresco pluging with success.
But lately we cannot sign documents through alfresco from Firefox. At its console we are getting:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://127.0.0.1:55088/afirma. (Reason: CORS request did not succeed).
Do you have any ideas on how could we fix it?
Firefox: 61.0.2 (64-bit)
IE and Chrome works fine.
Thanks in advanse for your answer and thank you for your code contribution.
La versión del cliente Java (9.0.4) de la última versión descargable de AutoFirma (1.6.2) debe ser reemplazada inmediatamente por Java 10.
Razón: Oracle announced the end of support of Java SE 9. Users should immediately transition to Java SE 10 (18.3).
Se trata de un error crítico.
Sorprendentemente la aplicacion autofirma esta solo para deb. una aplicación nececesaria para realizar tramietes con el gobierno.
Estoy en esto de los certificados digitales, DNI electrónico y todo ese asunto digital para tener acceso a los tramites digitales en las administraciones publicas... ya que hay una orden ministerial que desde el día 1 de octubre los trabajadores autonomos deben realizar sus tramites por via electronica.
mi sugerencia es la siguiente :
la Aplicación Autofirma nada más esta disponible para los siguientes Sistemas Operativos :
1.- Windows tanto 32 como 64
2.- Debian y sus derivados (Ubuntu, guadalinex, etc)
Mi pregunta es la siguiente :
Que pasa con las distribuciones basadas en Red Hat que manejan paquetes rpm como :
1.- Fedora
Udes. podrían realizar el paquete AutoFirma en rpm para estas distribuciones (colgarlo en el portal) y ser un poco alma caritativas con nosotros, usuarios de estas distribuciones, realmente es un HARA-KIRI realizar esto con ALIEN y convertirlo o hacer un RPM por nuestra propia cuenta, ya que no funciona tal cual, y se generan muchos errores...
aquí le pongo un ejemplo de lo que les estoy explicando :
https://linuxcasual.wordpress.com/2017/08/19/alien-y-el-dni-electronico-en-fedora-26/
yo estoy con oracle java 8/9/10/11 y fedora 29 ... Firefox 62 en 64 bits...
Muchísimas Gracias por su atención de antemano...
Atentamente,
Hola,
necesito el instalador de la versión 1.4.2 porque es el único que funciona con mi OS Mavericks. ¿Alguien podría hacerme el favor de mandármelo? Gracias por adelantado.
Hola:
He actualizado el código a la v1.6.
Compilo con: mvn install -Denv=install -Dgpg.skip -Dmaven.test.skip=true
Mi entorno de compilación es OpenJDK v1.8, concretamente java-1.8.0-openjdk-1.8.0.141-1.b16.fc24.x86_64
$ javac -version
javac 1.8.0_141
Pero al lanzar la compilación se queda interrumpida quejándose de la, obvia, carencia de javaws, que no está disponible en v1.8:
[ERROR] Failed to execute goal on project afirma-ui-simpleafirma-webstart: Could not resolve dependencies for project es.gob.afirma:afirma-ui-simpleafirma-webstart:jar:1.6: Could not find artifact javax.jnlp:jnlp-api:jar:8.0 at specified path /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.fc24.x86_64/jre/lib/javaws.jar -> [Help 1]
FYI
Hace unos meses instalé AutoFirma_1_6_2.deb en Debian 9 (arquitectura amd64) con escritorio Gnome y default-jre[openjdk-8-jre].
El primer día pude firmar documento(s); creo que la aplicación usa el certificado ya instalado en el navegador web (Mozilla Firefox).
Días después instalé un lector de tarjetas (incluyendo de DNIe), y días después se actualizó M.Firefox a la versión 60 (esa que ya no admite complementos NPAPI) siempre mediante los repositorios de la propia distribución Debian GNU/Linux.
Ahora cuando abro AutoFirma (sin insertar DNIe) aparece la «pantalla inicial» con los botones «Continuar con DNIe» y «Usar cualquier certificado» pero ninguno de los botones reacciona al clic (me interesa usar certificado).
En Fedora (desde hace muchas releases), las librerías de 64 bits se encuentran en /usr/lib64 y las de 32 bits en /usr/lib, por lo que en Fedora de 64 bits (con Firefox de 64 bits) se detecta incorrectamente que debería de estar utilizándose la biblioteca NSS de 32 bits, ya que nunca se busca en lib64.
Debería de incluirse un chequeo preferentemente de /usr/lib${Platform.getArch()}
antes de utilizar /usr/lib
, para que esto funcione en la mayoría de Unixes, o inspeccionar el valor del java.library.path y utilizarlo como referencia (ya que debería de haberse populado apropiadamente por la JVM).
Yo he conseguido firmar con firma trifásica en Fedora 27 añadiendo a la lista de búsqueda del NSS lib en primer lugar /usr/lib64 y compilando a mano los módulos con -DskipTests (porque uno de los tests falla con "plataforma incorrecta" como si Linux no estuviese soportado), con el certificado de la FNMT, Firefox 59 y teniendo en ~/.pki/nssdb los ficheros cert9.db
key4.db
y pkcs11.txt
.
Buenos días,
Estamos haciendo una integración con servicios de un ministerio que implica el uso del miniapplet. En una de las operaciones tenemos que intercambiar información con los servicios de este ministerio. Realizamos distintas peticiones a sus servicios que contiene información firmada por nosotros (usando el miniapplet). En total realizamos 4 operaciones de firma y una selección de certificado (No podemos firmar todos los datos de una vez porque no tenemos los datos de una vez.
El keystore que usamos es KEYSTORE_PKCS11
Al realizar la selección del certificado nos aparece el dialogo para introducir la clave de la tarjeta. En las siguientes operaciones de firma también van a aparecer. En total son 5 veces que el usuario tendrá que introducir la clave. Solo ocurre en Windows y macOS (En linux no sucede).
¿Tiene alguna solución? ¿Puede ser que nos falte algún tipo de configuración?
Espero vuestra contestación
Muchas gracias y un saludo.
Buenas tardes.
Al intentar firmar un campo de firma en un PDF previamente certificado que admite firmas, el cliente autofirma falla con el siguiente error:
El PDF está certificado y no admite firmas electrónicas adicionales.
Con el fin de que se pueda reproducir el error, se adjunta un
test.zip
ZIP que contiene un PDF previamente certificado que contiene un campo de firma. El cliente de autofirma debería permitir firmar el campo de firma.
Muchas gracias.
Hace tiempo informé de:
La versión del cliente Java (9.0.4) de la última versión descargable de AutoFirma (1.6.2) debe ser reemplazada inmediatamente por Java 10.
Razón: Oracle announced the end of support of Java SE 9. Users should immediately transition to Java SE 10 (18.3).
Se trata de un error crítico.
Esto lo comuniqué antes de que apareciera la versión 1.6.3.
ES UN ERROR CRÍTICO. Java SE 9 YA NO TIENE SOPORTE. SI SE DETECTA ALGUNA VULNERABILIDAD NO SERÁ CORREGIDA. DEBE USARSE LA ÚLTIMA VERSIÓN DE JAVA SE 10 (18.3) (O POSTERIOR).
Espero que alguno de los programadores de Autofirma que SÍ SABE LEER HAGA CASO DE ESTE AVISO Y SE USE UNA VERSIÓN ACTUALIZADA DE LA MÁQUINA JAVA EN AUTOFIRMA 1.6.4
Los equipos en en los que hemos probado utilizan Windows. La invocación a Autofirma se realiza desde una aplicación web con el Javascript del MiniApplet. El certificado seleccionado es de la FNMT. Antes de la actualización de Firefox funcionaba sin problemas.
Aparece la ventana de carga de Autofirma y la selección del certificado. Una vez seleccionado se muestra el error:
Adjunto el log de Autofirma para la petición:
AUTOFIRMA.afirma.log
Hola,
lanzando AutoFirma 1.6.2 en Kubuntu 18.04 recién instalado a partir de su .deb desde línea de comandos me da esta excepción:
...
Exception in thread "main" java.lang.ExceptionInInitializerError
at es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities.getSystemNSSLibDir(MozillaKeyStoreUtilities.java:246)
at es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities.loadNSS(MozillaKeyStoreUtilities.java:690)
at es.gob.afirma.keystores.mozilla.NssKeyStoreManager.getNssProvider(NssKeyStoreManager.java:111)
at es.gob.afirma.keystores.mozilla.NssKeyStoreManager.init(NssKeyStoreManager.java:58)
at es.gob.afirma.keystores.mozilla.MozillaUnifiedKeyStoreManager.init(MozillaUnifiedKeyStoreManager.java:68)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getNssKeyStoreManager(AOKeyStoreManagerFactory.java:488)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getMozillaUnifiedKeyStoreManager(AOKeyStoreManagerFactory.java:519)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getAOKeyStoreManager(AOKeyStoreManagerFactory.java:116)
at es.gob.afirma.standalone.SimpleAfirma.main(SimpleAfirma.java:571)
Caused by: java.lang.NullPointerException
at es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilitiesUnix.searchLastFirefoxVersion(MozillaKeyStoreUtilitiesUnix.java:99)
at es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilitiesUnix.<clinit>(MozillaKeyStoreUtilitiesUnix.java:32)
... 9 more
Revisando un poco el código en este repositorio, he llegado a la conclusión tentativa de que se debe a que la clase MozillaKeyStoreUtilitiesUnix
está tratando de listar los archivos de mi directorio /opt
(línea 97) y que al ir a recorrer el String[] que devuelve (línea 99), este es null y por eso falla. He mirado los permisos en este directorio y son raritos, concretamente son 0711 para el directorio .
, lo que implica que solo el propietario (root) puede listar ese directorio. He probado tanto a lanzar AutoFirma con sudo como a cambiar los permisos de /opt y a lanzar AutoFirma con mi usuario normal, y en ambos casos se abre aparantemente bien, así que parece que el problema serían los permisos de ese directorio (que no creo haber modificado yo, así que vendrán así en la instalación del SO).
La documentación del File.list()
señala que devuelve null si se produce un error de entrada/salida, así que supongo que comprobar que el valor devuelto no es null antes de intentar recorrerlo sería suficiente para solucionar el problema.
Saludos,
P.D. Por completitud, esta es la salida completa de la ejecución de AutoFirma por consola:
feb 04, 2019 5:49:45 PM es.gob.afirma.standalone.ProxyUtil setDefaultProxy
INFORMACIÓN: Las conexiones para protocolo 'http' son por defecto de tipo: DIRECT
feb 04, 2019 5:49:45 PM es.gob.afirma.standalone.ProxyUtil setDefaultProxy
INFORMACIÓN: Las conexiones para protocolo 'https' son por defecto de tipo: DIRECT
feb 04, 2019 5:49:45 PM es.gob.afirma.standalone.ProxyUtil setProxySettings
INFORMACIÓN: No se usara Proxy para las conexiones de red
feb 04, 2019 5:49:45 PM es.gob.afirma.standalone.SimpleAfirma main
INFORMACIÓN: No se buscaran nuevas versiones de la aplicacion
feb 04, 2019 5:49:45 PM es.gob.afirma.standalone.SimpleAfirma printSystemInfo
INFORMACIÓN: Resolucion DPI de pantalla: 0
Sistema operativo: Linux
Version del SO: 4.15.0-45-generic
Version de Java: 1.8.0_201
Arquitectura del JRE: 64
Java Vendor: Oracle Corporation
Localizacion por defecto: es_ES
Tamano actual en memoria: 479MB
Tamano maximo de memoria: 7097MB
Memoria actualmente libre: 402MB
feb 04, 2019 5:49:45 PM es.gob.afirma.standalone.SimpleAfirma main
INFORMACIÓN: Apertura como herramienta de escritorio
feb 04, 2019 5:49:46 PM es.gob.afirma.standalone.SimpleAfirma main
INFORMACIÓN: Se intenta una precarga temprana de NSS
Exception in thread "main" java.lang.ExceptionInInitializerError
at es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities.getSystemNSSLibDir(MozillaKeyStoreUtilities.java:246)
at es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities.loadNSS(MozillaKeyStoreUtilities.java:690)
at es.gob.afirma.keystores.mozilla.NssKeyStoreManager.getNssProvider(NssKeyStoreManager.java:111)
at es.gob.afirma.keystores.mozilla.NssKeyStoreManager.init(NssKeyStoreManager.java:58)
at es.gob.afirma.keystores.mozilla.MozillaUnifiedKeyStoreManager.init(MozillaUnifiedKeyStoreManager.java:68)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getNssKeyStoreManager(AOKeyStoreManagerFactory.java:488)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getMozillaUnifiedKeyStoreManager(AOKeyStoreManagerFactory.java:519)
at es.gob.afirma.keystores.AOKeyStoreManagerFactory.getAOKeyStoreManager(AOKeyStoreManagerFactory.java:116)
at es.gob.afirma.standalone.SimpleAfirma.main(SimpleAfirma.java:571)
Caused by: java.lang.NullPointerException
at es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilitiesUnix.searchLastFirefoxVersion(MozillaKeyStoreUtilitiesUnix.java:99)
at es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilitiesUnix.<clinit>(MozillaKeyStoreUtilitiesUnix.java:32)
... 9 more
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
The project doesn't compile because there are at least a couple of snapshot libs that I can't find anywhere (itext and jmimemagic).
jmime is retrocompatible (it seems) but iText v1.1 vs the required v1.2-SNAPSHOT is not....
Thanks
Buenas, estoy teniendo problemas al montar este proyecto. Necesito generar el "afirma-ui-simpleafirma-3.3.2-snapshopt.jar" pero en java 7, cosas del weblogic donde tengo que desplegar.
El proyecto me falla a partir del segundo modulo con este error:
[ERROR] Failed to execute goal on project afirma-core-keystores: Could not resolve dependencies for project es.gob.afirma:afirma-core-keystores:jar:1.7-SNAPSHOT: The following artifacts could not be resolved: es.gob.afirma.jmulticard:jmulticard:jar:1.5-SNAPSHOT, es.gob.afirma.jmulticard:jmulticard-jse:jar:1.5-SNAPSHOT, es.gob.afirma.jmulticard:jmulticard-ui:jar:1.5-SNAPSHOT: Could not find artifact es.gob.afirma.jmulticard:jmulticard:jar:1.5-SNAPSHOT ->
He realizado los comandos que se nombran en el readme pero sin éxito. ¿Alguna sugerencia?
Para nuestra distribución "GECOS" necesitabamos un instalador desatentido, que no hiciera preguntas al usuario.
Ya puestos le hemos hecho alguna mejora. Por si a alguien le viene bien, aquí está:
Durante la instalación, teniendo el Chrome cerrado, salta el mensaje de cerrar el navegador Chrome y es imposible acabar la instalación.
Para integrar AutoFirma en el administrador de ficheros de GECOS/Guadalinex/Ubuntu... me gustaría hacer algunas pruebas llamando a AutoFirma desde línea de comandos.
Sin embargo, no consigo indicarle qué certificado debe usar. Ni con el parámetro -alias ni con -filter. ¿Podríais poner algún ejemplo?
Versión de AutoFirma: 1.6.3
Versión de Ms. Windows: Windows 10
Versión de Mozilla Firefox: 64.0
El instalador se queda con el mensaje:
Extrayendo : "C:\Program Files\AutoFirma\AutoFirma\AutoFirmaConfigurador.exe" /passive
y no termina de instalar la aplicación.
El problema radica en que al tener Firefox una contraseña maestra para el inicio de sesión y contraseñas, como el instalador no solicita esta contraseña, no puede acceder a la base de datos con los certificados de Firefox.
Solución temporal: si se elimina la contraseña maestra en firefox, AutoFirma se instala correctamente. Una vez instalada la aplicación, se puede habilitar la contraseña maestra ya que AutoFirma muestra un cuadro para introducir dicha contraseña cuando es necesario.
Al intentar seleccionar un certificado que no está instalado en la máquina no aparece visible la ventana para introducir la contraseña.
Pasos para reproducir:
Se queda bloqueado y la ventana para introducir contraseña no aparece visible. Realmente si está (se adjunta captura) y si escribes la contraseña y pulsas Intro, se carga correctamente el certificado y permite firmar.
Autofirma 1.6.3
Windows 10
Pasa firmando en local en la máquina y también invocando Autofirma desde la web
Por poner un ejemplo con la distribución Debian GNU/Linux, Al paquete AutoFirma_1_6_2.deb del faltan acciones de «postinst» como:
ln -s /etc/firefox/pref/AutoFirma.js /etc/firefox/AutoFirma.js
if [ -d /etc/icecat ] ; then
ln -s /etc/firefox/pref/AutoFirma.js /etc/icecat/AutoFirma.js
fi
if [ -d /etc/firefox-esr ] ; then
ln -s /etc/firefox/pref/AutoFirma.js /etc/firefox-esr/AutoFirma.js
fi
Esto da soporte al navegador predeterminado de Debian (M.Firefox ESR) y al navegador que es algo más seguro Gnuzilla Icecat. Probablemente haya más navegadores derivados de Mozilla que también deberían estar contemplados.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.