Memorizzazione password crittografate [duplicato]

1

Stavo pensando alle alternative agli hash per la memorizzazione delle password, e mi chiedevo se ci fosse un enorme difetto di sicurezza con quello che mi è venuto in mente.

Se, quando l'utente crea il proprio account, la propria password viene utilizzata come chiave per crittografare se stessa e memorizzata in questo modo, è possibile convalidare gli accessi decifrando la password memorizzata con la password specificata e controllando se corrispondono.

C'è qualche problema teorico inerente a questa idea, supponendo che la crittografia sia immune da cose come collisioni e attacchi con chiave correlata?

    
posta J. Doe 08.06.2018 - 01:18
fonte

2 risposte

1

Is there any inherent theoretical problem with this idea, assuming the encryption is immune to such things as collisions and related-key attacks?

Sì, c'è un problema con questa idea anche in base alle tue ipotesi.

Usa solo bcrypt per l'amor di dio!

Alcuni problemi: il modo in cui hai dichiarato la tua "soluzione" di crittografia sembra implicare che stai usando solo una singola chiave e nessuna IV casuale o qualcosa del genere. In tal caso sei vulnerabile al dizionario e ad altri attacchi di forza bruta (sei ancora vulnerabile anche con un sale poiché il "hash" è probabilmente veloce). Inoltre, senza nulla da fare come "sale", "hashing" la stessa password per lo stesso "hash" ogni volta, che è anche male.

    
risposta data 08.06.2018 - 05:10
fonte
0

Devi ancora renderlo computazionalmente costoso come sarebbe in un hash lento come BCrypt o SCrypt. Puoi utilizzare un KDF con una quantità sintonizzata di iterazioni per raggiungere il livello di spesa che gli utenti tollereranno senza notare un ritardo delle prestazioni.

Tieni presente che tutto ciò che è crittografato dalla password dell'utente è solo testo cifrato, quindi forse di uso limitato.

    
risposta data 08.06.2018 - 01:49
fonte

Leggi altre domande sui tag