取决于插件如何在内部执行它,这可能是增加安全性的一种非常有趣的方式。
本质上,这个东西滥用了 HOTP,通过计算下一个所需的 OTP 并将它们与主通道一起形成以加密数据库。
但是当然,当您激活前瞻功能时(您确实应该,尤其是在 nano 上)它会生成更多的键序列,以防您意外增加了计数器。
它背后的想法并不坏,尽管显然keepass需要将种子(共享秘密)存储在数据库中以允许重新加密它。
keechallenge 插件在相同的前提下工作:用某种挑战(HOTP 中的计数器)散列共享秘密,但从某些角度来看,这个插件实际上更安全。
1) 它提供 HMAC-SHA1 的 160 位输出,而不是“仅” log2(10^(6*x)) 位(x 是您选择的连续 OTP 的数量,8 个连续的 OTP 会达到 159 和半位长度)
简单地说,对于相同的安全级别,您需要更少的点击,虽然 OTP 插件可能被配置为使用大量 OTP 以获得更高的安全性,但经过修改,Challenge-Response 插件也可以运行多个挑战,抛出数字钻头通过屋顶,再次只需八分之一所需的抽头(不用担心误抽头和没有得到正确的顺序)。
2)由于挑战是从数据库中提供的,我们不需要担心意外触摸键或前瞻,这意味着我们不需要通过允许多个第二因素解决方案进入来降低安全性。
简单地说,数字 2 意味着 Yubi 只有 Secret,而 DB 具有可以称为挑战的“状态”,而在 TOTP 中,Yubi 具有解密 DB 所需的状态和秘密,并且状态每次都会更改您触摸键,这意味着您需要考虑多个状态。
尽管显然共享秘密仍然需要以一种或另一种方式存储在数据库中(除非您根本不改变挑战,但这是鲁莽的)。