我只是在四处阅读,发现Authy可以在任何地方使用Google身份验证实现,这是非常有趣的。
奥西是怎么做到的?这不是安全风险吗?
发布于 2018-03-01 23:59:40
使用谷歌认证以外的应用本身并不是一个安全风险,只要你信任这些应用程序。
2FA的目的是证明,除了知道一些东西(密码)之外,您还有一些物理对象(在本例中是您的电话)。这使得攻击者更难破坏您的帐户,因为他们不太可能同时知道您的密码和您的电话。
Google使用的TOTP协议基本上是这样工作的(有关详细信息,请参阅RFC #6238):
这是一个开放的标准,通过设计,任何人都可以实现其中的一半(客户机或服务器)。但是,恶意客户端实现可能会将秘密移交给攻击者,攻击者可以为了2FA目的冒充您,所以您应该只使用您信任的客户端应用程序。
尽管如此,我对奥西有一些相当强烈的保留意见。当我上次研究它时,它默认地将步骤(1)的秘密存储在云中。这是为了方便,所以如果您丢失或更换您的手机,您将不必重新配置TOTP在您的所有帐户。
但这也意味着你正在挫败2FA的核心目标:你不再证明自己拥有某些东西,也知道一些东西。相反,您正在证明您知道一些事情(您的密码),并且已经与其他人(Authy的云存储)进行了身份验证。这是一个较弱的安全模型,因为它使Authy成为所有其他站点的失败点。
发布于 2018-01-30 22:33:43
Google身份验证格式是一种标准格式,称为TOTP或HOTP (取决于它是基于时间的还是基于HMAC的实现)。QR代码只是一个编码的URI,它包含应用程序使用起始秘密设置计数器所需的一切。例如:otpauth://totp/Example:alice@google.com?secret=JBSWY3DPEHPK3PXP&issuer=Example
是QR代码实际包含的内容,它具有用户名以及使用的秘密密钥。
https://github.com/google/google-authenticator/wiki/Key-Uri-Format
https://security.stackexchange.com/questions/178746
复制相似问题