Domanda

Attualmente sto costruendo un paio di ASP.NET MVC 2 siti, e mi chiedo quali sono le mie opzioni sono per la salatura di una password. Con il mio lavoro PHP, di solito appena ottenuto il timestamp di quando un utente registrato, quindi accodato alla fine della loro stringa di password prima di utilizzare SHA1 di hash l'intera cosa. Il mio istinto è che questo approccio non può essere sufficiente.

Sono abbastanza nuovo per l'amministrazione degli utenti con ASP.NET comunque, quindi immagino che sarebbe stato nel mio interesse per iniziare con le migliori pratiche fin dall'inizio. So che ASP.NET moduli web sono dotati di amministrazione degli utenti disponibili, ma sono sicuro di MVC.

È stato utile?

Soluzione

L'unico punto di un sale è quello di prevenire gli attacchi arcobaleno, in cui più utenti hanno lo stesso hash per la password, in modo da invertire una sola password significa successo anche voi sapete che è la password per tutti gli altri con lo stesso hash. Anche un sale di una sola cifra, si evita che, dal momento che due utenti con la stessa password avranno diverse hash se hanno diversi sali.

Fino a quando il sale è una cosa che non cambierà, e che è diverso per ogni utente, qualsiasi valore funzionerà bene. Timestamp della loro iscrizione, a condizione che non si aggiorna quel campo (tali da inficiare la loro hash della password e impedire loro di login) è una buona scelta.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top