DNIe para Mac

Ayuda

El DNIe en Firefox en un Mac: el módulo PKCS#11

Guía actualizada: · por David Pelayo (nexoapex)

Si Firefox se comporta como si tu DNIe no existiera, no está roto nada: Firefox tiene su propio almacén de certificados y, para leer la tarjeta por su cuenta, necesita un módulo PKCS#11. Esta guía explica cuál, dónde está y por qué aparece el error «No es posible añadir el módulo».

Por qué Firefox necesita un módulo aparte

Safari, Chrome y Edge usan el llavero de macOS, y las tarjetas inteligentes llegan a él a través de CryptoTokenKit. Apple documenta que macOS reconoce de serie los lectores USB de clase CCID y las tarjetas PIV, pero el DNIe no es una tarjeta PIV: para que su certificado aparezca en el diálogo de esos navegadores hace falta una extensión de CryptoTokenKit que lo publique en el llavero, como la que activa DNIe Pro en DNIe para Mac.

Firefox no participa de eso. Mantiene su propio almacén (NSS) y habla con las tarjetas por el estándar PKCS#11, que es una interfaz genérica para dispositivos criptográficos. Sin un módulo PKCS#11 cargado, Firefox literalmente no tiene forma de ver tu DNIe.

Hay un matiz que lo cambia todo si usas una app que publique el DNIe en el llavero: desde Firefox 75 existe una preferencia, security.osclientcerts.autoload, que carga un módulo interno llamado osclientcerts para leer los certificados de cliente del sistema en Windows y macOS. En las versiones actuales de Firefox para macOS viene activada de serie (lo comprobamos en Firefox 155 y, a 16 de septiembre de 2026, sigue así en el código de Firefox 156 y de las versiones ESR 140 y 153), y es la razón por la que una identidad publicada en el llavero, como la que publica DNIe para Mac, aparece en Firefox sin instalar nada. Lo que no hace es leer la tarjeta por su cuenta: sin una app que la publique, Firefox necesita el módulo PKCS#11 de la tarjeta.

Qué módulo instalar (y cuál no)

El módulo oficial del DNIe lo publica la Dirección General de la Policía en el área de descargas de dnielectronico.es. A 16 de septiembre de 2026, la versión es 1.6.8 y se ofrece en cuatro archivos:

MacArchivos
Intel (x64)libpkcs11-dnie-1.6.8.dmg · libpkcs11-dnie-1.6.8.pkg
Apple Silicon (ARM)libpkcs11-dnie-1.6.8_arm.dmg · libpkcs11-dnie-1.6.8_arm.pkg

La propia página indica que ambas cubren macOS 26 Tahoe, 15 Sequoia, 14 Sonoma y 13 Ventura. Todavía no menciona macOS 27, que Apple publicó el 14 de septiembre de 2026. Elegir mal aquí es el error más frecuente de todos, y lo explicamos más abajo.

Y una confusión clásica: la FNMT publica otro módulo distinto, para su propia tarjeta y el DNIe, que se instala en /Library/Libpkcs11-fnmtdnie/lib/libpkcs11-fnmtdnie.so. No es el mismo archivo ni la misma ruta. Si sigues un tutorial y la ruta no coincide con la que tienes instalada, Firefox no cargará nada.

Instalarlo y cargarlo en Firefox

  1. Descarga el archivo que corresponde a tu Mac. Si no sabes cuál tienes: menú Apple > Acerca de este Mac; si el chip empieza por «Apple», necesitas la versión _arm.
  2. Abre el .dmg y haz doble clic en el icono del instalador (o instala el .pkg) y sigue el asistente. Todo queda dentro de /Library/Libpkcs11-dnie.
  3. En Firefox, ve a Ajustes > Privacidad & Seguridad, baja hasta Certificados y pulsa Administrar dispositivos de seguridad.
  4. Pulsa Cargar, ponle un nombre al módulo (el manual oficial sugiere «DNIE Módulo P11») e indica la ruta:
    /Library/Libpkcs11-dnie/lib/libpkcs11-dnie.so
  5. Acepta. Si todo ha ido bien, el módulo aparece en la lista con una ranura por cada lector conectado.

El manual oficial describe el menú como «Preferencias > Avanzado > Cifrado > Dispositivos de seguridad»: es la ruta de un Firefox de hace más de una década — el documento está escrito para Mac OS X Mountain Lion y Mavericks. La ubicación de hoy es la del paso 3; el resto de la carga del módulo sigue siendo igual.

Importar el certificado raíz

Con el módulo cargado, Firefox ya ve tus certificados, pero todavía puede no fiarse de quién los emitió. El instalador 1.6.8 deja el certificado raíz del DNIe junto al módulo, aunque no en la ruta que citan el manual oficial y la guía de la Agencia Tributaria:

  1. En Ajustes > Privacidad & Seguridad > Certificados, pulsa Administrar certificados y ve a la pestaña Autoridades.
  2. Pulsa Importar e indica la ruta /Library/Libpkcs11-dnie/AC RAIZ DNIE 2.crt (en el selector de archivos: Macintosh HD > Biblioteca > Libpkcs11-dnie).
  3. El asistente te pedirá que establezcas la confianza: marca todas las casillas que te ofrezca, tal como indica la página de ayuda que abre el instalador oficial.

«No es posible añadir el módulo»: las cuatro causas

