请选择 进入手机版 | 继续访问电脑版
查看: 605|回复: 10

x3.5的密码是怎么组成的?不是md5+saltl 么

[复制链接]

37

主题

283

回帖

365

积分

应用开发者

⭐️宇宙级开发者

贡献
1 点
金币
24 个
QQ
发表于 2022-12-28 22:52:56 | 显示全部楼层 |阅读模式
x3.5的密码是怎么组成的?不是md5+saltl 么
⭐️推荐插件
Uniapp小程序和APP

⭐️推荐模板
简单美化APP手机版
极简蓝自适应模板

如需加入Discuz!站长交流群
请联系微信:poisonkid【备注来意】
回复

使用道具 举报

4

主题

66

回帖

124

积分

应用开发者

贡献
1 点
金币
45 个
发表于 2022-12-29 14:13:43 | 显示全部楼层
qzuser1212 发表于 2022-12-29 14:04
比如原来的密码可以用md5(md5($pass) . $salt])来获取 现在的怎么获取呢?

使用php内置函数 password_hash() ,即可获得兼容Discuz系统的新密码。新密码的hash是一体的一个字符串,没有单独的salt,因此salt字段留空即可。

如果你想使用其他编程语言生成兼容Discuz系统的密码:请自行查询所使用语言的相关算法实现。由于Discuz采用的标准符合国际通用的密码存储最佳实践,因此跟标准的实现大多都是兼容的。
默认算法:bcrypt,也可以查询blowfish,也是它。
高版本php用户可选使用更安全的argon2i算法,但就不能再降级php了。
回复 支持 1 反对 0

使用道具 举报

24

主题

1251

回帖

2117

积分

应用开发者

Discuz! 运维

贡献
8 点
金币
578 个
QQ
发表于 2022-12-29 09:09:36 | 显示全部楼层
再加passwordhash吧
回复 支持 反对

使用道具 举报

12

主题

1786

回帖

3359

积分

应用开发者

贡献
48 点
金币
1269 个
发表于 2022-12-29 10:37:30 | 显示全部楼层
X3.5已变更为更强大安全的PHP自带的密码散列算法,此算法为当前通用的密码加密方法,相对MD5更加安全
回复 支持 反对

使用道具 举报

37

主题

283

回帖

365

积分

应用开发者

⭐️宇宙级开发者

贡献
1 点
金币
24 个
QQ
 楼主| 发表于 2022-12-29 12:48:18 | 显示全部楼层
湖中沉 发表于 2022-12-29 10:37
X3.5已变更为更强大安全的PHP自带的密码散列算法,此算法为当前通用的密码加密方法,相对MD5更加安全 ...

请教下如果忘记了密码 怎么解密呢?
⭐️推荐插件
Uniapp小程序和APP

⭐️推荐模板
简单美化APP手机版
极简蓝自适应模板

如需加入Discuz!站长交流群
请联系微信:poisonkid【备注来意】
回复 支持 反对

使用道具 举报

12

主题

1786

回帖

3359

积分

应用开发者

贡献
48 点
金币
1269 个
发表于 2022-12-29 13:04:34 | 显示全部楼层
qzuser1212 发表于 2022-12-29 12:48
请教下如果忘记了密码 怎么解密呢?

不能解密,即便是原来的md5也无法解密的啊
回复 支持 反对

使用道具 举报

37

主题

283

回帖

365

积分

应用开发者

⭐️宇宙级开发者

贡献
1 点
金币
24 个
QQ
 楼主| 发表于 2022-12-29 14:04:36 | 显示全部楼层
比如原来的密码可以用md5(md5($pass) . $salt])来获取 现在的怎么获取呢?
⭐️推荐插件
Uniapp小程序和APP

⭐️推荐模板
简单美化APP手机版
极简蓝自适应模板

如需加入Discuz!站长交流群
请联系微信:poisonkid【备注来意】
回复 支持 反对

使用道具 举报

37

主题

283

回帖

365

积分

应用开发者

⭐️宇宙级开发者

贡献
1 点
金币
24 个
QQ
 楼主| 发表于 2022-12-29 14:05:14 | 显示全部楼层
比如原来的密码可以用md5(md5($pass) . $salt)来获取 现在的怎么获取呢?
⭐️推荐插件
Uniapp小程序和APP

⭐️推荐模板
简单美化APP手机版
极简蓝自适应模板

如需加入Discuz!站长交流群
请联系微信:poisonkid【备注来意】
回复 支持 反对

使用道具 举报

4

主题

66

回帖

124

积分

应用开发者

贡献
1 点
金币
45 个
发表于 2022-12-29 14:20:33 | 显示全部楼层
qzuser1212 发表于 2022-12-29 14:05
比如原来的密码可以用md5(md5($pass) . $salt)来获取 现在的怎么获取呢?

顺带一提,如果你实在就是做不到用新方法手动生成密码的话,这个是不强求的。
因为Discuz即便引入了新的更安全的密码保存规则,并不代表就直接放弃了对旧存储规则的兼容。
由于必须知道密码原文才有可能将其重新编码成新规则,对老规则的兼容还将持续存在很长很长的一段时间,否则老用户就没法登录了。
这意味着哪怕你仍然采用老方法在数据库里强行重置用户的密码,也是没问题的,只是会让系统多重置一次。
回复 支持 反对

使用道具 举报

37

主题

283

回帖

365

积分

应用开发者

⭐️宇宙级开发者

贡献
1 点
金币
24 个
QQ
 楼主| 发表于 2022-12-29 15:31:19 | 显示全部楼层
cornersoft 发表于 2022-12-29 14:13
使用php内置函数 password_hash() ,即可获得兼容Discuz系统的新密码。新密码的hash是一体的一个字符串, ...

好的 感谢 已经解决
⭐️推荐插件
Uniapp小程序和APP

⭐️推荐模板
简单美化APP手机版
极简蓝自适应模板

如需加入Discuz!站长交流群
请联系微信:poisonkid【备注来意】
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则