为cookie创建验证密钥

时间:2014-09-06 10:30:33

标签: php security cookies

我正在为所有用户开发安全Cookie,并提供快速验证方法。

这就是我想出的:

当您注册用户时,会为每个用户在数据库中生成一个salt。

当您登录时设置这两个cookie:

$_COOKIE["key"]$_COOKIE["user"]

$_COOKIE["user"]是登录用户的ID。

$_COOKIE["key"]设置如下:sha1(sha1($id).sha1($salt));

然后验证我创建此功能的cookie:

public function check_cookie(){


    //CHECK IF THE COOKIE IS MATCHING THE HASHKEY AND IF USER IS CONTAINING NUMBERS
    if(sha1(sha1($_COOKIE["user"]).sha1($salt)) != $_COOKIE["key"] || 
!is_numeric($_COOKIE["user"])){

        //REMOVE COOKIES 
        setcookie('user', null, -1);
        setcookie('key', null, -1);

        return FALSE;

    } else {

        return TRUE;

    }

}

这是一种安全的方法吗?你看到这种结构有什么错吗?

提前致谢!

0 个答案:

没有答案