【问题标题】:TOTP defaults and extensibilityTOTP 默认值和可扩展性
【发布时间】:2017-06-03 12:13:03
【问题描述】:

最近,我正在根据 RFC 6238 使用 TOTP 实现 2FA。引起我注意的是默认值:30s 时间步长,epoch 作为计数的开始时间,尤其是广泛使用的参数(RFC 不直接推荐):以 Base32 表示的秘密,长度为 6 的代码和 HMAC-SHA1 作为底层算法。我的问题:

  1. 使用上述参数假设广泛使用的实现发生变化是否合理?这意味着实现一种自定义参数的方法,而不是硬编码默认值。
  2. 是否有任何已知计划通过广泛使用的客户端实现“升级”使用的参数,例如Authy、1Password、Google Authenticator 等?

【问题讨论】:

    标签: standards one-time-password


    【解决方案1】:

    第一个问题的答案取决于您的需求。如果您已经在服务器上实现了 2FA 并正在寻找一些应用程序来在客户端生成代码 - 您只需要选择一个已经支持使用不同参数的应用程序,这样您就可以确保下一次应用程序更新不会' t 破坏了您的身份验证系统。

    至于常见的实现:大多数身份验证服务器使用 6 位代码,使用 Base32 中的 32 符号种子和 SHA1 作为散列函数,但我遇到了一些具有 SHA-256 和 52 符号种子的系统。

    【讨论】:

      猜你喜欢
      • 2016-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-02
      • 2019-01-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多