我已经实施了http://satalketo.com/2013/09/mvc-two-factor-authentication/的代码 Two Factor Authentication in ASP.NET MVC 当用户注册时,他获得了一个密钥并显示了一个QR码,他可以扫描到Google身份验证器, 一切正常,当用户尝试登录系统时,接受的密钥总是与他输入的密钥不同。服务器端的函数GeneratePin生成与他在Google Authenticator移动应用程序中获得的密钥不同的密钥。我不知道什么是错的,试着想也许时区不正确,我的时区是耶路撒冷UTC + 2
答案 0 :(得分:1)
我仔细查看了我的代码,但我看不出为什么这应该是一个问题。我能想到的唯一原因是两台设备中的一台与UTC不同步超过30秒。
我更新了源代码,包括检查当前版本的任意一侧的30秒周期,以尝试处理任何类似的情况。
您可以在GitHub上找到更新的代码,这是下载整个解决方案的最佳位置。我的文章Two Factor Authentication in ASP.NET MVC已更新,其中包含用于检查任意一方的时间段的代码。
如果这没有帮助,请告诉我您可以想到的任何其他信息。