Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No se han encontrado certificados válidos en el almacén (Firefox, GNU/Linux y MacOS) #214

Open
dvilelaf opened this issue Jul 21, 2021 · 12 comments

Comments

@dvilelaf
Copy link

dvilelaf commented Jul 21, 2021

Desde hace un tiempo Afirma ha dejado de encontrar mi certificado del almacén de Firefox, y no puedo firmar documentos. Estoy con la versión 1.6.5 sobre Ubuntu 18.04 y tengo el mismo problema tanto con java-8-openjdk como java-11-openjdk. Puedo replicar el mismo problema en varios pcs con el mismo sistema y también en un portátil con macOS Big Sur 11.1.

jul. 21, 2021 7:32:25 P. M. es.gob.afirma.standalone.ProxyUtil clearJavaProxy
INFORMACIÓN: No se usara Proxy para las conexiones de red
jul. 21, 2021 7:32:25 P. M. es.gob.afirma.standalone.SimpleAfirma main
INFORMACIÓN: No se buscaran nuevas versiones de la aplicacion
jul. 21, 2021 7:32:25 P. M. es.gob.afirma.standalone.SimpleAfirma printSystemInfo
INFORMACIÓN: AutoFirma 1.6.5
Resolucion DPI de pantalla: 0
Sistema operativo: Linux
Version del SO: 5.4.0-80-generic
Version de Java: 11.0.11
Arquitectura del JRE: 64
Java Vendor: Ubuntu
Localizacion por defecto: es_ES
Tamano actual en memoria: 252MB
Tamano maximo de memoria: 3980MB
Memoria actualmente libre: 179MB
jul. 21, 2021 7:32:25 P. M. es.gob.afirma.standalone.SimpleAfirma main
INFORMACIÓN: Apertura como herramienta de escritorio
jul. 21, 2021 7:32:25 P. M. es.gob.afirma.standalone.SimpleAfirma main
INFORMACIÓN: Se intenta una precarga temprana de NSS
jul. 21, 2021 7:32:25 P. M. es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities loadNSS
INFORMACIÓN: Configuracion de NSS para SunPKCS11:
name=NSSCrypto-AFirma
library=/usr/lib/firefox/libsoftokn3.so
attributes=compatibility
slot=2
showInfo=false
allowSingleThreadedModules=true
nssArgs="configdir='sql:/USERHOME/.mozilla/firefox/h7z3kpwj.default' certPrefix='' keyPrefix='' flags='readOnly'"
jul. 21, 2021 7:32:25 P. M. es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities loadNssJava9
ADVERTENCIA: NSS no se ha podido iniciar sin precargar sus dependencias: java.lang.reflect.InvocationTargetException
jul. 21, 2021 7:32:25 P. M. es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities loadNSS
INFORMACIÓN: Proveedor PKCS#11 para NSS anadido: SunPKCS11-NSSCrypto-AFirma
jul. 21, 2021 7:32:25 P. M. es.gob.afirma.keystores.mozilla.NssKeyStoreManager init
INFORMACIÓN: No se ha podido abrir el almacen sin contrasena, se intentara proporcionando una : java.security.cert.CertificateException: Signature algorithm mismatch
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.
jul. 21, 2021 7:32:28 P. M. es.gob.afirma.keystores.mozilla.NssKeyStoreManager init
ADVERTENCIA: No se ha podido abrir el almacen PKCS#11 NSS del proveedor SunPKCS11: java.security.cert.CertificateException: Signature algorithm mismatch
jul. 21, 2021 7:32:28 P. M. es.gob.afirma.keystores.AOKeyStoreManager init
INFORMACIÓN: Inicializamos el almacen de tipo: DNIe y tarjetas FNMT-TIF
jul. 21, 2021 7:32:28 P. M. 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
jul. 21, 2021 7:32:28 P. M. es.gob.afirma.keystores.AOKeyStoreManager init
INFORMACIÓN: Inicializamos el almacen de tipo: Tarjeta FNMT-RCM CERES 4.30 o superior
jul. 21, 2021 7:32:28 P. M. es.gob.afirma.keystores.KeyStoreUtilities addPreferredKeyStoreManagers
INFORMACIÓN: No se ha encontrado una tarjeta CERES 4.30 o superior: java.security.ProviderException: No se ha podido inicializar el proveedor de Ceres 4.30 y superior: es.gob.jmulticard.apdu.connection.NoReadersFoundException: No se detectaron lectores de tarjetas en el sistema
jul. 21, 2021 7:32:28 P. M. es.gob.afirma.keystores.AOKeyStoreManager init
INFORMACIÓN: Inicializamos el almacen de tipo: Tarjeta FNMT-RCM CERES
jul. 21, 2021 7:32:28 P. M. es.gob.afirma.keystores.KeyStoreUtilities addPreferredKeyStoreManagers
INFORMACIÓN: No se ha encontrado una tarjeta CERES: java.security.ProviderException: No se ha podido conectar con la tarjeta CERES: es.gob.jmulticard.apdu.connection.NoReadersFoundException: No se detectaron lectores de tarjetas en el sistema
jul. 21, 2021 7:32:28 P. M. es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities getMozillaPKCS11Modules
INFORMACIÓN: Se incluiran los modulos nativos de DNIe/CERES si se encuentran configurados
jul. 21, 2021 7:32:28 P. M. es.gob.afirma.keystores.mozilla.MozillaKeyStoreUtilities getMozillaPKCS11Modules
INFORMACIÓN: Obtenidos los modulos externos de Mozilla desde 'pkcs11.txt'
jul. 21, 2021 7:32:28 P. M. es.gob.afirma.keystores.mozilla.MozillaUnifiedKeyStoreManager init
INFORMACIÓN: No se han encontrado modulos PKCS#11 externos instalados en Firefox
jul. 21, 2021 7:32:28 P. M. es.gob.afirma.standalone.SimpleAfirma setKeyStoreManager
INFORMACIÓN: 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
jul. 21, 2021 7:32:28 P. M. es.gob.afirma.standalone.SimpleAfirma main
INFORMACIÓN: Cargando plugins
jul. 21, 2021 7:32:28 P. M. es.gob.afirma.standalone.SimpleAfirma main
INFORMACIÓN: Iniciando entorno grafico
jul. 21, 2021 7:32:28 P. M. es.gob.afirma.standalone.SimpleAfirma loadDefaultKeyStore
INFORMACIÓN: Se omite la carga concurrente de almacen por haberse hecho una precarga previa
jul. 21, 2021 7:32:39 P. M. es.gob.afirma.keystores.AggregatedKeyStoreManager getAliases
ADVERTENCIA: No se pudieron obtener los alias del almacen Mozilla / Firefox (unificado): java.lang.IllegalStateException: Se han pedido alias a un almacen no inicializado
jul. 21, 2021 7:32:39 P. M. es.gob.afirma.keystores.AggregatedKeyStoreManager getAliases
ADVERTENCIA: No se pudieron obtener los alias del almacen Mozilla / Firefox (unificado): java.lang.IllegalStateException: Se han pedido alias a un almacen no inicializado
jul. 21, 2021 7:33:02 P. M. es.gob.afirma.ui.core.jse.JSEUIManager showCertificateSelectionDialog
GRAVE: Se genero un error en el dialogo de seleccion de certificados: java.lang.reflect.InvocationTargetException
jul. 21, 2021 7:33:02 P. M. 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 validos en el almacen

