¿Debo ejecutar mi contraseña a través de Bcrypt antes de usarla para cifrar un archivo con AES-256? [duplicar]

0

Necesito cifrar un archivo con una contraseña que pueda memorizarse. Así que estaba pensando en ejecutar la contraseña a través de algunas rondas de Bcrypt antes de usarla para el cifrado AES, por lo que cada vez que quiera cifrar / descifrar quiero que se demore unos 10 segundos en mi máquina (lo que significa que no sería obligatorio forzarla) posible).

Lo que quiero preguntarte es si hacer esto es 0K, ya que normalmente no deberías meterte con la criptografía. ¿AES no tiene esto ya incorporado? Me refiero al número configurable de rondas o algo así.

    
pregunta ChocoDeveloper 08.06.2013 - 20:07
fuente

1 respuesta

1

Hay muchos errores en el enfoque general, así que elegiré un camino estrecho.

Primero que nada, AES NO tiene tal cosa incorporada. Solo se necesita una llave y hace su trabajo. No hay "factores de trabajo" artificiales incorporados en él.

En segundo lugar, la gente rara vez "fuerza bruta" de la contraseña: utilizan ataques basados en diccionarios junto con una larga lista de reglas de permutación para probar la contraseña "probable".

Para su propósito, puede usar bcrypt, scrypt o pbkdf2 para ralentizar los ataques de diccionario. Todavía recomendaría usar frases de contraseña más largas y también salt ing la contraseña del teclado antes de que ingrese en bcrypt / script o pbkdf2.

Debe saber que entre la introducción de la contraseña "en su mente" en su teclado y la biblioteca criptográfica AES para obtener la clave real de AES, puede haber muchas áreas potenciales de debilidad. por ejemplo: si copia y pega la salida bcrypt (= ¿la clave AES?) en algún otro programa (¿programa de encriptación?), está en su portapapeles para que CUALQUIER programa pueda espiar.

    
respondido por el DeepSpace101 08.06.2013 - 20:33
fuente

Lea otras preguntas en las etiquetas