Hacker News 中文摘要

RSS订阅

我不喜欢 passkeys -- I don't like passkeys

过去几年,科技行业一直把通行密钥(passkeys)宣传成登录的终极方案。许多大型科技公司每次登录都会“贴心”提醒你它有多轻松。谷歌(Google)把相关设置命名为“尽可能跳过密码”,微软(Microsoft)则宣传应让账户实现无密码。通行密钥绑定创建它的网站,钓鱼页面偷不走;网站数据泄露时也无法从服务器端还原。

正文

近年科技行业不断力推 passkeys 作为登录终极方案。大公司每次登录都“贴心”告知 passkeys 多轻松省力。让它们闭嘴的唯一方法是妥协设置 passkey,或去设置里关掉。

谷歌“尽可能跳过密码”设置

谷歌甚至将设置命名为 “Skip password when possible”,微软也宣传让你账户无密码化。

Passkeys 技术极佳。因绑定创建站点,无法被假登录页钓鱼。站点数据泄露时,passkeys 非对称,无法从服务端细节恢复。

这让它完美契合企业环境,却不适合个人安全。个人最大风险是永久锁号、自动封禁和设备丢失。用 passkeys 虽防中间人攻击,却面临更高概率的失去账户访问。标准流钓鱼虽消除,却制造虚假安全感:账户安全仍由最弱恢复方式(短信、邮件链接、安全问题等)决定。若未启用恢复,用户仍面临永久锁定风险。

硬件密钥

设计上无法备份硬件密钥上的 passkeys:只能增删不能移。需购 2-3 个硬件密钥并为每个站点注册,费用高且随账户增多难以扩展。

硬件密钥支持可发现凭证(网站查用户名无需输入),渐受欢迎,但每键限 25-100 账户,顶级可达 300。超限须删账户或再购新键。

同步 passkeys

苹果和谷歌想让你的身份锚定其操作系统。其设备上的“理想路径”是用绑定苹果或谷歌账户的同步 passkey 管理。若自动系统某天封你号,你也将不可逆地丢失所有第三方账户的 passkeys。

FIDO 联盟正改进互操作性和导出体验,但跨供应商仍碎片化不一致。未来几年会改善,目前太不成熟不可依赖。对比密码只是字符串,必要时可手动导出。

第三方同步 passkeys

将 passkeys 存于 Bitwarden 或 KeePassXC 等密码管理器,你得与平台抗争。尽管操作系统近年引入 API(如安卓 Credential Manager)供第三方接入,体验仍碎片化,缺乏密码自动填充数十年的 UX 打磨。浏览器外和原生应用内自动填充尤其不一致。我认为未来第三方 passkeys 是方向,但尚未到达。

当 passkeys 失效时

在自己设备登录是 passkeys 理想场景。但在同事电脑上就麻烦:可插硬件键,但未必有端口;可用同步 passkey,但得信任该电脑不泄露你其他 passkeys。最后选项是 “Hybrid Transport”,扫码同时蓝牙连接。此方式安全且理论可行,现实中却常因连接失败或根本不支持蓝牙而卡壳。

Passkeys 尚未就绪

我认为企业用户有充分理由用 passkeys,但生态对个人仍不够成熟。

尽管 TOTP 有已知钓鱼漏洞,passkeys 的恢复与锁定风险对多数人日常威胁大于 AiTM 代理。将随机生成密码存于第三方管理器,配合独立 TOTP 应用,能给用户控制权且不放弃明文灵活性。对以往跨站重用密码的用户,passkeys 是巨大提升;对其他所有人,目前反而是退步。

评论

多数用户质疑 passkeys 的跨设备体验、备份可控性与厂商锁定,认为强制推送损害用户权益;少数借助密码管理器者觉得顺畅,或承认其对低安全意识用户的安全价值。

认为 passkeys 体验糟糕且强制推送导致账户锁死与控制丧失

  • 跨设备注册繁琐、丢失无备份、误点确认后其他设备无法登录,且部分平台反复诱导创建导致混乱,普通用户恢复极其挫败(认可度:较多人) > 最大问题是用户在毫无警告下被推着用,误设后其他电脑登不上(@drtz)

认为 passkeys 是科技巨头的生态锁定与供给侧方案

  • 巨头借机孤立用户进封闭生态,类似 ipv6 缺乏用户动机研究,私钥不可见摧毁计算自由(认可度:较多人) > 被科技巨头劫持成把用户关进生态的另一种形式,强推必是红旗(@elteto)

偏好传统密码管理器、硬件密钥或 TOTP 而非 passkeys

  • 密码加 yubikey 或第三方可导出管理器跨平台更稳,TOTP 自主可控,强密码加 MFA 足矣(认可度:较多人) > 我更偏好简单不可钓鱼的 u2f 硬件密钥能继续被接受(@kardianos)

在密码管理器集成下 passkeys 实际可用且轻松

  • 使用 1password、Bitwarden 或 KeePassXC 可跨设备同步,仅弹窗位置等小瑕疵(认可度:少数人) > 用1password跨系统平台都行,不知大伙抱怨啥(@whalesalad)

承认 passkeys 提升防钓鱼安全但牺牲普通人可控性

  • 对重用密码者好处明显,但引入单点故障,家人恢复账户频繁求助,默认推广操之过急(认可度:较多人) > 确实降低普通人被盗风险,但引入单点故障且设为默认令人沮丧(@xyzzy_plugh)

有价值的补充

  • BoppreH 指出根因是无法添加当前不持有的离线备份密钥,并提出允许离线密钥更高优先级且可撤销的替代协议思路。
  • lapcat 强调明文密码可写纸上保险箱、跨设备手动输入才是终极可移植,而 passkeys 连私钥都不让看,不同于可抄写的 ssh 密钥。
  • ectoloph 补充非驻留 U2F 不占硬件密钥槽位,且站点可要求经认证的 passkey,但 macOS 不支持 NFC FIDO 暴露支持碎片。