康盛的系列产品,包括Discuz、UCHome、Supesite都集成了同一个用户系统——UCenter,用户登录的密码也保存在 UCenter中,对于其他系统集成或导出数据到UCenter系统,通常会遇到密码生成的问题,这里就讨论一下UCenter的用户密码算法规则和生成 方法。 密码通常使用MD5对用户密码HASH 后保存在数据库中的方法,如果黑客拿到了这个HASH数值,那么可以采用字典的方式暴力破解,如果这个字典数据库足够大,并且字典比较符合人们的设置习惯 的话,那很容易就能破解常见的密码,因此UCenter采用了salt来防止这种暴力破解,salt是一随机字符串,它与口令连接在一起,再用单向函数对 其运算,然后将salt值各单向函数运算的结果存入数据库中。如果可能的salt值的数目足够大的话,它实际上就消除了对常用口令采用的字典式攻击,因为 黑客不可能在数据库中存储那么多salt和用户密码组合后的HASH值。 UCenter的创始人密码是保存在文件中的,打开uc下面 /data/config.inc.php文件,里面的UC_FOUNDERPW保存的就是密码,而UC_FOUNDERSALT保存的是SALT数值, 创始人密码的创建规则是:UC_FOUNDERPW=md5(md5(PASSWORD).UC_FOUNDERSALT),就是先将密码MD5,然后添 加salt,然后再次M...
内容已隐藏,请关注公众号输入验证码查看
本帖支持关注公众号查看
【无套路 无套路 无套路 扫描二维码关注公众号发送【验证码】收到验证码 在上面输入点击提交查看即可显示隐藏内容】
|