Simple PBKDF2 vs. scrypt question

2

scrypt fue diseñado para usar más memoria. Podemos usar sus parámetros para especificar (aproximadamente) cuánta memoria queremos que requiera.

Pero tanto scrypt como PBKDF2 nos permiten especificar el tamaño de los datos de salida .

Entonces, mi pregunta es, ¿no podemos hacer que PBKDF2 use una gran cantidad de memoria simplemente pidiéndole una salida grande (y tomando los bytes que realmente necesitamos desde el final de la salida, descartando el resto)?

Si este es el caso, ¿cuál es el punto de scrypt?

Si este no es el caso (lo cual es más probable), por favor, dime qué tiene de malo en mi pensamiento.

    
pregunta basiccrypto 23.11.2014 - 01:02
fuente

2 respuestas

3

Cada bloque de la salida de PBKDF2 se deriva independientemente de todos los otros bloques. Debido a esto, calcular una gran salida en un sistema masivamente paralelo (como una GPU) es muy eficiente. Además, si solo tomas ciertos bytes de la salida y descartas el resto, un atacante solo necesita calcular los bloques que contienen esos bytes.

    
respondido por el Mark 23.11.2014 - 02:36
fuente
0

No podemos "hacer que PBKDF2 use una gran cantidad de memoria simplemente pidiéndole un
salida grande (y tomando los bytes que realmente necesitamos desde el final de la salida,
descartando el resto) "porque PBKDF2 esencialmente puede transmitir su salida.

    
respondido por el user49075 23.11.2014 - 01:23
fuente

Lea otras preguntas en las etiquetas