KeysArk
← Volver al blog

Cómo cifra KeysArk: el diseño

Cada decisión de diseño en KeysArk sigue una regla: la clave nunca sale de tu navegador. Esta es la cadena, desde las palabras que anotas hasta el texto cifrado en tu nube.

Una frase para guardarlo todo

Tu secreto maestro es una frase de recuperación BIP39: 24 palabras en inglés (256 bits de entropía) para las bóvedas nuevas. Es un estándar, así que puedes importarla en MetaMask o en cualquier monedero BIP39. Nada más que descargar, ningún archivo de clave que cuidar.

De las palabras a una clave

La frase se convierte en una clave de forma determinista, enteramente en el navegador: la misma frase, la misma clave, cada vez, en cualquier dispositivo, sin que intervenga ningún servidor.

BIP39 phrase
  → seed   (PBKDF2-HMAC-SHA512)
  → HKDF-SHA256
  → AES-256 key

Cifrar tu contenido

Cada elemento se sella con AES-256-GCM, un cifrado autenticado: oculta el contenido y a la vez detecta cualquier manipulación. Cada cifrado usa un IV de 96 bits nuevo y aleatorio que nunca se reutiliza; reutilizar un nonce de GCM sería catastrófico, así que nunca lo hacemos.

El servidor es una tubería tonta

Nuestra API y los clientes de almacenamiento son de bytes que entran y bytes que salen: mueven texto cifrado opaco en base64 y son completamente ajenos al contenido. El texto plano, la frase y la clave derivada tienen prohibido aparecer en cualquier código de servidor, petición, URL, cookie, registro o base de datos.

Desbloquear en tu máquina

Cuando guardas tu frase localmente (en la aplicación web o en la CLI ark), se envuelve con una contraseña de desbloqueo usando Argon2id (512 MB, t=4, p=1), una función deliberadamente exigente en memoria que encarece el ataque por fuerza bruta de la contraseña. Los parámetros viajan junto con la credencial, de modo que pueden elevarse con el tiempo.

El compromiso que aceptamos

El verdadero cifrado de extremo a extremo significa que ni siquiera nosotros podemos ayudarte a recuperar tus datos. Pierde la frase de recuperación y desaparecerá. Ese es el precio de que nadie —incluidos nosotros— pueda leerla.