跳到正文
Biqilu Line

登录与验证常识

通行密钥和 USB / NFC 安全密钥差在哪

两样东西用的是同一套登录技术,差别在那份凭证放在哪、有没有第二份。放的地方不同,丢了以后的处理也不同。

最后核对

由手机或电脑操作系统管理的通行密钥,会通过云服务在你的各台设备之间自动同步,云端还存着一份加密副本。存进 USB / NFC 安全密钥的通行密钥只留在那一把钥匙里,不能从里面复制出来,也没有备份。换手机、丢设备、钥匙坏掉时会发生什么,都由这一点决定。

同一种凭证,放的地方不一样

FIDO 联盟对通行密钥的定义里,加密密钥可以由三类设备提供:电脑、手机、安全密钥。按会不会同步,联盟给了两个叫法:

  • 同步密钥:通过云服务在用户设备之间同步的通行密钥。iPhone、iPad、Mac 上走 iCloud 钥匙串;存进 Google 密码管理工具的,在登录了同一个 Google 账号的 Chrome 或 Android 设备上都能用。
  • 设备绑定密钥:从未离开过单一设备的通行密钥。一把实体安全密钥里可以放多个这样的通行密钥。

FIDO 联盟的说法是,安全密钥从 2019 年起就支持这种单设备通行密钥,厂商将来可能会选择支持同步。

有两点容易弄混。

一是「电脑里的通行密钥」不一定都同步。Chrome 帮助页写明,保存到 Windows Hello 的通行密钥不支持同步或备份,只保存在这台电脑上,电脑丢失或重装系统后找不回;在 Mac 上没有 iCloud 账号、把通行密钥存在 Chrome 个人资料里的,电脑丢失或个人资料被删除后同样找不回。这两种情况下的通行密钥同样只留在一台设备上,按上面的叫法算设备绑定密钥。

二是安全密钥不一定装着通行密钥。Google 帐号帮助页的说法是,任何 FIDO1 或 FIDO2 安全密钥都可以当两步验证里的第二步,也就是先输密码、再碰一下钥匙;想只用钥匙登录、尽可能跳过密码,就得在钥匙上创建通行密钥,这要求钥匙支持 FIDO2 协议。

存放、同步、备份、解锁逐项对比

比什么系统管理的通行密钥(手机、电脑)安全密钥里的通行密钥
存在哪设备上,并经云服务同步;云端存一份加密副本只在这一把实体钥匙里
换了新手机、新电脑同一系统平台、登录同一个平台账号后,通行密钥同步过来把钥匙插上或贴近新设备就能用,不用同步
有没有备份有。Apple 写明即使丢了所有设备也可以经 iCloud 钥匙串托管恢复;Google 密码管理工具会备份并同步到 Google 账号没有。钥匙丢失或重置后找不回
用的时候怎么解锁面容、指纹或设备的锁屏密码、PIN 码通过生物识别或 PIN 解锁钥匙;有些钥匙要按一下上面的按钮

表里「换了新手机、新电脑」那一行的前提是同一系统平台。旧手机和新手机不是同一个平台时,FIDO 联盟给的办法是用旧设备上的通行密钥登录新设备上的账户,登录后在新平台账号里再创建一个通行密钥;手上有安全密钥的,也可以用它在新设备上验证。

手机丢了和钥匙丢了,后面的路不同

手机丢了。 通行密钥是同步的,另一台登录着同一个平台账号的设备上还有。所有设备都丢了,Apple 这边可以走 iCloud 钥匙串恢复:用 iCloud 账户和密码认证身份,回复发到注册电话号码的短信,再输入设备锁屏密码。iOS、iPadOS 和 macOS 只允许 10 次认证尝试,第十次失败后托管记录会被销毁。Google 密码管理工具那边,PIN 码的用途之一就是帮你在新设备上找回通行密钥。换了手机之后各种验证怎么接上,见换手机后恢复验证的步骤。

