Hoi

Ik logde altijd in met een query zoals hieronder zonder zout :(

$qry = '
select
l.id,
l.login,
schermnaam,
hash
from
logins l
where
l.login = "' . mysqli_real_escape_string($con, $_POST['email']) . '" and
(hash="' . hash('sha512', $_POST['pw']) . '") and
true
';

Ik zou echter de veiligheid willen verhogen en ook de salt bijvoegen.

Ik weet password_verify en password_hash maar zie niet onmiddellijk hoe te implementeren in de inlogquery.
De wachtwoord wijzigenquery, OK dat kan maar inloggen?

Hoe doen jullie dat?

Wat gebruiken jullie zoal als zout? Woorden, afkortingen, speciale tekens, het systeem(de functie) zelf laten aanmaken, zelf iets maken via random generator?

Hoe zonder zout converteren naar met zout zonder veel last voor de gebruikers?

Jan
Aan de $2y$10$ in de string van password_hash() kun je zien dat PASSWORD_DEFAULT en PASSWORD_BCRYPT op dit moment beide BCrypt gebruiken met een work factor van 10.

De keuze is vooral: mocht er in de toekomst een sterkere encryptie nodig zijn, dan wordt die bij PASSWORD_DEFAULT door PHP geregeld en moet je dat bij PASSWORD_BCRYPT zelf regelen.
Conclusie is dus dat default goed is!

Allen bedankt.

Reageren