¿Cómo funciona el cifrado / descifrado cuando se genera una clave aleatoria?

1

Soy nuevo en esto y quiero hacer una pregunta básica. Supongamos que usé mi contraseña (diga "ABC123")
para generar una clave utilizando el algoritmo PBKDF2 (o cualquiera de estos algoritmos). Para encriptar un archivo voy a
Ingrese mi contraseña y se generará una clave. Esta clave se utilizará para realizar el cifrado.
Ahora, supongamos que si quiero descifrar el mismo archivo, debo ingresar la contraseña ("ABC123") nuevamente.
La clave se generará de nuevo para hacer descifrado.
Mi pregunta es: ¿serán las claves generadas durante el cifrado y el descifrado?

    
pregunta tausif 08.03.2014 - 19:27
fuente

3 respuestas

1

PBKDF2 , como su nombre indica, es una función de derivación de claves . Significa que el algoritmo toma algunos parámetros (incluida una contraseña, ya que es una función de derivación de clave basada en contraseña) y produce una clave de longitud arbitraria. Incluso si PBKDF2 espera algunos valores aleatorios como parámetros (por ejemplo, la sal), cuando pasa los mismos parámetros a la función, siempre devuelve la misma clave.

También significa que cuando está utilizando PBKDF2 para cifrar un archivo, también tiene que almacenar todos los parámetros (es decir, para PBKDF2: la función pseudoaleatoria, la sal, el número de iteraciones, la longitud de la clave generada) junto con El archivo cifrado. De hecho, estos parámetros serán necesarios para volver a calcular la misma clave desde la misma contraseña al descifrar el archivo.

    
respondido por el Jcs 08.03.2014 - 20:54
fuente
1

PBKDF2 genera una clave pseudoaleatoria a partir de una contraseña. La diferencia entre pseudoaleatorio y aleatorio es importante porque una clave aleatoria debería almacenarse y recuperarse, mientras que una clave generada a partir de una contraseña con PBKDF2 se puede generar (o "derivar") en cualquier momento que tenga la contraseña original (y sal) . No puede simplemente volver a generar una clave verdaderamente aleatoria porque un proceso aleatorio no generará de forma confiable la misma salida, nunca.

Y sí, utiliza esa misma clave para el cifrado y el descifrado, suponiendo que esté utilizando un método de cifrado de clave simétrica.

    
respondido por el Slartibartfast 08.03.2014 - 20:58
fuente
0

Esto depende del tipo de cifrado. Me parece que estás buscando criptografía de clave simétrica . Como has dicho, una contraseña cifra los descifrados y

Recomendaría leer algunos algoritmos populares para averiguar cómo lo hacen. Tales algoritmos incluirían:

La alternativa sería criptografía asimétrica . En este caso, tendría una clave privada y una clave pública . Con este tipo de cifrado, la información cifrada con la clave privada solo se puede descifrar con la clave pública y viceversa.

Si este es el tipo de seguridad en el que está más interesado, consulte RSA (el estándar de la industria) y Intercambio de claves Diffie – Hellman .

    
respondido por el Thebluefish 08.03.2014 - 20:03
fuente