KeePassXC

Estas instrucciones describen cómo proteger y encriptar una base de datos de contraseñas KeePassXC con Nitrokey 3.

Nota

Primer Paso: Generar un secreto HMAC con la aplicación Nitrokey 2

  1. Abra Nitrokey App 2

  2. Seleccione la Nitrokey 3

  3. Seleccione la pestaña PASSWORDS.

  4. Haga clic en ADD para crear una nueva credencial

  5. Seleccione HMAC en el menú desplegable del algoritmo

    Nota

    • La credencial se nombra automáticamente en HmacSlot2.

    • No se pueden guardar atributos adicionales para la credencial HMAC.

    • El secreto HMAC debe tener exactamente 20 bytes y estar en formato Base32. Es decir, exactamente 32 caracteres.

    • Es posible guardar exactamente un secreto HMAC en una Nitrokey 3.

  6. Para generar un secreto, hay un botón en el campo de la derecha. También es posible introducir su propio secreto, siempre que sea conforme.

    Advertencia

    La base de datos ya no se puede desbloquear si la Nitrokey 3 se pierde o no está disponible. Por lo tanto, es posible que desee configurar un segundo Nitrokey 3 con el mismo secreto HMAC como un dispositivo de copia de seguridad.

    Importante

    El secreto puede sólo ser visto antes de guardar. Si la base de datos KeePassXC se va a utilizar con otro Nitrokey 3, se debe copiar el secreto HMAC que es sólo posible antes de guardar la credencial.

  7. Haga clic en SAVE para guardar la credencial

Primera Opción: Proteger una base de datos KeePassXC existente con una Nitrokey 3

  1. Abrir KeePassXC

  2. Abre la base de datos KeePassXC existente que se va a proteger con una Nitrokey 3.

  3. Seleccione Database -> Database Security... en la barra de menú

  4. Seleccione Security en el lado izquierdo

  5. Haga clic en el botón Add additional protection... de la pestaña Database Credentials.

  6. Desplácese hasta Challenge-Response y haga clic en Add Challenge-Response

  7. Ahora, si la Nitrokey 3 está conectada y antes se generó un HMAC, la Nitrokey 3 debería aparecer en el campo.

    Haga clic en OK para añadir el Nitrokey 3 a la base de datos existente KeePassXC

Nota

Por defecto, la Nitrokey 3 se utiliza como segundo factor además de la frase de contraseña. Para proteger la base de datos exclusivamente con la Nitrokey 3, elimine la frase de contraseña haciendo clic en el botón Remove Password.

Truco

Si no se reconoce el Nirokey 3, cierra KeePassXC por completo. A continuación, conecta el Nitrokey 3 al ordenador antes de reiniciar KeePassXC.

Segunda Opción: Creación de una base de datos KeePassXC, protegida por Nitrokey 3

  1. Abrir KeePassXC

  2. Selecciona Database -> New Database... en la barra de menú para crear una nueva base de datos KeePassXC.

  3. Rellene el nombre para mostrar y una descripción opcional para su nueva base de datos y haga clic en Continue

  4. Aquí se pueden configurar otros ajustes de cifrado de la base de datos o mantener los ajustes predeterminados. Los ajustes también pueden modificarse posteriormente en la configuración de la base de datos.

    Haga clic en Continue para confirmar la configuración.

  5. Credencial de la base de datos

    Aquí puedes introducir una contraseña como segundo factor para desbloquear la base de datos. Para conectar la Nitrokey 3 (en la que se generó el secreto HMAC) a la nueva base de datos KeePassXC, haz clic en Add additional protection....

  6. Desplácese hasta Challenge-Response y haga clic en Add Challenge-Response

  7. Ahora si el Nitrokey 3 está conectado y un HMAC fue generado antes, el Nitrokey 3 debería aparecer en el campo. Haz clic en Continue para completar la creación de la nueva base de datos KeePassXC.

Nota

Si la frase de contraseña se deja vacía, la base de datos estará protegida exclusivamente por la Nitrokey 3. Si se introduce una frase de contraseña, la base de datos estará protegida por la frase de contraseña y la Nitrokey 3.

Truco

Si no se reconoce el Nitrokey 3, cierra KeePassXC por completo. A continuación, conecta el Nitrokey 3 al ordenador antes de reiniciar KeePassXC.

Solución de problemas en Linux

Si el dispositivo Nirokey 3 no es reconocido por KeePassXC en un sistema Linux:

  • Siempre que las reglas udev se hayan configurado como se describe en aquí.

  • Siempre que el pcscd service se ha iniciado con:

    sudo systemctl start pcscd.service
    
  • Instala la última versión de KeePassXC con flatpak:

    flatpak install flathub org.keepassxc.KeePassXC
    
  • Instale ccid en sistemas basados en Arch Linux. Véase también: Arch wiki: Nitrokey.

pcscd: Tarjeta no encontrada

Problema: Una aplicación que utiliza pcscd no muestra la Nitrokey 3.

Solución: En primer lugar, asegúrese de que scdaemon no se está ejecutando (véase la sección anterior):

$ gpg-connect-agent "SCD KILLSCD" /bye

Ahora liste las smartcards reconocidas por pcscd con pcsc_scan -r. Deberías ver una entrada como esta:

$ pcsc_scan -r
Using reader plug'n play mechanism
Scanning present readers..
0: Nitrokey 3 [CCID/ICCD Interface] 00 00

Si el Nitrokey 3 aparece, es que es reconocido correctamente por pcscd y puede haber un problema con la aplicación que intenta acceder a él. Si no aparece, asegúrese de que su versión de libccid está actualizada. La compatibilidad con Nitrokey 3 se añadió en libccid 1.5.0.

Actualización de la base de datos de dispositivos

Si no puede actualizar libccid a una versión compatible, deberá actualizar manualmente la base de datos de dispositivos. La ruta de la base de datos depende de su distribución:

  • Arch, Debian, Ubuntu: /etc/libccid_Info.plist

Asegúrese de hacer una copia de seguridad del archivo antes de sobrescribirlo. Puede descargar un archivo de base de datos de dispositivos actualizado del repositorio nitrokey-3-firmware. Después de actualizar el archivo, reinicie pcscd y ejecute pcsc_scan -r de nuevo. Ahora debería aparecer el Nitrokey 3.