我们建立了一个双因素身份验证系统,使用Google 身份验证器通过手机应用使用 OTP。但是我们的一些用户没有智能手机,因此我们希望能够使用硬件令牌。
如果密钥/种子由制造商设置,那么其他人显然可能知道您的密钥。这似乎不安全。因此,如果它们可以重新播种,这不是很有意义吗?当您获得这些类型的硬件令牌时,可以使用新密钥重置它们吗?这是否仅取决于密钥制造商?
答案1
有多种硬件令牌可供播种。
yubikey 确实是一个可爱的版本,因为您不需要额外的硬件来播种它,并且所有必要的软件都是公开可用的。yubikey 甚至对盲人用户来说也很好用。但您需要一个 USB 端口才能使用它。
另外还有 eToken PASS 和 eTokenNG OTP,它们都是 SafeNet(前身为 Aladdin)的令牌。PASS 是一种密钥卡令牌,可以使用附加设备进行播种。eToken PASS 可以作为 HOTP 和 TOTP 令牌进行播种。
eTokenNG OTP 是一种混合设备(OTP 和智能卡)。它还配有 USB 连接器,可以使用此 USB 连接器进行播种。
但如果某些用户只是缺少智能手机,您还可以:
使用莫普,也可以在较旧的功能手机上运行,或者
SMS-Tokens,其中 OTP 通过短信传输到手机(非智能手机)。(但我真的不推荐这种做法!;-)
我建议你看一下林OTP或者隐私理念它是一个后端,可以与所有这些令牌类型(Google Autheticator、YubiKey、eToken Pass、eTokenNG OTP、motp、SMS……)一起使用,从而让您可以选择哪个用户将拥有哪个令牌。
最后,是的,我在该公司工作,为开源 LinOTP 提供企业扩展。
答案2
噢,我讨厌反驳别人。
是的,你可以重新播种硬件密钥。或者,准确地说,存在可以重新播种的符合 OATH 的硬件令牌;具体来说,尤比克. 秘密存储在实际上只写的存储器中;任何实际拥有该设备的人都可以将秘密写入其中,但不会将秘密泄露出去;它只会用它执行 OATH 和其他一次性密码操作。
我与制造商没有任何关系;我只是喜欢他们的产品,因为我想要双因素身份验证,我掌控着秘密。虽然我不在 OATH 模式下使用我的,但我确实在另一种 OTP 模式下使用它,并且确实为我的个人令牌以及使用我的系统的其他人使用的令牌生成和上传了我自己的秘密。
如果你好奇的话,我写了更多相关内容在我的技术说明中。
无论如何,既然您知道可重新播种的硬件令牌存在,您就可以寻找适合您的令牌。
答案3
不,您不能重新播种硬件密钥。
[兼容] OTP/OATH 硬件密钥上的种子值以加密方式存储在 RAM 中。为了提取或更改密钥,您需要在通电时破解加密并更改内存,但这是不可行的。(因为这些设备使用 RAM 来存储种子值,如果您断开电池/电源,您将丢失这些内容并使设备变砖。)
而且,值得考虑的是,您如何知道有人可能知道您的密钥的种子值?仅仅因为它是在工厂设置的,并不意味着任何人都会知道您的密钥的种子值,更不用说知道您的密钥的值并将其与您的密钥关联起来了。(我的计算机整天为 SSL 网站等生成加密密钥,但这并不意味着我可以告诉您任何这些密钥值,即使我的生命依赖它。)