- Un gestor de contraseñas que no necesita un almacén (vault): combina una contraseña maestra + una cadena realm para generar al instante siempre la misma contraseña
- En cualquier dispositivo, con la misma entrada se puede reproducir la misma contraseña, así que desaparecen por completo los problemas de respaldo, sincronización y confianza en terceros
- Soporta la generación de varios tipos de claves, no solo contraseñas simples, sino también claves ECC/RSA, flujos de bytes raw y archivos seed
- Para casos donde se necesita una entropía fuerte, permite crear un archivo seed cifrado que también puede usarse para generar claves de alta seguridad (cifrado con AES-256-GCM)
- Es una herramienta centrada en CLI que, combinando
-p, -r, -t, etc., puede reproducir desde contraseñas de inicio de sesión basadas en URL hasta claves x25519 y ed25519
- La salida se entrega por defecto en stdout y puede guardarse en un archivo con la opción
-o
- Tipos de salida compatibles
pass: generación de contraseñas comunes
seed: creación de archivo seed cifrado
raw: generación de flujo aleatorio de 32 bytes
ec256, ec384, ec521: generación de claves privadas ECC
rsa2048, rsa4096: generación de claves privadas RSA
x25519, ed25519: generación de claves ECC basadas en Curve25519
- 2 modos de operación
Simple mode: deriva contraseñas usando solo la contraseña maestra y la cadena realm
- Genera un resultado único para cada combinación, sin necesidad de almacenar nada aparte
- Pero el nivel de seguridad depende de la fortaleza de la contraseña maestra
Seed file mode: usa un archivo seed como fuente de entropía para obtener mayor seguridad
- El archivo seed está cifrado con AES-256-GCM, por lo que puede respaldarse de forma segura en almacenamiento externo (por ejemplo, Google Drive, Dropbox)
- La contraseña maestra se usa solo para proteger el archivo seed
- Es una utilidad CLI basada en Go y puede instalarse con el comando
go install github.com/cloudflare/gokey/cmd/gokey@latest
- Open source desarrollado por Cloudflare
7 comentarios
https://pashword.app/
Se parece muchísimo a esto.
Parece una idea realmente buena, pero me da la impresión de que hay una razón por la que todos los demás servicios sí tienen almacenamiento.
Incluso si usara esto, cada vez que un sitio me pida cambiar la contraseña tendría que recordar decenas de datos, ya sea el conteo, la clave o lo que sea...
Si una contraseña también es una especie de clave, entonces, si se usa bien una función de derivación de claves, no sería imposible hacerlo.
pw = kdf(master_key, site_id, {salt})Solo habría que decidir si
site_idserá el dominio o un valor único del sitio,y si es uno de esos lugares molestos que te obligan a cambiarla cada mes, entonces se puede cambiar el
saltcada vez.Entonces, al final, ¿no habría que guardar también la sal para cada sitio? jaja
Parece que no serviría en casos donde el dominio cambia o cuando se usan varios...
Este enfoque es mucho mejor.
Pero queda totalmente arruinado por sitios que se ponen con esa gestión absurda de exigir que la contraseña lleve ciertos caracteres especiales y números, y que la cambies cada 3 meses.
En la práctica, una amenaza de seguridad más real la generan los planificadores de sitios que no tienen idea de lo que es la seguridad.
Ah... admito eso de que “la amenaza de seguridad real la provocan más los planificadores de sitios que no saben qué es la seguridad”.
De repente se me vinieron a la cabeza algunos malos recuerdos ;_;