17.3 Daten durch Prüfsummen verifizieren

Problem

Sie wollen sicherstellen, dass Benutzer die Daten, die Sie ihnen in einem Cookie oder Formularelement geschickt haben, nicht verändern.

Lösung

Senden Sie zusammen mit den Daten eine MD5-Prüfsumme (Hash) der mit einem Geheimwort kombinierten Daten. Wenn Sie die Daten zurückerhalten, berechnen Sie die Prüfsumme der erhaltenen Werte mit dem gleichen Geheimwort. Wenn die beiden Prüfsummen nicht übereinstimmen, hat der Benutzer die Daten verändert.

So können Sie eine Prüfsumme in einem versteckten Formularfeld ausgeben:

$geheimwort = 'flyingturtle'; $id = 2836; $hash = md5($geheimwort . $id); print<<<_HTML_ <input type="hidden" name="id" value="$id"> <input type="hidden" name="idhash" value="$hash"> _HTML_; ...

Get PHP 5 Kochbuch, Third Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.