Devo eseguire la mia password tramite Bcrypt prima di usarla per crittografare un file con AES-256? [duplicare]

0

Ho bisogno di crittografare un file con una password che può essere memorizzata. Quindi stavo pensando di eseguire la password attraverso alcuni cicli di Bcrypt prima di usarlo per la crittografia AES, quindi ogni volta che voglio crittografare / decifrare voglio che ci vogliano circa 10 secondi nella mia macchina (il che significa che la forzatura bruta non sarebbe possibile).

Quello che voglio chiederti è se fare questo è 0K, poiché normalmente non si dovrebbe scherzare con la crittografia. AES non ha già questo built-in? Intendo numero di giri configurabile o qualcosa del genere.

    
posta ChocoDeveloper 08.06.2013 - 20:07
fonte

1 risposta

1

Ci sono molti trucchi nell'approccio generale, quindi selezionerò un percorso stretto.

Prima di tutto, AES NON ha qualcosa di simile in-built. Basta prendere una chiave e fa il suo lavoro. Non ci sono costruiti "fattori di lavoro" artificiali.

In secondo luogo, la gente raramente "forza bruta" la password - usano attacchi basati sul dizionario insieme a una lunga lista di regole di permutazione per provare la "probabile" password.

Per il tuo scopo, puoi usare bcrypt, scrypt o pbkdf2 per rallentare gli attacchi del dizionario. Ti consiglio comunque di utilizzare frasi di passaggio più lunghe e anche salt di inserimento della password della tastiera prima che entri in bcrypt / script o in pbkdf2.

Dovresti sapere che tra l'inserimento della password "in-your-mind" sulla tastiera e la libreria crittografica AES che ottiene la vera chiave AES, possono esserci molte potenziali aree di debolezza. es .: se copiate e incollate l'output bcrypt (= tasto AES?) in qualche altro programma (programma di crittografia?), è presente negli Appunti perché QUALSIASI programma si curi.

    
risposta data 08.06.2013 - 20:33
fonte

Leggi altre domande sui tag