在用 cf workers 做一个小东西,按照惯性就直接 bcrypt 了。
但是 bcrypt 未必能在所有环境运行、也很费资源。比如在 workers 环境就无法运行。
我就在想了,加密的这么强,其实未必有人能找到门来破。即使找到门了也未必值得。
如果原本的明文密码够强,其实 md5 方式存储也没有什么问题吧?
验证的时候就再 md5 一遍,然后看结果是不是一样就行。
而且这个前提这是个管理员路由,所以不能有 123456 这样的密码。
在用 cf workers 做一个小东西,按照惯性就直接 bcrypt 了。
但是 bcrypt 未必能在所有环境运行、也很费资源。比如在 workers 环境就无法运行。
我就在想了,加密的这么强,其实未必有人能找到门来破。即使找到门了也未必值得。
如果原本的明文密码够强,其实 md5 方式存储也没有什么问题吧?
验证的时候就再 md5 一遍,然后看结果是不是一样就行。
而且这个前提这是个管理员路由,所以不能有 123456 这样的密码。
不需要加盐,下面这就是一个 bitwarden 生成的 14 位密码,在https://emn178.github.io/online-tools/sha256.html 使用 sha256 加密后的结果:b0e1052bec47b3384e9f5e74d1f22b8c1151f810371eb66cf4591797410da8d6
如果它不是安全的,我很好奇 decrypt 的过程
1
Dragonish3600 Sep 27, 2023
md5 加密强?
|
3
someonedeng Sep 27, 2023
啊
|
4
ysc3839 Sep 27, 2023 via Android
没有纯 js 实现的 bcrypt 等算法吗?
|
5
crysislinux Sep 27, 2023 via Android
先不说 md5 有没有问题,你这样没盐啊
|
6
ThirdFlame Sep 27, 2023
哈希存储只是为了防止看到明文密码 或者 不能简单的通过哈希反查明文。
建议上加盐后 sha256 当然如果只是自己用的小东西,那你哈希不哈希都没啥意义。 |
7
superares Sep 27, 2023 via iPhone
md5 弱不是因为原始密码弱,是它能碰撞出来,你设置一个 20 位的原始密码,我用个 6 位的碰撞出来就行,不需要知道原始的。 加强原始密码的目的只是为了不出现在彩虹表中
|
8
cmdOptionKana Sep 27, 2023 听起来像单用户?单用户(或少量可控用户)用明文都可以,只要是个随机生成的密码就行。加盐之类的一般主要是为了万一被拖库时有多一层保护。
|
9
hyperbin Sep 27, 2023 via Android
穷举速度快,任意碰撞已有先例,密码推荐使用慢哈希算法
|
10
witcat OP @cmdOptionKana 有价值回答
|
11
bianhui Sep 27, 2023
对,加密只是防止存的是明文,就安全的角度来说,传输和存储过程中的安全远大于这个
|
14
expy Sep 27, 2023
argon2 bcrypt 专门设计成计算耗时长,内存占用大。万一被脱库也很难暴力遍历来找出明文密码。
md5 和 sha 系列计算太快了,你这还不加盐,直接彩虹表查表就能攻击了。 |