Lo primero extraño que veo es que, a pesar de no tener una contraseña maestra en Firefox, el log dice:

INFORMACIÓN: No se ha podido abrir el almacen sin contrasena, se intentara proporcionando una : java.security.cert.CertificateException: Signature algorithm mismatch

Y pasa a pedirme una contraseña que no tengo.

@dvilelaf dvilelaf changed the title No se han encontrado certificados válidos en el almacén No se han encontrado certificados válidos en el almacén (Firefox, Linux y MacOS) Jul 23, 2021
@dvilelaf dvilelaf changed the title No se han encontrado certificados válidos en el almacén (Firefox, Linux y MacOS) No se han encontrado certificados válidos en el almacén (Firefox, GNU/Linux y MacOS) Jul 23, 2021
@alwayswatchintv
Copy link

alwayswatchintv commented Jul 28, 2021

hola, tengo el mismo problema con ubuntu 20.04.2 y firefox 90.02
claramente es un probleme que autofirma no puede conectar con firefox. a mi no se instala el autofirmaROOT.crt. lo tengo que importar, check si trusted pero igualmente FF no deja autofirma leerlo. igualmente intentando firmar un documento autofirma no puede acceder el almacen de firmas en FF. tengo que darle una ruta hacia el backup de la firma
restaurando instalacion desde autofirma da este error "No se han podido copiar los certificados de confianza SSL a disco"
y el FF no tiene masterpassword...y tambien he optado por java 8 no 11 como sugieren en muchos foros.
desesperante.....una subvencion ya he perdido por no poder firmar dentro de la pagina de la Xunta de galicia.
... tambien he checkeado que solo tengo un perfil en FF
uso:
Ubuntu 20.04.2 LTS
64-bit
GNOME 3.36.8
Firefox 90.0 (64-bit)
Autofirma 1.6.57

si alguien sepa que hacer.....thanxxx gracias

@acuartango
Copy link

Tenemos varias incidencias con este problema en MacOS.

@dangior
Copy link

dangior commented Dec 24, 2021

Confirmo que tengo este mismo problema en MacOS Monterey 12.1

@capri99
Copy link

capri99 commented Feb 1, 2022

