Volledige versie bekijken : PHP - Hashes .



Fck_
11 January 2011, 12:27
Hallo!

Zit even met een klein vraagje;

<?
$hashed = sha1($string)

Hashed String in database voeren, blahblah
?>

Wat mijn vraag is; Die string word toch pas naar een Hash gezet aan de server-kant hé? M.a.w, zodra ik een paswoord verstuur, bij bijvoorbeeld register.php, is mijn wachtwoord nog niet 'Hashed' voordat het aankomt, waardoor iemand het bijvoorbeeld nog kan sniffen?

EDIT; nog een andere kleine vraag. Je kan een paswoord hashen met de MD5 hash, juist? Maar is dit hetzelfde als de MD5 Checksum?

Butterflyice
11 January 2011, 13:03
Je kan het wachtworod als sha1 mailen.
Dit kan je doen voor dat de mail verstuurd wordt dit af te handelen en de sha1 waarde in de mail te zetten.
MD6 hash is het zelfde als MD5 Checksum.

Jelle
11 January 2011, 13:11
Wat mijn vraag is; Die string word toch pas naar een Hash gezet aan de server-kant hé? M.a.w, zodra ik een paswoord verstuur, bij bijvoorbeeld register.php, is mijn wachtwoord nog niet 'Hashed' voordat het aankomt, waardoor iemand het bijvoorbeeld nog kan sniffen?

Inderdaad, daarom dat bv. onze vBulletin forumsoftware het wachtwoord via JavaScript al eens md5't vooraleer het verzonden wordt naar de server (tenzij JavaScript in je browser uitgeschakeld staat). Nog beter is natuurlijk HTTPS (met SSL encryptie), maar dat is alleen voor gevoelige applicaties.

Merk ook op dat

$hashed = sha1($string);
niet echt sterk is tegen bruteforce aanvallen die gebruik maken van regenboogtabellen ("rainbow tables"). Best voeg je een salt (random karakters) toe aan het wachtwoord om de hash moeilijker kraakbaar te maken.


EDIT; nog een andere kleine vraag. Je kan een paswoord hashen met de MD5 hash, juist? Maar is dit hetzelfde als de MD5 Checksum?

Ja, de term checksum wordt vaak bij softwarepakketten gebruikt om te checken of de bestanden origineel zijn. Je berekent dan zelf de MD5 hash van de bestanden en vergelijkt die met de MD5 hash (checksum) op de website van het softwarepakket. Die moeten hetzelfde zijn, anders betekent het dat ermee geknoeid is.

Fck_
11 January 2011, 13:49
Dankjewel!

Mijn vraagjes zijn perfect beantwoord ^^, Danku!