Articulo de referencia

Contraseña maestra (algoritmo)

La contraseña maestra es un tipo de algoritmo implementado por primera vez por Maarten Billemont para crear contraseñas únicas de forma reproducible. Se diferencia de los gestor...

La contraseña maestra es un tipo de algoritmo implementado por primera vez por Maarten Billemont para crear contraseñas únicas de forma reproducible. Se diferencia de los gestores de contraseñas tradicionales en que las contraseñas no se almacenan en disco ni en la nube, sino que se regeneran cada vez a partir de la información introducida por el usuario: su nombre, una contraseña maestra y un identificador único para el servicio al que está destinada la contraseña (normalmente la URL). [ 1 ]

Al no almacenar las contraseñas en ningún lugar, este método dificulta que los atacantes las roben o intercepten. Además, elimina la necesidad de sincronización entre dispositivos, las copias de seguridad de posibles bases de datos de contraseñas y los riesgos de filtración de datos . A esto se le conoce a veces como gestión de contraseñas sin sincronización .

Algoritmo

La implementación de Billemont implica los siguientes parámetros: [ 1 ]

  • nombre : El nombre de usuario, utilizado como clave aleatoria . Se elige el nombre completo del usuario porque proporciona un nivel de entropía suficientemente alto y, al mismo tiempo, es poco probable que se olvide.
  • master_password : La contraseña secreta para generar la clave maestra.
  • site_name : Un nombre único para el servicio al que está destinada la contraseña. Normalmente, es el nombre de dominio sin formato.
  • contador : Un número entero que se puede incrementar cuando el servicio solicita una nueva contraseña. Por defecto, es 1.
  • password_type : El tipo de contraseña define la longitud y la constitución de la contraseña resultante, véase más abajo.

Generación de clave maestra

En la implementación de Billemont, la clave maestra es una clave secreta global de 64 bytes generada a partir de la contraseña maestra secreta del usuario y con un valor aleatorio (sal) que incluye su nombre completo. Este valor aleatorio se utiliza para evitar ataques basados ​​en tablas arcoíris . El algoritmo scrypt , una función de derivación de clave intencionadamente lenta , se utiliza para generar la clave maestra y así hacer inviable un ataque de fuerza bruta .

sal = "com.lyndir.masterpassword" + longitud ( nombre ) + nombre clave_maestra = cifrar ( contraseña_maestra , sal , 32768 , 8 , 2 , 64 )

Generación de semillas de plantilla

La semilla de plantilla es un secreto específico del sitio en formato binario, generado a partir de la clave maestra, el nombre del sitio y el contador mediante el algoritmo HMAC-SHA256 . Posteriormente, se convierte a una cadena de caracteres utilizando las plantillas de contraseña. La semilla de plantilla garantiza que cada contraseña sea única para el sitio web y para el usuario.

semilla = hmac_sha256 ( clave_maestra , "com.lyndir.contraseñamaestra" + longitud ( nombre_sitio ) + nombre_sitio + contador )

Generación de contraseñas

La plantilla binaria se convierte a uno de los seis tipos de contraseña disponibles. El tipo predeterminado es la Contraseña de Máxima Seguridad ; se pueden seleccionar otros si la política de contraseñas del servicio no permite contraseñas de ese formato.

  • Contraseña de máxima seguridad (20 caracteres ASCII imprimibles )
  • Contraseña larga (14 caracteres ASCII imprimibles)
  • Contraseña mediana (8 caracteres ASCII imprimibles)
  • Contraseña corta (4 caracteres ASCII imprimibles)
  • Contraseña básica (8 caracteres alfanuméricos)
  • PIN (4 dígitos)

Implementaciones

Billemont también creó múltiples implementaciones de software libre del algoritmo Master Password, con licencia GPLv3 .: [ 2 ]

Referencias

  1. 1 2 Billemont, Maarten. "El algoritmo de la contraseña maestra" . Archivado del original el 9 de diciembre de 2017. Recuperado el 8 de mayo de 2015 .
  2. "Archivo de licencia del repositorio MasterPassword" . GitHub . Consultado el 15 de mayo de 2015 .
  3. Billemont, Maarten. "Versión 1.0.0" . GitHub . Consultado el 15 de mayo de 2015 .
  4. ^ Complemento Firefox de Masterpassword
  5. ^ Complemento de Chrome de Masterpassword
  6. Billemont, Maarten. "Página principal de la contraseña maestra" . Consultado el 15 de mayo de 2015 .

Sitio web oficial