问题标签 [totp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
480 浏览

javascript - 如何检查输入的 TOTP 密钥格式是否正确?

我正在做一个小型网络项目来在线生成 OTP(如 Google 身份验证器)。我目前正在使用otpauth库来生成 OTP 代码。如果密钥错误,则无法生成代码。那么如何检查输入的密钥是否正确?

0 投票
0 回答
55 浏览

python - Python 生成 TOTP 计数器值(平台无关)

我正在尝试创建一个 TOTP 生成器。这需要一个使用以下公式的“计数器值”:计算计数器值

CT = (T - T0)/TX

我的代码是:

但是,当在我的本地 linux 机器上运行时,这会导致值略有不同,与 tio.run(不确定是什么操作系统)相比,我没有方便测试的 windows 或 macOS 机器。

我的机器:26654068 TIO:26654008

为什么我的代码没有产生相同的值?日期时间函数之一没有达到我的预期吗?

0 投票
0 回答
181 浏览

c# - c# 中的 TOTP 问题与代码生成器和验证器具有相同的服务器

我正在尝试在我的项目中实现基于时间的 OTP,其中代码生成和代码验证将由同一台服务器完成。我的全部要求是生成一个应该在一段时间内有效(可配置)的 OTP,然后将其发送到用户电子邮件,并可选择将密码重新发送到用户的电子邮件。

我可以理解,一旦我们为具有时间步长的特定密钥生成代码,对于该特定时间步长,它将为相同的密钥生成相同的代码。但是使用这种方法的问题是假设时间步长为 5 分钟,生成一个代码并在 5 分钟内有效。现在 6 分钟后,如果我再次发送代码,那么新代码将仅在接下来的 4 分钟而不是 5 分钟内有效,因为它是在之前的代码过期后生成的。

理想情况下,它应该在用户为 OTP 提出请求后 5 分钟内有效。

0 投票
1 回答
50 浏览

python - 从数据库分配变量

我正在尝试使用 rfid 和密码而不是常规的“1234”创建一个 python 智能锁,我将 Time OTP 与PyOTP Libray一起使用。

目前,我不知道如何使用来自表用户secret的数据在 if 函数中分配变量值。secret

如何将 secret用户表中的值分配给变量secret

如果函数

用户表

谢谢你

0 投票
0 回答
117 浏览

java - HmacSHA512 的 TOTP 算法种子长度

我正在尝试实现此处描述的 TOTTP 算法:https ://www.rfc-editor.org/rfc/rfc6238

然而 RFC 说:

  1. 这是seed6464 字节吗?如果我没有像在生成密钥时那样传递 64 字节种子(我的种子有任意长度),会发生什么?

  2. 我应该为我的种子使用 Base64 编码吗?

0 投票
2 回答
246 浏览

javascript - 为什么赛普拉斯会跳过某些命令

在此处输入图像描述

下面的测试应该扫描和验证二维码并使用收到的验证令牌。最后两个命令(.type)被跳过。有谁知道为什么?我已经被困在这里一段时间了。

getUrlVars 是一个帮助函数,它返回我用来生成令牌的字符串。我

谢谢

0 投票
1 回答
410 浏览

java - 使用 sam stevens totp - 无法正常工作

我在 GitHub 上找到了一个项目来生成和检查令牌 (TOTP)。我试图让它工作但失败了。这是代码:

如上所示,我使用该项目生成了 QR 码,并将其扫描到身份验证器应用程序以为我生成令牌。无论我给表单什么代码,验证器应用程序都会失败。谁能向我解释我在这里做错了什么?

0 投票
0 回答
128 浏览

power-automate - Power Automate 能否生成可用于访问外部网站的一次性密码?

我想根据筛选调查的结果(即使用 Microsoft Forms)对网站进行门禁,该调查将为合格的参与者提供一个随机的一次性使用密码。该参与者将通过电子邮件收到他们的密码和网站链接。在有限的时间范围内,参与者可以点击网站链接,收到提供密码的提示,然后被允许访问网站。

电源自动化中是否有一种方法可以集成 2fa 或限时一次性使用密码系统来分发密码?

我已经进行了一些 Google 搜索,并研究了 Microsoft/Google Authenticator 等常见身份验证器系统的功能,但我不希望我的参与者必须安装应用程序或进行任何其他设置,而不是接收包含生成代码的电子邮件。

0 投票
0 回答
77 浏览

asp.net-core - 未为 Azure AD B2C 自定义 totp 示例生成 QR 码

我在此处关注此示例并已部署它并将其与我的测试 Azure AD B2C 用户登录旅程集成。但是,当它加载页面(selfasserted-appfactor-registration.html)时,没有二维码。我在文档中没有看到任何关于此的内容。

在此处输入图像描述

0 投票
0 回答
297 浏览

android - 在手机上设置 Authenticator App 时的 QR Code VS OtpAuth Link

我们的网站既可以从桌面打开,也可以从移动设备打开。当用户在桌面上设置 MFA 时,他们可以使用手机摄像头直接从 PC 屏幕上扫描二维码。但是当他们在移动设备上登录时,他们很难在当前使用的同一设备上扫描二维码。我检查了 Google 在帐户设置中的操作方式(通过 Android 上的 Chrome 登录):

在此处输入图像描述 在此处输入图像描述

因此,默认情况下,他们建议扫描 QR 码,但当我单击“我不能”时,他们建议我自己复制粘贴密码。

但是他们肯定会跟踪用户是从移动设备登录的,为什么不直接显示一个 otpauth:// 链接呢?我尝试在我的应用程序中这样做,它就像一个魅力(至少在 Android 上,现在无法在 iPhone 上检查,但如果你有机会在 iPhone 上测试,这里有一个示例链接):

otpauth://totp/test@example.com?secret=wonttellyouthat&algorithm=SHA1&digits=6&period=30&issuer=superwebsite

upd:SOF 不会让它可点击 - 必须是出于安全原因,但在我的网站上我可以毫无问题地做到这一点。将其包装到Chrome的Android上的代码中,当检查“请求桌面站点”复选框时:

通过点击它,Android 建议我可以使用 Microsoft 或 Google 验证器,这意味着 Google 的应用程序支持这个技巧。我也安装了 LastPass,但那个并没有弹出。

在此处输入图像描述

在我看来,这个解决方案对用户更加友好,而且很好奇为什么谷歌不允许用户这样做?一定是一些我不考虑的陷阱?