jag brukar byta ut en enkelfnutt på två enkelfnuttar och ett citattecken mot två citattecken innan jag kör en koll på om det som skrivits in är rätt eller fel...
Såhär kan ett relativt vanligt och enkelt registrering/inloggningsförfarande se ut.
Registrering
-------
1. Användaren matar in önskat användarnamn och lösenord
2. Du generar ett användarunikt salt, helst på mer än 16 tecken.
3. Du tar användarens inmatade lösenord och lägger ihop med det genererade saltet och gärna även ett systemsalt och hashar med exempelvis SHA512.
4. Du skickar in användarnamn och hashat lösenord samt användarsalt och sparar i databasen.
Inloggning
-------
1. Användaren matar in sitt användarnamn och lösenord
2. Du hämtar salt och hashat lösenord baserat på användarnamnet
3. Du hashar användarsalt, inmatat lösenord och systemsalt på samma sätt som registreringen och jämför med lösenordet du fick när du hämtade det hashade lösenordet från databasen i steg 2.
4. Är lösenordet i databasen samma som det lösenordet som du hashade nyss så har användaren matat in ett korrekt lösenord och du kan exempelvis spara användarID i sessions eller hur du nu väljer att gå vidare.