1
meisen 2022-02-26 20:37:27 +08:00
几年前发现这个问题,联系客服无解。
后来我将密码改为一位数一直延续到现在,输错的几率几乎为 0 ,对了,我的密码就是 0 🐶 |
2
sky96111 2022-02-26 20:50:41 +08:00 via Android
Linux 也是,好奇但没了解过。给自己的理由是密码错误触发安全审计,需要记录日志产生了开销
|
3
DonDonc 2022-02-26 20:53:02 +08:00 7
故意的,防止暴力破解,Windows 也有类似机制。另外在 Windows 上计算时间不一样的,因为还有域控制之类的情况,macOS 应该也类似。
|
4
Tianao 2022-02-26 20:53:13 +08:00
防爆破,设计使然。
|
5
lance6716 2022-02-26 20:53:36 +08:00 via Android
想象一个攻击者可以用光速输入密码
|
6
felixcode 2022-02-26 20:54:01 +08:00
降低暴力破解的速度。
windows 登录错了几次后也会停顿一段时间后允许再次输入。 |
7
K1W1 2022-02-26 21:07:45 +08:00 via Android
大概是为了防范计时攻击
|
8
chendy 2022-02-26 21:10:11 +08:00
防爆破机制(还能部分防熊孩子)
印象里 win10 好像也有类似的设计 |
9
MrCurly 2022-02-26 21:18:13 +08:00 via iPhone
linux 也这样,不知道为啥
|
10
DonDonc 2022-02-26 21:39:29 +08:00
找到一篇文章,似乎可以修改时间 https://www.stigviewer.com/stig/apple_os_x_10.13/2018-10-01/finding/V-81721
苹果官方的文档只提到服务器版 macOS 修改方式。 Windows 10 搜索 Account Autolock Duration ,可以找到官方文档。 |
11
xiangyuecn 2022-02-26 21:47:06 +08:00
js 版实现:Math.random + setTimeout 🐶
|
12
Jooooooooo 2022-02-26 22:10:51 +08:00
这是防止暴力破解.
|
13
CEBBCAT 2022-02-26 23:21:44 +08:00 6
为了防止《计时攻击 Timing Attacks 》? https://coolshell.cn/articles/21003.html
|
14
LifStge 2022-02-27 00:07:36 +08:00
win10 下 我用的 pin 而且当错误次数超过十来次的时候 接受的就不再是 pin 或密码了 必须输入 A0B2C3(好像是这样) 才能继续恢复
|
15
westerndream 2022-02-27 00:30:08 +08:00
防止暴力破解。我想过这个问题,觉得是这样(没看过源码),如果从用户的角度会觉得难以理解,我多次输入错误按正常间隔让你重试,然后再禁你一段时间,比较符合我们的思考习惯,但估计从实现的角度,输入错误直接延时一下再让你输,写起来就很简单根本不用记录你前几次的操作,也实现了暴力尝试的频率
|
16
dingwen07 2022-02-27 02:17:37 +08:00 via iPhone 6
有一种攻击方式是时序攻击
最简单的例子就是,假设密码是明文比对而不是 hash 比对的时候把两个字符串按照顺序一个一个字符检查,发现不一致就返回错误 这个时候如果对输入错误密码的返回时间进行测量,在最好的情况下可以很快的试出密码 |
18
luckycatio 2022-02-27 05:29:09 +08:00 via iPhone
@shiji ……那是为了防误触,哪有 captcha 长那样
|
19
ZE3kr 2022-02-27 07:35:44 +08:00 via iPhone
我觉得就是慢哈希,但计算量这个参数设计成了一个区间,这样或许就更安全了?
|
22
dialtcp 2022-02-27 10:10:53 +08:00 via Android
13 楼正解
|
23
binux 2022-02-27 11:41:27 +08:00
@ZE3kr 如果是慢哈希,为什么密码正确的时候很快?
这样的话 hash 函数到密码正确的时间没返回正确的结果,就知道结果错误了啊,那所谓的慢哈希还有什么意义? |
24
ZE3kr 2022-02-27 12:48:19 +08:00
@binux 我是这样想的,慢哈希但计算难度比如在 5-20 这个区间,而且哈希是那种依赖的(就是要算难度为 6 的需要先算 5 )。存哈希的时候随机一个难度,比如是 8 。输入正确密码时算到 8 发现匹配就结束了。错误密码需要试到 20 。不过纯属猜测,非密码学专家。
看到了一个破解 APFS 和 HFS+的工具,感兴趣的可以研究下,或许可以解释楼主的问题 https://tinyapps.org/docs/cracking-filevault.html |
25
leon912 2022-02-27 14:06:37 +08:00
应该是怕你暴力破解吧,逐渐拉长你的时间
|
26
yikyo 2022-02-27 20:54:54 +08:00
暴力破解是一个原因,另外是通过检验时间,可以反推出其他信息,加快破解
|
27
john6lq 2022-02-28 07:20:00 +08:00 via iPhone
|
28
neptuno 2022-02-28 09:55:13 +08:00
防暴力破解有点道理,,,但为啥不是第二次或者第三次出错再延长时间呢?
|