php – 加密/解密与MySQL数据库之间的密码
发布时间:2020-12-13 22:39:58 所属栏目:PHP教程 来源:网络整理
导读:我开始为我的网站创建一个用户系统,我想要做的是加密密码,而不是明文.我正在使用 PHP / MySQL,所以我认为crypt()是一个很好的起点.但是,我对这样的密码学并不陌生,而且我很难理解它是如何工作的.有人知道如何在最简单的层面上实现密码存储为加密字符串的方式
我开始为我的网站创建一个用户系统,我想要做的是加密密码,而不是明文.我正在使用
PHP / MySQL,所以我认为crypt()是一个很好的起点.但是,我对这样的密码学并不陌生,而且我很难理解它是如何工作的.有人知道如何在最简单的层面上实现密码存储为加密字符串的方式,但总是能够解密,没有安全问题?
密码应该经过哈希处理,而不是加密.也就是说,您不应该删除密码.相反,你应该比较哈希.
>用户设置密码$password =’hX4)1z’ # $pw = hash_hmac('sha512','salt' . $password,$_SERVER['site_key']); mysql_query('INSERT INTO passwords (pw) VALUES ('$pw'); >客户稍后再回来.他们输入了密码,你比较一下: # mysql_query('SELECT pw FROM passwords WHERE user_id = ?'); //$pw = fetch if ($pw == hash_hmac('sha512','salt' . $_REQUEST['password'],$_SERVER['site_key']) { echo "Logged in"; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |