> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zerokeyusb.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Importar credenciales

> Restaurar desde una copia de seguridad o migrar desde otro gestor. Pantalla a pantalla, desde el menú hasta los datos importados.

Importar carga credenciales (sitio, usuario, contraseña y opcionalmente un secreto TOTP) desde un fichero CSV vía USB serie. Se hace **después de desbloquear** el dispositivo y requiere **autorización física** con el botón Centro.

<Warning>
  La importación **sobreescribe** los huecos de destino sin preguntar. Si ya tienes credenciales, **haz una copia de seguridad** ([guía](/es/getting-started/creating-backups)) antes de continuar.
</Warning>

***

## Antes de empezar

| Necesitas                           | Cómo conseguirlo                                                                                              |
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| El dispositivo desbloqueado con PIN | Conéctalo y mete tu PIN                                                                                       |
| Fichero CSV con tus credenciales    | Una exportación previa, o un export desde 1Password / Bitwarden / Keepass adaptado al formato (ver más abajo) |
| Una herramienta serie               | [Web manager](https://zerokeyusb.com/manager) (recomendado), `screen`, `minicom`, PuTTY a 115200 bps          |

***

## Paso 1 — Abrir el menú

Estando en la primera credencial, pulsa **Izquierda**.

<img src="https://mintcdn.com/depbit/p6YzZPVAl__6h8gW/images/steps/importing-credentials-01-from-cred.svg?fit=max&auto=format&n=p6YzZPVAl__6h8gW&q=85&s=6127fd78adcf09999ab760eb1ad0fcbe" alt="Abrir el menú desde la credencial 1" width="884" height="283" data-path="images/steps/importing-credentials-01-from-cred.svg" />

*Pulsa **Izquierda** estando en la credencial 1.*

***

## Paso 2 — Entrar al submenú Tools

<Note>En el firmware actual este menú se llama **Tools** (se llamaba **Backup** cuando se hicieron estas capturas, y ahora contiene también la cartera Bitcoin). La posición y los pasos son idénticos — Export/Import están dentro de él.</Note>

En el menú raíz, **Tools** está seleccionado por defecto. Pulsa **Centro**.

<img src="https://mintcdn.com/depbit/p6YzZPVAl__6h8gW/images/steps/importing-credentials-02-backup-menu.svg?fit=max&auto=format&n=p6YzZPVAl__6h8gW&q=85&s=d56ee2e0f1ba06c4db4bf1d549e36f59" alt="Menú raíz, Backup seleccionado" width="884" height="283" data-path="images/steps/importing-credentials-02-backup-menu.svg" />

*Pulsa **Centro**.*

***

## Paso 3 — Seleccionar "Importar"

Dentro de Backup, `Importar` está arriba. Si no está resaltado, pulsa **Arriba** hasta llegar. Luego **Centro**.

<img src="https://mintcdn.com/depbit/p6YzZPVAl__6h8gW/images/steps/importing-credentials-03-import-selected.svg?fit=max&auto=format&n=p6YzZPVAl__6h8gW&q=85&s=d293127bcbbd72ba4dcf798e8d65402e" alt="Importar seleccionado" width="884" height="283" data-path="images/steps/importing-credentials-03-import-selected.svg" />

*Con `Importar` resaltado, pulsa **Centro**.*

***

## Paso 4 — Autorización física

Igual que en la exportación, una pantalla de autorización pide pulsación larga en Centro antes de habilitar el canal de importación.

<img src="https://mintcdn.com/depbit/p6YzZPVAl__6h8gW/images/steps/importing-credentials-04-authorization.svg?fit=max&auto=format&n=p6YzZPVAl__6h8gW&q=85&s=6f129323b7042d8945b42f54c7820476" alt="Pantalla de autorización para importar" width="884" height="283" data-path="images/steps/importing-credentials-04-authorization.svg" />

*Antes de continuar, prepara tu fichero CSV en el host. Cuando estés listo, **mantén Centro \~1 segundo**. El dispositivo envía `REQUEST_SAVE` por USB serie esperando los datos.*

<Warning>
  **No pulses Centro corto por accidente** — la pulsación corta no autoriza nada (solo pasa a la siguiente pantalla del menú si la hubiera).
</Warning>

***

## Paso 5 — Enviar el CSV desde el host

Con el dispositivo en modo "esperando datos", envía por USB serie:

1. Una línea con el **número total de registros** a importar (ejemplo: `5`).
2. Una línea CSV por cada credencial siguiendo este formato:
   ```csv theme={null}
   slotIndex,sitio,usuario,clave[,secretoTotp]
   ```

Ejemplo completo:

```csv theme={null}
5
0,github.com,alice,MyP@ss123,JBSWY3DPEHPK3PXP
1,gmail.com,bob@gmail.com,correct horse battery staple
2,bank.com,12345678X,s3cur3P@ss,JBSWY3DPEHPK3PXP;algo=SHA256
3,aws-prod,admin,A!7zQ#mYpL2v
4,banca,12345678X,Pin-only2FA
```

Cada línea se procesa así:

```
Host → dispositivo:   "0,github.com,alice,MyP@ss123,JBSWY3DPEHPK3PXP"
Dispositivo:           lo cifra y lo guarda en el hueco 0
Dispositivo → host:    "Record 1 stored correctly."
```

<Tip>
  El [web manager](https://zerokeyusb.com/manager) tiene un selector de fichero que envía las líneas en el orden correcto y enseña el progreso. Si no quieres pelearte con la terminal, úsalo.
</Tip>

***

## Paso 6 — Progreso

Durante la importación verás en pantalla qué slot se está escribiendo y el progreso global.

<img src="https://mintcdn.com/depbit/p6YzZPVAl__6h8gW/images/steps/importing-credentials-05-progress.svg?fit=max&auto=format&n=p6YzZPVAl__6h8gW&q=85&s=53ab2ed520ee7a82ee091db13cba0d68" alt="Progreso de importación" width="884" height="283" data-path="images/steps/importing-credentials-05-progress.svg" />

*Cuando termina, el dispositivo muestra "Importacion completa" durante 1 segundo y vuelve al menú. Pulsa **Izquierda** para salir hacia la lista de credenciales y verificar que se han añadido.*

***

## Paso 7 — Verificar

Pulsa **Izquierda** repetidamente para salir del menú a la lista de credenciales. Navega con **Izquierda/Derecha** y comprueba que los datos importados aparecen.

<img src="https://mintcdn.com/depbit/p6YzZPVAl__6h8gW/images/steps/importing-credentials-06-verified.svg?fit=max&auto=format&n=p6YzZPVAl__6h8gW&q=85&s=efa8191a6800d77d6f488ec5c48cf6ba" alt="Credencial importada en la pantalla principal" width="884" height="283" data-path="images/steps/importing-credentials-06-verified.svg" />

*Usa **Derecha** para recorrer las credenciales recién importadas. Si todo aparece bien, considera hacer una [nueva copia de seguridad](/es/getting-started/creating-backups) ahora.*

***

## Formato del CSV

| Campo        | Descripción             | Límite                     |
| ------------ | ----------------------- | -------------------------- |
| `slotIndex`  | Hueco de destino        | 0–61                       |
| `site`       | Sitio o servicio        | 32 caracteres              |
| `username`   | Usuario                 | 32 caracteres              |
| `password`   | Contraseña              | Cualquier ASCII imprimible |
| `totpSecret` | (opcional) Secreto TOTP | Ver abajo                  |

### Formatos de secreto TOTP aceptados

| Formato                   | Ejemplo                                                                |
| ------------------------- | ---------------------------------------------------------------------- |
| Base32 a secas            | `JBSWY3DPEHPK3PXP`                                                     |
| Base32 + algoritmo        | `JBSWY3DPEHPK3PXP;algo=SHA256`                                         |
| URI `otpauth://` completa | `otpauth://totp/GitHub:alice?secret=JBSWY3DPEHPK3PXP&algorithm=SHA256` |

Algoritmo por defecto si no se especifica: **SHA-1**.

***

## Validación y errores

| Caso                        | Comportamiento                            |
| --------------------------- | ----------------------------------------- |
| `slotIndex` fuera de 0–61   | Rechaza la línea: `"Index out of range"`  |
| Base32 inválida             | Rechaza el secreto TOTP: `"TOTP invalid"` |
| Línea con menos de 3 campos | Se salta con un log de error              |
| Línea vacía                 | Termina la importación temprano           |

***

## Migración desde otros gestores

Para migrar de 1Password, Bitwarden, Keepass u otros:

1. Exporta a CSV en el gestor de origen.
2. Adapta el CSV al formato ZeroKeyUSB (script Python sencillo — recorta cada campo a 32 chars y reordena columnas).
3. Importa siguiendo esta guía.

<Tip>
  Hay plantillas de scripts de conversión en el [repositorio de tools](https://github.com/Depbit-lab/zerokeyusb-tools) — `tools/convert_<source>.py`.
</Tip>

***

## Próximos pasos

<CardGroup cols={2}>
  <Card title="Hacer copia de seguridad" icon="cloud-arrow-down" href="/es/getting-started/creating-backups">
    Exporta los datos recién importados antes de seguir trabajando.
  </Card>

  <Card title="Códigos 2FA" icon="clock" href="/es/getting-started/totp-codes">
    Si has importado secretos TOTP, mira cómo verlos y teclearlos.
  </Card>
</CardGroup>
