Re: [问题] 有关php网页加入md5后

楼主: allen501pc (Linux User!)   2014-05-31 16:59:27
※ 引述《woti (.......)》之铭言:
: 做了一个会员登入的页面...
: 1.
: 如果在语法中的密码字段加入md5,在数据库中的密码字段就会变成无意义乱码,对吧?
: 2.
: 承1,如果变成无意义乱码,那登入会员时输入密码,
: 数据库又怎么跟已变成无意义数字比对?
说到这个,我举几个月前遇到的例子。
以前我很习惯在用crypt这个函数来做密码,因为资料表设计的洁癖习惯,很自然而然去用
长度64的字串来储存crypt过的密码。
这在CentOS 5.5的PHP 5.2.x 上工作得很正常。
然而,当我把网站系统搬移到Debian 7.3, PHP 5.4.x之后,产生的crypt password屡
次出现无法验证的情况。
原因在于,CentOS 5.5默认的crypt是使用CRYPT_MD5,产生crypted password长度是
34个字符。这在长度为64的资料字段中已很足够。
而Debian 7.3默认的crypt是使用SHA512,产生crypted password长度是102个字符。
但是在长度为64的资料字段中,完全不够用。
再加上当时没去把exception抓出来,debug很久。
请以后若要设计资料表字段时,密码字段长度能拉长就拉长。
Reference: 我的部落格文章 http://tinyurl.com/kxp9wee
作者: banjmin (HD)   2014-05-31 18:29:00
这我同学也遇过 问我的时候倒是很快就猜到原因了 有遇过debug就很快

Links booklink

Contact Us: admin [ a t ] ucptt.com