10 min de lectura
Cómo los passkeys protegen tu bóveda de identidad en CardanoWall
Un passkey no se convierte en tu identidad de CardanoWall: abre una bóveda cifrada que solo tus autenticadores pueden abrir. Así es como WebAuthn PRF facilita el acceso diario sin convertir a CardanoWall en custodio de tu semilla.

Un passkey en CardanoWall no es tu identidad. Es la clave que abre una copia cifrada de ella. Tu identidad real es una semilla de identidad de 32 bytes; el passkey solo permite que tu propio dispositivo abra la bóveda cifrada que guarda esa semilla, para que no tengas que pegarla cada vez que firmas o descifras.
Face ID, Touch ID, Windows Hello, un passkey de plataforma sincronizado o una clave de hardware compatible pueden servir como esa puerta de cada día. Detrás de la puerta hay texto cifrado que el servidor de CardanoWall no puede leer. Esa separación —la semilla es la identidad, el passkey es solo un factor de desbloqueo— es todo el diseño.
¿Qué problema resuelven realmente los passkeys?
Hacen que un almacenamiento de identidad robusto sea usable en el día a día.
Sin una capa de comodidad, cada usuario que vuelve tendría que pegar su semilla de identidad cada vez que quisiera firmar o descifrar algo. Eso es seguro en un sentido estrecho, pero resulta incómodo, y la seguridad incómoda tiende a degradarse en seguridad insegura. La gente copia secretos en el sitio equivocado, los deja en notas en texto plano o, sencillamente, deja de usar la herramienta.
Los passkeys eliminan esa fricción. CardanoWall mantiene una bóveda cifrada para tu cuenta, y tu propio dispositivo la abre tras un paso de verificación de usuario (una huella, un escaneo facial, un PIN, un toque en una clave de hardware). Obtienes acceso con un solo toque sin entregarle a CardanoWall una copia en texto plano de tu semilla.
¿Qué es un passkey aquí?
Un passkey es una credencial de WebAuthn: la misma tecnología de inicio de sesión con clave pública que está detrás de «iniciar sesión con Face ID» en toda la web moderna.
En el modelo de FIDO y WebAuthn, se crea una credencial para una parte de confianza concreta (aquí, el dominio de CardanoWall), y la mitad privada la guarda un autenticador. Ese autenticador puede estar integrado en tu teléfono o portátil, sincronizado a través de un proveedor de passkeys o alojado en una clave de seguridad de hardware aparte.
Para la bóveda de identidad, el inicio de sesión sin más no basta. CardanoWall necesita que el autenticador libere en el navegador cierto material secreto de alta entropía para que el navegador pueda descifrar la bóveda. Eso es exactamente lo que aporta la extensión PRF de WebAuthn.
¿Qué es WebAuthn PRF, en términos llanos?
PRF significa función pseudoaleatoria. Un autenticador con capacidad PRF puede producir una salida secreta que es única para una credencial, una parte de confianza y una sal que aporta la aplicación, y produce la misma salida cada vez para las mismas entradas.
CardanoWall deriva esa sal de forma determinista a partir del identificador de tu cuenta, de modo que la salida PRF queda acotada a tu cuenta: la misma clave física conectada a una cuenta distinta produce material distinto y no puede abrir la bóveda equivocada. El navegador usa entonces la salida PRF como la clave que desenvuelve tu bóveda.
El resumen a nivel de usuario es breve:
- el autenticador guarda su propio secreto y nunca lo exporta;
- el navegador solo ve el material de desbloqueo durante la propia ceremonia;
- el servidor solo almacena el texto cifrado de la bóveda;
- el servidor no puede reproducir por sí mismo la salida PRF.
Eso es lo que convierte tu passkey en un factor de desbloqueo de la bóveda en lugar de en una copia del secreto que hay dentro.
¿Qué es exactamente lo que se cifra?
El paquete de identidades de tu cuenta.
Una cuenta puede contener varias identidades. El paquete registra la semilla de identidad de cada identidad y su etiqueta privada, y se cifra entero antes de almacenarse siquiera. La bóveda es una sola fila de texto cifrado por cuenta: estado de servicio opaco, no custodia.
CardanoWall lo cifra como un texto cifrado age-v1 dirigido únicamente a stanzas
de destinatario WebAuthn-PRF (fido2prf), una stanza por cada passkey registrado.
Cualquiera de tus passkeys registrados puede abrir la bóveda tras una ceremonia
correcta; la implementación se niega a construir una bóveda que lleve cualquier
otro tipo de destinatario, de modo que el cifrado se mantiene exclusivamente
simétrico por construcción.
Si no hay ningún passkey registrado, no existe ninguna vía de apertura del lado del servidor, y no pasa nada, porque la propia semilla es la identidad portátil real. Siempre puedes restaurar a partir de la semilla.
¿Por qué una bóveda envuelta con passkey es más segura que una protegida con contraseña?
Porque no hay ninguna stanza derivada de contraseña que machacar sin conexión.
Cuando un atacante roba un archivo protegido por una contraseña elegida por el usuario, puede probar combinaciones contra él en local, tan rápido como se lo permita su hardware. Ese es el clásico problema de la fuerza bruta sin conexión, y las contraseñas débiles o reutilizadas lo pierden.
La bóveda alojada de CardanoWall no se construye en torno a una contraseña. Está envuelta con material PRF que guarda el autenticador: una clave aleatoria de 256 bits que vive dentro de tu dispositivo. Por tanto, una filtración de la base de datos le entrega al atacante únicamente texto cifrado: ningún hash de contraseña que atacar, ninguna semilla que leer. Por eso también los passkeys resultan atractivos para el acceso diario en general: esquivan el phishing y la reutilización de contraseñas, manteniendo al servidor totalmente alejado del secreto de la identidad.
¿Y los ataques cuánticos contra la bóveda?
Aquí conviene ser preciso en lugar de dramático.
La bóveda alojada no contiene deliberadamente ninguna stanza de destinatario asimétrica de clave pública. Eso importa porque el ataque cuántico a gran escala que preocupa a la gente —el algoritmo de Shor— apunta a los sistemas de clave pública. La confidencialidad de la bóveda es exclusivamente simétrica: la envuelve una salida PRF de 256 bits de un passkey, y en el diseño no hay ninguna clave pública a la que un ataque al estilo Shor pueda dirigirse.
Frente a una clave simétrica, la aceleración cuántica genérica que aplica es la búsqueda al estilo Grover, que suele describirse como una reducción aproximada a la mitad del margen de seguridad efectivo. Para una clave de 256 bits, eso deja un margen efectivo de unos 128 bits: una cifra todavía enorme.
Así que la afirmación honesta no es «los ataques cuánticos son imposibles». Es más acotada y más sólida: la bóveda alojada no tiene superficie de fuerza bruta derivada de una contraseña, ni un objetivo de clave pública para Shor, y un margen de clave simétrica que se mantiene muy alto incluso bajo los supuestos de búsqueda cuántica genérica. Menos vistosa, pero es la afirmación en la que un lector preocupado por la seguridad puede confiar de verdad.
¿Por qué no usar simplemente una cartera de Cardano para desbloquear?
Porque firmar un reto no es una clave de bóveda estable.
La firma de una cartera resulta verdaderamente útil para algunas afirmaciones públicas, pero es una primitiva pobre para volver a derivar un secreto que tiene que descifrar la misma bóveda en distintos dispositivos, navegadores, versiones de cartera y con un soporte de hardware cambiante. Ata tu bóveda a una cartera y habrás convertido, sin darte cuenta, el comportamiento de la cartera en recuperación de la cuenta.
CardanoWall mantiene estas funciones separadas:
- la semilla de identidad deriva tus claves de firma y de recepción de Label 309;
- los passkeys abren la bóveda alojada;
- la firma de una cartera de Cardano se reserva para registros explícitos, ligados a la cartera, cuando eliges deliberadamente esa vía.
¿Passkey sincronizado o clave de hardware? ¿Cuál debería usar?
Ambos funcionan; la elección correcta depende del valor de la identidad.
Los passkeys sincronizados son la opción cómoda por defecto. Pueden reaparecer en un dispositivo nuevo a través de tu proveedor —un llavero del sistema operativo o un gestor de contraseñas, según tu configuración—, lo que facilita mucho la recuperación habitual. Un passkey sincronizado hereda el modelo de seguridad y de recuperación del proveedor que lo guarde.
Las claves de hardware están más controladas. Como el acceso requiere el dispositivo físico, encajan con identidades de alto valor o compartidas por un equipo, donde quieres que el factor esté ligado a algo que puedas guardar bajo llave en un cajón.
Una regla razonable: ajusta el estilo de passkey a lo que vale la identidad. Para la mayoría de la gente, un passkey de plataforma sincronizado es un buen recurso diario. Para identidades de equipo sensibles, una clave de hardware junto con una semilla cuidadosamente guardada suele ser el mejor compromiso. El artículo sobre passkeys sincronizados frente a claves de hardware recorre las diferencias en detalle.
¿Y si mi navegador o mi clave no admiten PRF?
Entonces CardanoWall recurre a la vía de la semilla, por diseño.
El soporte de WebAuthn PRF depende de la combinación de navegador, sistema operativo y autenticador. CardanoWall detecta por características si esa combinación puede hacer PRF antes de registrar un factor de bóveda, de modo que nunca te llevan a una bóveda que luego no podrías abrir.
El acceso solo con semilla no es un modo degradado. Es la vía soberana: la semilla es la identidad, y todo lo demás es comodidad superpuesta encima cuando la plataforma puede admitirla con seguridad.
¿Qué puede seguir saliendo mal?
Los passkeys cierran el paso a una gran clase de riesgos, pero quedan algunas realidades, y es mejor nombrarlas con claridad.
- Una semilla robada es un compromiso total de la identidad. Quien tenga tu semilla de identidad es esa identidad. La respuesta es crear una identidad nueva y desactivar la antigua, no un restablecimiento de contraseña, porque no hay contraseña.
- Una sesión desbloqueada es un blanco vivo. Mientras la bóveda está desbloqueada, tus semillas y las claves privadas derivadas viven en la memoria del navegador para que puedas firmar y descifrar. CardanoWall mantiene ese material fuera del estado de React y lo pone a cero al bloquear y al cerrar sesión, en la medida de lo posible, pero un script o una extensión maliciosa en una sesión desbloqueada todavía puede leer secretos en memoria. Una política de seguridad de contenido estricta y scripts mínimos reducen ese riesgo; no pueden eliminarlo. En una máquina que no controlas del todo, bloquea la bóveda cuando te alejes en lugar de dejar una sesión abierta.
- Quitar un passkey no es retroactivo. Cuando quitas un factor, el cliente vuelve a cifrar la bóveda hacia los factores restantes y la antigua fila de texto cifrado se borra de forma definitiva, de modo que la clave eliminada ya no puede abrir la bóveda actual. Pero si un atacante ya usó ese passkey antes de que lo quitaras, quitarlo no puede deshacer lo que hizo. Consulta qué ocurre si quitas un passkey.
- Piérdelo todo y la puerta desaparece. Si pierdes todas las copias de la semilla y todos los factores de desbloqueo, el uso futuro de esa identidad se esfuma. Las pruebas que ya publicaste se siguen verificando para siempre —viven en Cardano, no en tu bóveda—, pero ya no puedes actuar como esa identidad.
Los passkeys reducen el riesgo. No eliminan tu responsabilidad de proteger la semilla y el dispositivo.
La versión corta
Los passkeys hacen que CardanoWall sea usable sin convertir a CardanoWall en custodio.
El servidor almacena el texto cifrado de la bóveda y nada que pueda descifrar. Tu passkey permite que tu navegador derive el material que la abre. Tu semilla de identidad sigue siendo la raíz portátil de toda la identidad. Guarda la semilla y, luego, apóyate en los passkeys para el acceso diario. Comodidad encima, soberanía debajo. Si quieres entender por qué la semilla sigue importando incluso con passkeys registrados, lee por qué la semilla de identidad sigue importando.
Lecturas adicionales
- W3C Web Authentication (WebAuthn) Level 3: w3.org/TR/webauthn-3
- FIDO Alliance — visión general de los passkeys: fidoalliance.org/passkeys
- MDN — extensiones de WebAuthn (incluida PRF): developer.mozilla.org
- Yubico — guía para desarrolladores de la extensión PRF de WebAuthn: developers.yubico.com
- El estándar Label 309: label309.org — código abierto en github.com/cardanowall