Un resumen rápido, aquí:
#172 (comment)

Y más detalle aquí:
Creo que el problema puede ser por varios motivos:

  • Por favor, confirmad que no tenéis 2 perfiles en Firefox ya que AutoFirma se hace un lío. Ejecutad "firefox --ProfileManager" en una terminal de vuestro usuario y eliminar el perfil que no usáis. También existe la opción de instalar los certificados en ambos perfiles.

  • Otra posibilidad es que las librerías NSS no sean las correctas:

    • Desinstalar las librerías i386 libnss3:i386 en un entorno de 64 bits.
    • OJO que las librerías de Thunderbird también pueden entrar en conflicto con las de Firefox. Probad a desinstalar el Thunderbird y volver a ejecutar el AutoFirma.
  • Si tampoco va, entonces desinstalamos AutoFirma y eliminamos el/los certificados que instaló el AutoFirma en el Firefox -> Ajustes -> Privacidad y Seguridad -> Certificados -> Ver Certificados -> Autoridades
    imagen
    También eliminamos los rastros en:

  • /usr/lib/AutoFirma/

  • /usr/bin/AutoFirma

A la hora de instalar AutoFirma, si tenemos clave maestra de Firefox, nos la va a pedir para poder insertar el Certificado de Autoridad Certificadora en el anillo de claves.

A ver si a la enésima os va :-)

@oriolgual
Copy link

A mí no había manera que funcionara, y lo que he hecho es en el diálogo que te dice que no hay certificados importar el mío, y listo!

@rauldediegogarcia
Copy link

Hola, tengo el mismo problema con MacOS y Firefox. Abre el dialogo pero no me muestra ningún certificado. En realidad lo que quiero es elegir el DNIe, y al cambiar al tipo de almacén de DNIe, y refrescar, no muestra nada.

image

Ya he desinstalado e instalado Autofirma, pero nada.

Tengo el DNIe en el lector y he comprobado que es válido.

No pide contraseña por lo que estoy empezando a pensar que Autofirma, no muestra ese diálogo.

Si arranco Autofirma, selecciono DNIe, consigo firmar un documento (dummy) con el DNIe. Es extraño saber cómo funciona esta aplicación pero que necesito para sacar un Certificado Digital, y no tener que personarme en una oficina.

@acuartango
Copy link

Veo por los iconos que usas Autofirma 1.7.2 ¿Has probado a hacer clic en el segundo icono de los cuatro que hay donde se puede seleccionar el "Almacén de Certificados"?

En nuestro caso siempre tenemos que hacer clic en este icono para que nos aparezca el certificado de nuestra smartcard. De la lista que aparece hacemos clic en "Almacén de Certificados del Sistema". En algún caso nos ha pasado tener que usar "Almacén de certificados de Firefox".

@diegombeltran
Copy link

diegombeltran commented Apr 27, 2022

Suscribo todo lo que comenta @rauldediegogarcia, palabra por palabra.

En mi caso intento firmar online desde dos sitios dos documentos, haciendo uso del DNIe expedido en 2021 y con certificados válidos hasta 2023.

Probado en tres máquinas distintas (Debian 11, Fedora 35 y Windows 10). He intentado todo tipo de soluciones: Firefox y Chromium, instalando los paquetes oficiales de Autofirma y el configurador de la FMNT. He probado cambiando el JRE descargando varios JDK más nuevos (OpenJDK y Oracle Java) como indicaban en otra issue; borrados perfiles extra de Firefox, instalados los certificados raíz de las diversas entidades publicados en la web de la FMNT a mano en Firefox y a nivel de sistema... versiones probadas 1.7.2 en Windows y 1.7.1 en Debian y Fedora.

Decir que en el caso de Fedora el RPM por algún motivo no instalaba en /usr/lib64 ni el contenido de Autofirma ni el de Firefox, y he tenido que copiarlo a mano. El primer problema en Debian/Fedora ha sido que Autofirma no cargaba desde el navegador, solucionado tocando el .desktop a mano y la lista de MIME Types, así como el Protocol Handler de Firefox (Incluido en el prefs/autofirma.js). La información la he encontrado aquí. En mi caso no me daba ningún error explícito, simplemente intentaba firmar y no mostraba mensaje ni hacía nada, solo peticiones, código 200 y respuesta inválida.

El segundo problema es lo que comentaba @rauldediegogarcia : puedo firmar un fichero PDF si abro Autofirma de forma independiente. Aparece el certificado con el DNIe en el lector y todo bien. Si intento firmar directamente desde Firefox (En mi caso, en dos operaciones: al solicitar un certificado de la FMNT y al intentar firmar un documento en la AESA), se abre Autofirma pero no aparecen certificados. @acuartango comenta lo del icono, y me temo que he probado a cambiar el almacén de certificados tanto al de Firefox, como al del sistema, como al del DNIe, y en los tres casos aparece vacío. Cuando selecciono un almacén o pulso en actualizar, el lector de tarjetas parpadea (Tiene un led de actividad) pero el diálogo para seleccionar certificados sigue vacío. No tengo claro si puedo lanzar Autofirma desde Firefox con más verbosidad, de cara a debuguear, si es posible, ¿me podéis indicar cómo?