钥匙丢了或坏了。 里面的通行密钥没有第二份。能做的是用账号上的其他方式登录,把丢的那把从账号里移除。Google 帐号帮助页给的顺序是:

  1. 用通行密钥登录,或者用密码加另一个第二步验证登录。
  2. 从账号中移除丢失的密钥。
  3. 获取新的安全密钥。Google 在这一步的建议是多备一个额外密钥,存放在安全位置。
  4. 把新密钥添加到账号中。

没有其他第二步验证、或者连密码也忘了,只能走账号恢复。Google 写的是可能需要 3-5 个工作日来确认是本人在尝试登录。

Apple 账户的后果更重。启用安全密钥后,在新设备或网页上登录只剩两种办法:物理安全密钥,或另一台已登录的受信任 Apple 设备。Apple 支持页的原话是「如果你丢失了所有受信任设备和安全密钥,则你的账户可能会被永久锁定」。

USB-C、USB-A、闪电、NFC 各配什么设备

买之前看手上设备的接口。Apple 支持页按接头列了适用范围:

接头适用的 Apple 设备
NFC仅适用于 iPhone,轻点一下连接
USB-CiPhone 15 或更新机型,以及大多数 Mac 机型
闪电iPhone 14 及以前的大多数 iPhone 机型
USB-A旧款 Mac 机型;配 USB-C 至 USB-A 转换器可用于新款 Mac

Apple 的说法是,同时具备 NFC 功能和 USB-C 接头的安全密钥适用于大多数 Apple 设备。

Google 的步骤是把密钥连接到计算机的 USB 端口,然后激活它:有按钮或触点的按一下;上面什么都没有的,可能需要先拔出再重新插入,这种密钥每次使用后会自行关闭。Microsoft 支持页举了两种,插入设备 USB 端口的 USB 密钥,和在 NFC 读取器上轻触的 NFC 密钥,添加时要先选自己拿的是哪一类。

在 Google、Apple、Microsoft 账号上添加的前提

Google 账号

  1. 打开一款兼容的浏览器,例如 Chrome、Firefox 或 Safari(13.0.4 或更高版本)。
  2. 注册安全密钥,过程中可能需要登录。

加完之后有两条时间上的规定。新添加的安全密钥,可能需要等待 7 天才能在登录时使用;账号里已有可信的通行密钥或实体安全密钥的,或许能更快。Google 检测到可疑的安全密钥时会停用它并发通知,从通知发出起有 30 天时间确认是本人添加,不处理的话系统会把它从账号里删除。

2023 年 5 月以前就加进 Google 账号的 FIDO2 安全密钥,想在上面创建通行密钥,可能需要先把它从账号里移除,移除后就可以创建了。

钥匙一时不在手边,可以在一台已经登录着这个账号的设备上打开 g.co/sc,生成一个安全码来完成两步验证。

Apple 账户

Apple 把它定位成一项可选的高级安全保护功能。开始前要满足:

  • 至少两个带 FIDO Certified 认证标志的安全密钥,接头能配上你常用的 Apple 设备。
  • 登录了这个 Apple 账户的所有设备都装有 iOS 16.3、iPadOS 16.3 或 macOS Ventura 13.2 或更高版本。
  • 已为 Apple 账户设置双重认证。
  • 用来添加安全密钥的那台设备设了密码。

必须添加并保留至少两个,最多可以添加六个。在 iPhone 或 iPad 上:

  1. 打开【设置】App。
  2. 轻点你的姓名,再轻点【登录与安全性】。
  3. 轻点【双重认证】。
  4. 轻点【安全密钥】,再轻点【添加安全密钥】,按屏幕上的说明添加。
  5. 查看与 Apple 账户相关联的设备,选择在所有活跃设备上保持登录,或者让其中一些设备退出登录。

Mac 上的入口是苹果菜单-【系统设置】-你的姓名-【登录与安全性】-【双重认证】,在【安全密钥】旁边点【设置】。

设置过程中,超过 90 天没用过或没解锁过的设备会被退出登录;这些设备要更新到兼容的系统版本、用安全密钥才能重新登录,更新不了的就登不回去。儿童账户和管理式 Apple 账户不支持这项功能。想停用,在同一位置选【移除所有安全密钥】,账户会恢复为用六位验证码做双重认证。

「至少两个」是 Apple 账户这项功能自己的规定。Google 那边只是建议多备一个额外密钥。

Microsoft 工作或学校帐户

Microsoft 这份支持页讲的是工作或学校帐户,能不能用取决于组织的管理员有没有打开这项功能;安全信息页里看不到安全密钥选项,可能是组织不允许用这种方式验证。一个帐户最多可以注册 10 个安全密钥。从帐户里删除一把钥匙,只是让它不能再登录这个帐户,钥匙里的数据不会跟着清掉;要清空,得把钥匙重置为出厂默认值。

什么情况值得再备一把实体的

通行密钥已经在两台以上设备之间同步,账号上还留着别的验证方式。 这种情况下不买也可以。同步的通行密钥本来就有多份,云端有备份,丢一台设备不至于登不上。

所有通行密钥都压在同一个平台账号上,而且常用设备只有一部手机。 建议备一把。FIDO 联盟的说法是,用户丢失了所有已同步通行密钥的设备时,安全密钥可以作为恢复凭证。钥匙里的通行密钥不经平台账号同步,手机丢了、平台账号一时进不去,事先在网站上添加过的钥匙还能用来登录。

经常要在不属于自己的平台上登录。 比如手机是一个系统、临时要用另一个系统的电脑。钥匙插上或贴一下就能用,不挑系统。这件事手机也能做:在电脑的 Chrome 登录页选【使用另一部设备中的通行密钥】,用手机扫二维码。嫌扫码麻烦再考虑买钥匙。

担心自己是定向攻击的目标。 Apple 说它的安全密钥功能是为想抵御网络钓鱼、社交工程诈骗等定向攻击的人设计的。属于这一类,更稳妥的做法是用实体钥匙。

决定买的话,有三条建议:

  • 买两把,分开放。Apple 给的例子是家里和工作场所各放一个,出行时把其中一个留在家中。只有一把,丢了就回到上面「钥匙丢了」那条路。
  • 看清两样东西:带不带 FIDO Certified 认证标志,支不支持 FIDO2。只支持 FIDO1 的钥匙能当第二步验证,存不了通行密钥。
  • 先去你注册的平台的安全设置页,确认它的通行密钥或两步验证选项里列了 USB 安全密钥,再下单。加上钥匙以后别急着删掉原来的验证方式,钥匙不在手边时还得靠它们登录;真登不上了,按登录不上时的排查顺序一项项试。

关于钥匙本身的三个问题

安全密钥里的通行密钥能复制到另一把安全密钥上吗?

不能。FIDO 联盟对这类通行密钥的说明是只在一个设备上使用、不能从该设备复制,Chrome 帮助页也写明系统不会备份安全密钥中存储的通行密钥。想要第二把能用,做法是把第二把也拿去同一个账号的安全设置里再添加一次,让账号同时认两把。

一个账号能添加几把安全密钥?

各家规定不同。Apple 账户必须添加并保留至少两个,最多六个。Microsoft 的工作或学校帐户最多注册 10 个。Google 账号的两步验证设置里显示的是一份已添加密钥的列表,每把可以单独改名或删除。其他网站以它自己安全设置页的显示为准。

从账号里把安全密钥删掉,钥匙里的数据会一起清掉吗?

不会。按 Microsoft 支持页对工作或学校帐户的说明,从安全信息里删除只是让这把钥匙不能再登录该帐户,钥匙本身继续存着数据和凭据信息。要清空钥匙,得把它重置为出厂默认值,重置会清除钥匙里的所有数据和凭据,包括给其他账号存的。

参考页面

栏目里的其他几篇

全部 9 篇