首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么对双因素身份验证备份使用一次代码?

为什么对双因素身份验证备份使用一次代码?
EN

Security用户
提问于 2018-07-30 11:32:27
回答 2查看 796关注 0票数 9

我正在构建一个使用双因素身份验证的web应用程序。

在实现恢复功能时,我看到大多数公司(如Apple、Facebook、Github)都提供了一组~15个备份代码,它们是7-10个字符--一次发送到服务器的长代码,以及用户的凭据,作为帐户恢复过程的一部分。

我不明白这种做法。为什么需要一次编码?有一个多用途的备份代码不是更简单吗?

EN

回答 2

Security用户

回答已采纳

发布于 2018-07-30 13:31:35

相比短信或电子邮件OTP,我不认为有足够的理由让这些一次性使用,但同样的论点仍然适用。

假设我把密码打印在纸上。然后,在恢复过程中,恢复代码通过以下所有节点:

  • 明文:我的电脑的键盘,操作系统,浏览器
  • 由HTTPS加密:浏览器->服务器的TLS端点(用于ex )。CloudFront)
  • 明文: TLS端点->网络设备->应用服务器
  • 明文:应用服务器<-> db <->其他内部组件。

关键是,即使使用HTTPS,作为恢复过程的一部分,也有许多节点将您的代码存储在内存(或日志中)中。如果代码是多用途的,那么您必须相信这些节点中的每一个都是诚实的,并且没有受到恶意软件的感染。如果代码是一次性使用的,那么一旦它被使用了,您就不关心它是否以日志或其他方式结束。

这不是一个确凿的论点,但这是我能想到的最好的。

票数 11
EN

Security用户

发布于 2019-04-29 13:38:54

我不确定你对一个多用途备份代码的定义是。但是就我所知道的用于acct恢复的备份代码而言,使用较少的总代码可能会更安全一些。代码在任何时候只有效一次,但不多次有效。但是是的,我不认为需要这么多备份代码,但我确实看到至少需要2个备份代码。原因是有些人没有Fido键、固定电话或相对电话在容易的访问范围内。但同样,即使有一个(或两个)备份代码(S),也需要尽职调查才能确保保险箱(或某处)的安全。

但我全心全意地认为,某种多因素恢复备份必须到位。理想情况下,我觉得自己不太可能被排除在外,因为我有更多的因素选择。无论是备份代码(S)、固定电话、亲戚的电话或U2F硬件键,还是以上所有内容。你不能仅仅依靠你的手机在2FA的第二个因素。人们总是因为各种各样的原因而失去手机。

票数 -1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/190632

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档