Curiosamente en esta web el test de Autofirma funciona a la primera.

@alex-albericio
Copy link

@rauldediegogarcia y @diegombeltran

Yo tenía el mismo problema con el DNIe (v3.0) de mi mujer en MacOS Monterey. Me aparecía el certificado si abría la app de forma independiente pero no desde Firefox. Con mi DNIe no tenía este problema.

Después de pelearme durante horas he visto en el fichero de log de Autofirma (~/.afirma/AUTOFIRMA.afirma.log.xml") este mensaje:

El DNIe no contiene certificado de firma (probablemente sea de un menor no emancipado)

Resulta que el DNIe tiene que tener dos certificados, uno para "Autenticación" y otro para "Firma" (o un certificado con los dos usos). En mi DNIe sí que aparece un certificado para cada uso. Pero, el DNIe de mi mujer NO tenía el de firma, sólo el de autenticación.

Probaremos de renovar el certificado en las máquinas de la comisaría a ver si hay suerte y se generan los certificados correctamente. Y ojo, que ya sería la tercera vez que tenemos que hacerlo. Flipante!

Nota: También ejecuté estos dos comandos porque me aparecían errores de que no encontraba estos 2 ficheros (aunque es posible que no sean errores críticos):

sudo ln -s /Applications/Firefox.app/Contents/MacOS/libmozglue.dylib /Applications/AutoFirma.app/Contents/Resources/Home/bin/libmozglue.dylib
sudo ln -s /Applications/Firefox.app/Contents/MacOS/libnss3.dylib /Applications/AutoFirma.app/Contents/Resources/Home/bin/libnss3.dylib

@alex-albericio
Copy link

@rauldediegogarcia y @diegombeltran

Yo tenía el mismo problema con el DNIe (v3.0) de mi mujer en MacOS Monterey. Me aparecía el certificado si abría la app de forma independiente pero no desde Firefox. Con mi DNIe no tenía este problema.

Después de pelearme durante horas he visto en el fichero de log de Autofirma (~/.afirma/AUTOFIRMA.afirma.log.xml") este mensaje:

El DNIe no contiene certificado de firma (probablemente sea de un menor no emancipado)

Resulta que el DNIe tiene que tener dos certificados, uno para "Autenticación" y otro para "Firma" (o un certificado con los dos usos). En mi DNIe sí que aparece un certificado para cada uso. Pero, el DNIe de mi mujer NO tenía el de firma, sólo el de autenticación.

Probaremos de renovar el certificado en las máquinas de la comisaría a ver si hay suerte y se generan los certificados correctamente. Y ojo, que ya sería la tercera vez que tenemos que hacerlo. Flipante!

Nota: También ejecuté estos dos comandos porque me aparecían errores de que no encontraba estos 2 ficheros (aunque es posible que no sean errores críticos):

sudo ln -s /Applications/Firefox.app/Contents/MacOS/libmozglue.dylib /Applications/AutoFirma.app/Contents/Resources/Home/bin/libmozglue.dylib
sudo ln -s /Applications/Firefox.app/Contents/MacOS/libnss3.dylib /Applications/AutoFirma.app/Contents/Resources/Home/bin/libnss3.dylib

Fuimos a renovar el certificado a las máquina de comisaría y, efectivamente, al darle a renovar ya nos aparecía un aviso de que el DNIe no contenía certificado de firma y preguntaba si lo queríamos generar. Después de hacer esta renovación (y de desinstalar FireFox v100, porque ha dejado de funcionar el DNIe en esta versión, e instalar FF v91.9.1esr Extended Support Release), ya me funciona todo correcto.

@Evelyn0
Copy link

Evelyn0 commented Aug 10, 2022

Hola tenia el mismo problema, lo que me sirvió a mi fue guardar el ceritficado en el equipo en lugar de firefox. De esta manera cuando aparece el recuadro en el que dice que no se han encontrado certificados lo que hago es cambiar la direccion de almacenamiento. Así pueden ahorrarse el verificar si hay doble perfil en firefox o instalar algun program
cerificado
a

@lukyluket
Copy link

Me acaba de pasar con una nueva instalacion de ubuntu 22.04.
Creo que la razon es que en la nueva instalacion firefox viene en snap, y sus ficheros de configuracion estan en $HOME/snap/firefox/common/.mozilla/

hice un link simbolico a ese directorio en mi $HOME como si hubiera el .mozilla/ directamente y ahora todo vuelve a funcionar.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests