El DNI electrónico español (DNIe) contiene dos certificados digitales:
- Certificado de autenticación (para identificarte en sitios web oficiales)
- Certificado de firma digital (para firmar documentos, por ejemplo en AutoFirma)
En macOS, aunque Firefox puede usar estos certificados directamente, otros navegadores (Chrome, Safari) y apps como AutoFirma no los ven por defecto porque dependen del sistema (Keychain / Llavero).
Hacer que los certificados del DNIe estén disponibles para todo el sistema macOS: navegadores, AutoFirma, Hacienda, etc.
-
macOS Ventura, Monterey, o superior
-
DNIe con chip activo
-
Lector compatible (funcionando)
-
Módulo instalado en:
/Library/Libpkcs11-dnie/lib/libpkcs11-dnie.so
-
Tener instalado:
Homebrew
opensc
(brew install opensc
)
brew install opensc
Esto instala herramientas como pkcs11-tool
, que usaremos para extraer los certificados.
Con el DNIe insertado:
pkcs11-tool --module /Library/Libpkcs11-dnie/lib/libpkcs11-dnie.so -O
Verás algo como:
Certificate Object; label: CertAutenticacion
ID: 4130...
Certificate Object; label: CertFirmaDigital
ID: 4630...
Ejecuta estos comandos para guardarlos en el escritorio:
# Certificado de autenticación
pkcs11-tool --module /Library/Libpkcs11-dnie/lib/libpkcs11-dnie.so \
-r -y cert \
-d 413032... (completo del paso anterior) \
-o ~/Desktop/dnie-auth.cer
# Certificado de firma
pkcs11-tool --module /Library/Libpkcs11-dnie/lib/libpkcs11-dnie.so \
-r -y cert \
-d 463032... \
-o ~/Desktop/dnie-sign.cer
security import ~/Desktop/dnie-auth.cer -k ~/Library/Keychains/login.keychain-db
security import ~/Desktop/dnie-sign.cer -k ~/Library/Keychains/login.keychain-db
Ahora puedes abrir “Acceso a Llaveros (Keychain Access)” y verás los certificados dentro de la sección "login".
Al acceder a sitios como:
… el navegador te pedirá seleccionar el certificado del DNIe.
Cuando intentas autenticarte o firmar, macOS solicita tu PIN (contraseña) del DNIe.
- El PIN es un número de 6 a 8 dígitos que te dieron al sacar tu DNIe.
- Si no recuerdas el PIN, debes acudir a una comisaría con lector de DNIe para cambiarlo.
- El sistema operativo pedirá el PIN automáticamente al usar el certificado (no antes).
Ejemplo:
- Abrir AutoFirma y firmar → te pedirá PIN
- Entrar a la Agencia Tributaria con DNIe → te pedirá PIN
- Abre Safari o Chrome
- Ve a: https://www.dnielectronico.es
- Entra en "Prueba de DNIe"
- Selecciona el certificado cuando lo pida
- Introduce tu PIN
- Si ves tu nombre: ¡todo está funcionando!
Crea un archivo en:
~/Library/Application Support/AutoFirma/autofirma.cfg
Con este contenido:
keystore.dnie.native.library=/Library/Libpkcs11-dnie/lib/libpkcs11-dnie.so
- Firefox: funciona automáticamente (si configuraste PKCS#11)
- Safari / Chrome: funciona tras importar al Llavero
- AutoFirma: funciona tras configurar
.cfg
- Todo el sistema reconoce el DNIe
- Se pide el PIN solo cuando es necesario usar el certificado
Ojo con el paso 1: al instalar
opensc
en Sequoia, Homebrew muestra un warning que dice:La opción correcta es instalar
opensc-app
conbrew install opensc-app
, que instala el Cask de OpenSC.