我尝试了一些 Authenticator 应用程序(Google、Microsoft、Authy、Lastpass、...),所有这些应用程序同时生成相同的一次性密码?
因此,这些应用程序使用相同的算法,这是通用算法而不是应用程序开发人员的算法。我对吗 ?
我尝试了一些 Authenticator 应用程序(Google、Microsoft、Authy、Lastpass、...),所有这些应用程序同时生成相同的一次性密码?
因此,这些应用程序使用相同的算法,这是通用算法而不是应用程序开发人员的算法。我对吗 ?
这些应用程序使用相同的算法,这是一种通用算法,而不是应用程序开发人员的算法。我对吗 ?
是的。
身份验证器应用程序有两种常用的协议:
这两种协议的算法是在开放标准中指定的,所以是的,它的所有实现都是相互兼容的。
您列出的所有应用程序都共享一个算法。这使它们能够兼容并且在很大程度上可以互换。
但是,从用户的角度来看,还有其他方案看起来几乎相同,但不使用相同的算法。例如,RSA Authenticate 使用一种专有算法,它是一种 TOTP,但与 RFC 6238 不兼容。
如果每个应用程序都使用自己的算法,那么每个站点都需要使用特定的身份验证器应用程序,因为每个站点都需要使用该算法。
在某些情况下,确实会发生这种情况。一些网站和服务使用自己的身份验证应用程序并基于通用标准,但您不能总是使用其他应用程序。Steam 就是这种情况的一个例子,但这不是常见的情况。
他们都使用 HOTP 算法。之前,使用了各种专有算法。它们似乎很容易被利用,所以我们迁移到了开放标准。