¿KeePass tiene una clave maestra interna permanente para cifrar datos?


-1

¿KeePass tiene clave interna permanente para cifrar datos? ¿O la clave para el cifrado es una contraseña (y un archivo de claves)? En algún sitio web he echado un vistazo a la discusión sobre las formas de hackear la base KeePass. Una de las suposiciones era que hay dos formas: una para aplicar la contraseña de forma bruta  y otra para forzar la clave maestra cifrada  . ¿Existe una clave maestra interna realmente permanente para el cifrado de datos?


2
es de código abierto, por lo que todos los interesados ​​pueden leer el código fuente. Si hay una clave maestra en el código fuente, será pública y hará que todo sea inútil.
— Aganju

Me refiero a la clave maestra que se puede generar una vez en la creación de la base de contraseña y se cifra mediante la contraseña del usuario (y el archivo de claves).
— Cryptor

Eso es lo que sucede por defecto ...
— Ramhound

No entiendo ... ¿Quiere decir que cuando se crea la base de contraseña, se genera la clave maestra? Si es así, ¿hay alguna manera de forzar a KeePass a cambiar la clave maestra y volver a cifrar la base al cambiar la contraseña de usuario? Imagine la situación cuando alguien descubre la contraseña, recupera la clave maestra. Pero el propietario de la base no lo sabe y simplemente sigue cambiando la base de la contraseña una vez en un período de tiempo ... Las cosas no están bien entonces ...
— Cryptor

Respuestas:


2

Después de leer este artículo , parece que realmente se generan algunos bytes aleatorios, pero solo con el objetivo de completar la clave completa de 256 bits:

Para generar la clave de 256 bits para los cifrados de bloque, se utiliza el algoritmo de hash seguro SHA-256. Este algoritmo comprime la clave de usuario proporcionada por el usuario (que consta de contraseña y / o archivo de clave) a una clave de tamaño fijo de 256 bits. Esta transformación es unidireccional, es decir, es computacionalmente inviable invertir la función hash o encontrar un segundo mensaje que se comprima al mismo hash.

El ataque recientemente descubierto contra SHA-1 [2] no afecta la seguridad de SHA-256. SHA-256 todavía se considera muy seguro [3].

Derivación clave:

Si solo se usa una contraseña (es decir, no hay archivo de clave), la contraseña más una sal aleatoria de 128 bits se codifica con SHA-256 para formar la clave final (pero tenga en cuenta que hay algún preprocesamiento: Protección contra ataques de diccionario). La sal aleatoria evita ataques basados ​​en hashes precalculados.

Cuando se utiliza la contraseña y el archivo de clave, la clave final se deriva de la siguiente manera: SHA-256 (SHA-256 (contraseña), contenido del archivo de clave), es decir, el hash de la contraseña maestra se concatena con los bytes del archivo de clave y el byte resultante la cadena se vuelve hash con SHA-256 nuevamente. Si el archivo de clave no contiene exactamente 32 bytes (256 bits), también se combinan con SHA-256 para formar una clave de 256 bits. La fórmula anterior cambia a: SHA-256 (SHA-256 (contraseña), SHA-256 (contenido del archivo clave)).

Entonces llego a la conclusión de que no hay una llave maestra interna. Cuando se cambia la contraseña del usuario (y el archivo de claves), la base de la contraseña se vuelve a cifrar con una nueva clave.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.