还以为微软的 BitLocker 有什么特别的防破解之道,去学了一下源代码,原来就是对用户密码 hash 自循环 100 万次。

2022-11-11 09:26:12 +08:00
 tool2d
真是足够简单和暴力的,还别说普通的电脑 sha256 循环计算 100 万次,还是需要那么一点时间的。

这点时间就可以防止黑客用字典的方式暴力破解本地密码。

相对来说,还算安全吧。

6626 次点击
所在节点    编程
25 条回复
44670
2022-11-11 20:25:11 +08:00
比较通用的实践是 pbkdf2 ,除了不断对自身 hmac 以外,还会和上一轮的结果异或一下
antness
2022-11-12 00:24:01 +08:00
@ipwx 原来如此
LittleDust
2022-11-12 07:13:38 +08:00
这个循环里面 1024 * 1024 可以提出去吧…每次循环都要计算一下,这是微软源码?
kice
2022-11-13 02:24:14 +08:00
@LittleDust 编译器优化里面有一个叫做常量折叠的操作,可以去了解看看。
julyclyde
2022-11-14 09:55:54 +08:00
多次 hash 会导致冲突增加吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/894345

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX