首先phpCMS系统采用的是md5(md5(password),'随机字符串')方式进行加密。
就是先对密码进行一次md5,然后将生成的md5,加上一个随机的字符串,再进行一次md5操作。
数据库中呢,我们只需要需要保存生成的 随机字符串 和加密后的密码 就行了。
思路:
二次加密和普通md5 无非就是,首先要生成一个随机的加密字符串。
上面图片中函数randstr:随机生成一个6位数的字符串,传入的$length=6就是这个意思 定义一下随机字符串长度,当然这个是可以随意更改的。
然后将这个随机字符串和 我们在页面中输入的密码 传到上图函数password,函数password负责进行二次加密。
调用时:
生成随机字符串 然后进行加密。完成后将 将$userinfo数组存入数据库中即可。
解密:解密时无非就是核对数据库中的password 和页面输入的是否相同。
解密时我们先从数据库里取出加密时存入的 对应的字符串 然后也是和调用方法一样 ,对页面上输入的内容进行加密后和数据库中的password进行比较就好。