
给朋友开手机热点,或者在家里设 Wi-Fi 密码,你大概率干过这事。
为了图省事,你随手敲了 6 个数字,123456。
结果保存按钮是灰的,屏幕弹出一行红字。
「密码长度需为 8 到 63 位。」
没办法,你只能在后面硬生生补上两个数字,改成 12345678。
系统满意了,提示设置成功。
这事儿你细想其实挺离谱的。
银行卡里有你的全部身家,密码是 6 位纯数字,几十年来银行从来没嫌短过。
连个破网蹭点流量,反而被卡着脖子非要 8 位起步?
难道在密码学眼里,你刷的那点流量,比你银行卡里的存款还金贵?
两个数字背后,其实是两套完全相反的防守逻辑。

先说银行卡。
6 位纯数字,一共 100 万种组合,听着确实不算多。
但问题是,谁能在 ATM 机前面把这 100 万种挨个试一遍?
根本试不了。连输错 3 次,机器咔哒一声当场吞卡,账户直接冻结。
所以银行卡的安全感,压根不在密码有多长,而在它只给 3 次机会。猜中的概率大概是三十三万分之一。
1967 年造出第一台 ATM 机的 John Shepherd-Barron,原本打算用自己的 6 位陆军编号当密码。回家跟妻子 Caroline 一商量,妻子说,6 位太长了记不住,最多 4 位。
于是全世界大部分国家的自动取款机,用了几十年的 4 位数密码。一共才 1 万种可能,但几十年过去,也没听说谁靠猜密码把 ATM 取空的。只要限制了试错次数,4 位跟 10 位区别真没那么大。

可一转到 Wi-Fi,整个攻防逻辑彻底变了。
Wi-Fi 最大的安全死穴,在于它在架构上天然防不住**「离线字典攻击」**。
在主流的 WPA2-Personal(也就是 WPA2-PSK)协议里,设备每次连网,双方都要走一遍标准的**「四次握手」(4-Way Handshake)**。
为了不在无线信道里明文暴露密码,双方会交换各自生成的随机数(ANonce 和 SNonce),结合密码、Wi-Fi 名字(SSID)和双方 MAC 地址,推导出一个临时通信密钥,并在握手包末尾附带一个消息完整性校验码(MIC)。
只要附近有任何一张处于监听模式的无线网卡,就能原封不动把这几包 EAPOL 协议帧截获下来。
拿到这几个包含随机数与校验码的关键数据包(通常只有几 KB 大小),你的路由器就已经彻底丧失防守主动权了。
攻击者把抓到的握手包直接存入本地,挂上字典离线比对。每在本地取出一个候选密码,就用抓到的参数算一遍哈希和校验码,看看能不能对上真实握手包里的 MIC。
猜错一次,路由器不知道,猜错一千万次,路由器依然照常工作。
银行卡靠的是带有限速和锁定机制的**「在线认证」,而 WPA2 却把整个密码验证过程,拱手暴露在了毫无约束的「本地离线穷举」**面前。
那在本地离线算,速度到底有多快?
一张普通的消费级 RTX 4090 显卡,跑 WPA2 密码哈希,每秒大概 260 万次。
8 位纯数字,从 00000000 到 99999999,刚好 1 亿种组合。
1 亿除以 260 万,耗时大概 38 秒。
**不到 40 秒。**你倒杯水的功夫,8 位纯数字就全部跑完了。要是用生日,一共几万种组合,显卡只要 0.01 秒。
更绝的是,很多人的 Wi-Fi 连这 38 秒都撑不过去。
因为生成密钥时用来防碰撞的「盐」,标准居然直接用了你的 Wi-Fi 名字(SSID)。早有人把常见 Wi-Fi 名(比如 TP-LINK、ChinaNet)配上几百万常用密码,提前算好做成了现成字典。
要是你家路由器的名字连改都没改,人家连显卡都省了,打开字典一秒对出来。平时技术人员总劝大家把默认 Wi-Fi 名字改掉,其实就是为了防止别人用现成字典查你。

那写标准的那帮专家,当年知不知道 8 位根本防不住?
心里其实门清,甚至当年就有人专门发文提醒过。
这个人叫 Robert Moskowitz,也是当年制定私网地址(就是你家路由器 192.168.x.x 开头那串)的专家之一。
2003 年 WPA 加密刚出来,Moskowitz 就发文警告,人类随手选的 8 位密码基本都在字典里,要想真挡住离线攻击,长度至少得 20 位起步。
20 位。
可标准委员会最后拍板的下限,依然定在 8 位。上限 63 位倒是个纯技术限制,因为 64 位会被系统识别成底层的十六进制原始密钥。
既然 20 位才够安全,为什么标准最后还是只定了 8 位?
想想也能理解。在 2003 年,要是逼大家设 20 位长密码,很多人可能干脆就不设了。
这事一直到 2018 年才有了改观。
Wi-Fi 联盟推出新一代加密 WPA3,把协议重写了。每次试探都必须跟路由器实时交互,由守方掌管节奏。想把包抓回本地通宵穷举,这条路彻底堵死了。
兜兜转转十五年,Wi-Fi 终于学会了银行卡那一套,别人能试几次,得由防守方说了算。
可惜现实里还有很多老设备,为了兼容,很多人家里依然开着老一代加密。
想给家里网络加点保障,操作其实很简单。进路由器后台看一眼,只要设备支持,优先选 WPA3。如果只能用老模式,别用纯数字和生日,挑一句只有你懂的方言或拼音短语。
银行卡敢用 6 位,是因为它只给别人 3 次机会。
Wi-Fi 要你至少 8 位,是因为它管不住别人猜多少次。
Moskowitz 二十多年前就提醒过,要真正够用的得 20 位左右。