
1 2b5X607vRr3OB6ad 2 月 10 日 via iPhone 是指哪一款应用 |
2 ryd994 2 月 10 日 via Android 是。密码不能只有 6 位。 TPM/智能卡可以用 6 位数字 pin 是因为 TPM 无法读取,且错误多次后会自毁。6 位 pin 可以保证 3 次以内猜不到。 |
3 wfg 2 月 10 日 via iPhone 多次错误会冷却,不存在十多天爆破的情况。 |
4 sentinelK 2 月 10 日 没太懂楼主想表达什么,不安全指的是哪一侧? 如果是用户侧的话,问题不大,因为六位数字往往伴随着尝试次数限制。 如果是数据侧用于非明文存储的话,确实没意义。 但是你光拿到 hash ,你怎么知道他的算法是什么,以及他的明文是什么范围? |
5 perrydot 2 月 10 日 想表达什么? |
6 stormtrooperx5 2 月 10 日 你用六位 pin 保护的是什么? |
7 BenHunDun 2 月 10 日 其实不是很确定场景是什么, 可能输入 6 位, 但是在后端有加 salt 后再做哈希? |
8 drymonfidelia OP |
9 stormtrooperx5 2 月 11 日 @drymonfidelia 先问是不是再问为什么,我没觉得银行/券商登录时校验花了一秒以上,也没影响我体验 |
10 realpg PRO @stormtrooperx5 #6 有几个亿存款的银行卡 |
11 sentinelK 2 月 11 日 @drymonfidelia 数据库侧,慢哈希的意义是相较于其他算法而言的。 假设你知道密码字段的加密算法、加盐逻辑以及取值范围。按照你的理解,一个 6 位纯数字,慢哈希的破解是以天为维度。 如果是其他算法的话,使用 GPU 加速,那暴力破解的单位将会是毫秒。 一天已经把整个银行系统的所有用户都轮完了。 |
12 stormtrooperx5 2 月 11 日 @realpg 麻烦先举证一下 |
13 esile 2 月 11 日 连续三次错误锁死或者增加锁定间隔时间,这个 faceid 一样,你不可能短时间弄到长一样的人来解锁。 |
14 drymonfidelia OP |
15 iamwin 2 月 11 日 然而用 6 位数的东西,首先考虑的就是你输错几次以后就锁死,所以不存在给你 10 天爆破的机会的 |
16 restkhz 2 月 12 日 简化一下思路,假设跑完耗时 t=单次计算耗时 k 乘字符集的位数次方 大概就是 t=k*10^6 但是 k 有上限。能做的有限。而且特别消耗计算资源,可能导致 DoS 。LiveOverflow 曾经有个节目讲到过一点这个。既然有上限,我们这里就先把它当常数了。 你讲的这种情况,假设用 bcrypt ,factor 设置成大概跑 1 秒,3060 跑一个,hashcat 只要几个小时。 某种意义上慢 hash 在这个场景只能说防批量了吧。 然而 10^x,哪怕你字符集是 10 个数字,然而看位数是指数函数,增长速度很快。这就是为什么密码位数非常重要。 |
17 MrYELiex 2 月 26 日 慢哈希防御的是拖库以后的离线爆破 这种情况下会增加整个数据库密码被暴力破解的风险 特别是 6 位 pin(传统银行卡支付密码)很容易被爆破 密码表太小了 |