成都赛维思网络技术有限公司

新闻资讯

当前位置:首页 > 新闻资讯 > 网站建设开发

用SHA加密口令

来源:成都网站建设    作者:赛维思网络    发布日期:2014-04-15    浏览:2230次

 MySQL SHA()函数会把 一段文本加密为唯一的40字符编码。登录用户界面相当简单,不过我们还没有满足加密登录口令的需求。MySQL提供了一个名为SHA()的函数,它会对文本串应用一个加密算法。其结果是一个加密串,长度固定为40个十六进制字符,而不论原始口令的长度是多少。所以这个函数实际上会生成一个唯一表示口令的40字符编码。

由于SHA()是一个MySQL函数而不是PHP函数,所以调用这个函数时,要作为在表中插入口令的查询的一部分。在登录过程的另一端,同样需要用到SHA()函数,它会查看用户输入的口令是否与数据库中存储的加密口令匹配。

一旦对一个信息加密,很自然地会考虑在某个位置上对其解密。不过SHA()函数是一种单向加密,无法还原。这是为了确保加密数据的安全性,即使有人攻击你的数据库,并偷走所有口令,它们也无法对其解密。

要了解用户登录是否正确地输入口令,你并不需要知道用户的原始口令。这是因为,只要提供同样的文本串,SHA()就会生成相同的40字符编码。所以只需对用户输入的登录口令加密,并与用户表中的密码列中的值比较。这可以利用一个简单的SQL查询完成,根据一个口令来选择匹配的用户行。
 

Copyright © www.svis.cn All Rights Reserved. 成都赛维思网络技术有限公司  蜀ICP备13002520号-3   Sitemap