【问题标题】:How do I ensure the users secret key for TOTP is valid?如何确保 TOTP 的用户密钥有效?
【发布时间】:2020-01-02 14:31:49
【问题描述】:

我正在开发一个 2FA 应用程序。
对我来说,用户提供的用于生成其令牌的密钥是否可以事先有效?

编辑:
澄清一下:我不是提供登录服务器,而是为用户生成令牌(想想 authy 或 google 身份验证器)

【问题讨论】:

    标签: two-factor-authentication totp


    【解决方案1】:

    验证密钥是否正确的唯一方法是生成令牌并将其提交给为用户生成和存储密钥的服务。如果服务同意令牌是正确的,那么您就有正确的秘密。

    【讨论】:

      【解决方案2】:

      您需要将生成的密钥存储在内存或数据库中的某处。然后在发回密钥时,与存储的值进行检查。

      【讨论】:

      • 密钥何时以及由谁发回?
      • 我不确定我是否理解你的问题。用户登录是您身份验证的第一步,您使用您的 otp 向用户发送电子邮件或短信,他们将 otp 发回给您。这就是 2FA 的工作流程。
      • 我没有提供登录服务器,而是提供令牌生成(想想 authy 或 google 身份验证器)。为了生成这些令牌,用户给了我他们的秘密。在我为他们创建令牌以用于他们的服务之前,我不会确保秘密实际上是有效的。
      • 你认为什么有效或无效?种子值没有格式。你想真正解决什么问题?
      猜你喜欢
      • 2012-12-25
      • 1970-01-01
      • 2017-07-21
      • 1970-01-01
      • 2020-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多