Seguridad

Cómodo, pero no descuidado

Un gestor de contraseñas vale tanto como su prudencia. Aquí se explica qué guarda Simply KeePass y dónde, qué sale del dispositivo y dónde están los límites.

Cifrado de extremo a extremo

Tu bóveda es un archivo KDBX 4 cifrado con tu contraseña maestra y/o tu archivo de clave (derivación de clave con Argon2). El servidor WebDAV solo ve ese archivo cifrado. El descifrado se hace exclusivamente en la app, en tu dispositivo.

Contraseña maestra y biometría

  • Por defecto, la contraseña maestra vive solo en la memoria y se descarta al bloquear. El archivo de clave no se guarda nunca.
  • Solo si activas la biometría se guarda: en el llavero de macOS (acceso solo tras Touch ID, caduca a las 24 h), en el Keystore de Android (ligada a los dedos o rostros registrados en ese momento) o en el llavero de iOS (solo este dispositivo, solo con código del dispositivo, sin recurrir al código como alternativa).
  • Un dedo o rostro nuevo invalida la contraseña guardada en Android e iOS.

Qué hay en el dispositivo

  • La conexión (URL, usuario, contraseña de WebDAV) se guarda cifrada en el llavero o el Keystore, nunca en texto plano.
  • La copia sin conexión en Android e iOS es el mismo archivo cifrado con KDBX que hay en el servidor, en el almacenamiento privado de la app y excluida de las copias de seguridad.
  • Además, en iOS: protección de archivos de iOS, ocultación en el selector de apps y teclados de terceros bloqueados en la app.

Portapapeles

Las contraseñas y los códigos copiados se borran a los 15 segundos y otra vez al bloquear. En Mac e iOS, solo si el portapapeles aún contiene exactamente el texto que copiaste. En iOS, además, el portapapeles se queda en local (sin Universal Clipboard) y tiene una fecha de caducidad impuesta por el sistema.

Qué sale del dispositivo

  • Tu servidor WebDAV: recibe el archivo cifrado de la bóveda. Las redirecciones nunca se siguen, para que nadie pueda colar otro archivo.
  • Logotipos: para las entradas con URL, la app descarga el icono del sitio web o, como alternativa, usa el servicio de iconos de DuckDuckGo (que así conoce el dominio). Solo por HTTPS y hacia direcciones públicas: la URL de una entrada no puede hacer que la app llame a tu red doméstica.
  • DeepSeek, opcional: solo si introduces tú mismo una clave de API de DeepSeek, se envía el nombre de las entradas sin URL para encontrar el logotipo adecuado. Sin clave, no se envía nada.
  • Las contraseñas, los nombres de usuario, las notas o los códigos nunca salen del dispositivo sin cifrar. No hay cuenta, ni estadísticas, ni publicidad.

Autocompletar y llaves de acceso

  • Sin directorio en texto plano de sitios ni nombres en el sistema: la app solo sabe qué entradas coinciden después de desbloquear.
  • Solo se rellena según la URL o la app vinculada, nunca según el título. Las entradas que solo coinciden en el mismo dominio están marcadas y requieren un toque.
  • Las direcciones web solo se aceptan de navegadores conocidos (se comprueban paquete y firma). Las apps deben demostrar mediante el assetlinks.json del dominio que le pertenecen; o bien tú les concedes confianza de forma expresa, tras una pantalla de advertencia, solo para ese paquete, ese certificado y ese dominio.
  • La clave privada de una llave de acceso nunca se muestra y no se puede copiar.

Desbloqueo mediante otro dispositivo

Solo se muestran las solicitudes firmadas con la clave de un dispositivo registrado en la bóveda. Sin tu Aprobar no sale nada; la respuesta se cifra para una clave de un solo uso que solo existe durante esa ronda. En el dispositivo que solicita no se guarda nada. Compara siempre el código de cuatro dígitos.

Con franqueza: los límites

  • Las apps (todavía) no han sido auditadas por una entidad externa. El protocolo para la autorización entre dispositivos es una composición propia a partir de componentes estándar de WebCrypto.
  • Desde la versión 13, Android muestra brevemente una vista previa del texto copiado.
  • Un gestor de contraseñas no protege frente a un dispositivo que ya está comprometido.