Il bcrypt genera sempre ogni volta un hash differente, anche a fronte della stessa pw in chiaro. Funziona così.
Il punto è che solo l'algoritmo del bcrypt "sa" come confrontare (il modo lui ce l'ha) una password "in chiaro" con un hash pre-generato (NON si possono banalmente confrontare 2 hash!).
Questo in sostanza vuol dire che:
- BCrypt.hashpw lo devi usare solo quando generi l'utenza es. su DB, cioè quando scrivi il record con dentro l'hash della password (o se si aggiorna la password). Poi hashpw non lo devi più usare per questa utenza.
- BCrypt.checkpw lo devi usare solo quando vuoi autenticare una password, passando la password in chiaro inserita dall'utente e l'hash che hai tirato su dal record utente.

 
			
			 Originariamente inviata da fermat
 Originariamente inviata da fermat
					
 
					
					
					
						 Rispondi quotando
  Rispondi quotando