【问题标题】:Why Two Factor Authentication GeneratePin the wrong code?为什么两因素身份验证 GeneratePin 错误代码?
【发布时间】:2013-10-14 20:26:32
【问题描述】:

我已经实现了来自http://satalketo.com/2013/09/mvc-two-factor-authentication/ 的代码 Two Factor Authentication in ASP.NET MVC 当用户注册时,他会得到一个密钥并显示一个二维码,他可以扫描到谷歌身份验证器, 一切正常,接受当用户尝试登录系统时,密钥总是与他输入的不同。服务器端的功能 GeneratePin 生成与他在 Google Authenticator 移动应用程序中获得的不同的密钥。我不知道出了什么问题,试图认为时区可能不正确,我的时区是耶路撒冷 UTC + 2

【问题讨论】:

  • 确保您的用户手机中的时间与您的服务器中的时间相同
  • 嗨 Haddar Macdasi,您是直接使用 GitHub 上的代码还是对其进行了修改?如果您对代码进行了修改,您能否更新您的问题,让我们知道您所做的更改,如果您没有更改任何内容,那么我将不得不尝试切换我的时区并找出它为什么不起作用给你。

标签: asp.net-mvc-4 two-factor-authentication google-authenticator


【解决方案1】:

我已经仔细查看了我的代码,但我看不出这应该是一个问题的任何原因。我能想到的唯一原因是两台设备中的一台与 UTC 不同步超过 30 秒。

我已经更新了源代码,包括检查当前任一侧的 30 秒周期,以尝试处理类似的情况。

您可以在GitHub 上找到更新的代码,这将是下载整个解决方案的最佳位置。我的文章Two Factor Authentication in ASP.NET MVC 已更新,包含了用于检查两边期间的代码。

如果这没有帮助,请告诉我您能想到的任何其他信息。

【讨论】:

    猜你喜欢
    • 2019-07-21
    • 1970-01-01
    • 2012-08-19
    • 2022-07-25
    • 2022-06-25
    • 1970-01-01
    • 2012-11-03
    • 2016-06-06
    • 2016-02-21
    相关资源
    最近更新 更多