CSRF対策 |
|
|
|
|
function setToken() {
$token = sha1(uniqid(mt_rand(), true)); // 適当な乱数を発生させ、それを暗号化して [$token] に格納する
$_SESSION['token'] = $token;
}
|
|
- setしたtokenを隠しフィールドに入れる(フォーム内)
|
|
|
<input type="hidden" name="token" value="<?php echo h($_SESSION['token']); ?>">
|
|
|
ハッシュ化と暗号化の違い |
sha1 は正確にはハッシュという技術で、暗号化とは少々意味合いが異なる。 ざっくり言うと、ハッシュは元に戻せない、暗号化は鍵があれば元に戻せるという違いがある。 |
|