Ese mensaje significa una sola cosa: Firefox ha encontrado el archivo pero no ha podido cargarlo como módulo criptográfico. En un Mac casi siempre es una de estas cuatro.

Si quieres empezar de cero, para desinstalar basta con eliminar la carpeta /Library/Libpkcs11-dnie, que es lo que indica el manual oficial.

Comprobar que ha funcionado

En el Administrador de dispositivos deberías ver el módulo con una ranura por cada lector; con el DNIe insertado, la ranura aparece ocupada. La prueba de fuego es entrar en una sede electrónica: al pedirte el certificado, Firefox debería ofrecerte los del DNIe y pedirte el PIN.

Un detalle que ahorra disgustos: el manual oficial recomienda dejar en Certificados la opción «Preguntar cada vez» para cuándo un servidor solicite tu certificado personal, en lugar de dejar que Firefox elija uno automáticamente. El DNIe lleva dos certificados —uno de autenticación y otro de firma— y para identificarte es el de autenticación el que toca.

Si al iniciar sesión con el DNIe, después de introducir el PIN, Firefox responde «Falló el inicio de sesión», la Agencia Tributaria recoge cuatro causas: un sistema operativo no compatible con tu versión del DNIe, un módulo que no es la última versión o no está bien enlazado desde el Administrador de dispositivos, un lector del listado de problemáticos con el DNIe 3.0, o el PIN bloqueado. Si en el Administrador de dispositivos aparece «Unnamed Slot», el fabricante o el modelo del lector en lugar del DNIe, cierra Firefox, vuelve a conectar la tarjeta (si puedes, cambia el lector de puerto USB) y abre Firefox de nuevo.

Lo que no hace falta

Si prefieres no instalar nada

Todo lo anterior es necesario porque Firefox no tiene de dónde leer la tarjeta. Con DNIe Pro, DNIe para Mac publica tu DNIe en el llavero de macOS y Firefox lo lee de ahí, igual que Safari, Chrome o Edge, sin módulos ni certificados raíz que importar. Cómo activarlo, paso a paso: la guía del DNIe en Safari, Chrome y Edge. Su precio y qué es gratis están detallados en la portada. Si dudas entre esta vía y el módulo oficial, las comparamos en cómo instalar el DNIe en un Mac.

Y si lo que quieres es firmar un documento, no identificarte, el navegador no interviene en absoluto: mira cómo firmar un PDF con el DNIe en un Mac.

Preguntas frecuentes

¿Por qué el DNIe funciona en Safari pero no en Firefox?

Porque llegan a la tarjeta por caminos distintos. Safari, Chrome y Edge solo ven el DNIe si una extensión de CryptoTokenKit lo publica en el llavero de macOS: el sistema reconoce el lector CCID, pero no trae soporte para el DNIe, que no es una tarjeta PIV. Firefox tiene su propio almacén: puede leer la tarjeta con el módulo PKCS#11 oficial o, en sus versiones actuales, usar la identidad que otra app haya publicado en el llavero (preferencia security.osclientcerts.autoload).

¿Por qué el DNIe funciona en Firefox pero no en Safari ni en Chrome?

Porque el software oficial de la Policía para Mac es un módulo PKCS#11, y de los navegadores habituales Firefox es el que permite cargar ese tipo de módulo: las instrucciones oficiales solo explican cómo hacerlo en Firefox. Safari, Chrome y Edge buscan los certificados en el llavero de macOS, y el DNIe solo aparece allí si una aplicación lo publica mediante CryptoTokenKit, como hace DNIe para Mac con DNIe Pro. En ese caso aparece también en Firefox, que en sus versiones actuales lee de serie los certificados de cliente del sistema. Lo explicamos paso a paso en la guía del DNIe en Safari, Chrome y Edge.

¿Qué ruta tengo que poner al cargar el módulo?

/Library/Libpkcs11-dnie/lib/libpkcs11-dnie.so, que es donde el instalador oficial deja la biblioteca en macOS. Ojo: el módulo de la FNMT es otro distinto y vive en /Library/Libpkcs11-fnmtdnie/lib/libpkcs11-fnmtdnie.so; cargar el que no es también produce el error.

Me sale «No es posible añadir el módulo». ¿Qué significa?

Que Firefox ha encontrado la ruta pero no ha podido cargar la biblioteca. Las causas habituales son cuatro: haber instalado el módulo de la arquitectura equivocada (Intel en un Mac con Apple Silicon o al revés), que la ruta no exista porque la instalación no llegó a completarse, tener ya cargado un módulo con ese mismo nombre, o intentar cargarlo con el DNIe insertado (la Agencia Tributaria indica repetir la carga sin la tarjeta).

¿Necesito instalar un driver para el lector?

No. Desde macOS 10.15, cualquier lector USB de clase CCID funciona de serie a través de CryptoTokenKit, sin software adicional. El módulo PKCS#11 no es un driver del lector: es la pieza que le enseña a Firefox a hablar con la tarjeta.

¿DNIe para Mac me sirve para Firefox?

Sí. DNIe para Mac publica tu DNIe en el llavero de macOS y Firefox, en sus versiones actuales, lee de serie los certificados de cliente del sistema: el certificado aparece en su diálogo sin instalar ningún módulo. Publicar esa identidad es la función DNIe Pro. Si no usas la app, la vía para Firefox es el módulo oficial que explica esta guía.