密码怎么存?

密码怎么存?

许多古老的网站把密码用 md5、sha1 等函数做一遍转换就存在数据库里面。比如 LinkedIn 曾经就保存密码的 sha1 值,2021 年这些哈希值泄露之后,

3天内就被还原出 90% 的密码。

数据库表内容如下所示:

username

password_md5

admin

ab4f63f9ac65152575886860dde480a1

toto

21b72c0b7adc5c7b4a50ffcb90d92dd6

billy

47ad898a379c3dad10b4812eba843601

tata

21b72c0b7adc5c7b4a50ffcb90d92dd6

titi

5b9a8069d33fe9812dc8310ebff0a315

这根本就没什么用,不信的话找个 md5 值上网搜搜,点进去第一个链接就能看到 admin 的明文。

你也可以找一份常用密码表,先求出所有常用密码的md5,再去和数据库对比。这叫彩虹表。网上有许多现成的彩虹表可供下载。

用 hashcat 可以很快还原明文:

cat <target_md5.txt

ab4f63f9ac65152575886860dde480a1

21b72c0b7adc5c7b4a50ffcb90d92dd6

47ad898a379c3dad10b4812eba843601

21b72c0b7adc5c7b4a50ffcb90d92dd6

5b9a8069d33fe9812dc8310ebff0a315

EOF

hashcat -m 0 target_md5.txt ./rockyou.txt

密码字典 rockyou.txt 可以从 github 下载到。

也许有人觉得是因为 MD5 太垃圾了,改用更好的哈希方法,如sha256,sha512,

sha3 等。但这些算法,并不是被设计来保存密码的,它们设计来计算某个文件或消息的摘要,而后用来做数字签名、优化搜索或者用于索引。这些算法的目的设计要求之一就是要快。因此上述方法都可以用来处理这些哈希计算的密码。

相关推荐

【唐】白居易《观刈麦》全诗原文、注释和赏析
365bet世界杯欢迎您

【唐】白居易《观刈麦》全诗原文、注释和赏析

📅 08-07 👁️ 7487
赛道Hyper
365速发国际app

赛道Hyper

📅 08-11 👁️ 4057
如何关闭三星电视上的演示模式或零售模式
365速发国际app

如何关闭三星电视上的演示模式或零售模式

📅 08-01 👁️ 3315