使用一个秘密生成Totp与多个秘密

时间:2019-07-03 23:50:07

标签: go hashicorp-vault two-factor-authentication totp

我想在我的网站上对2fa使用google authenticator和totp算法。我有2个有关生成QR机密的问题。

我计划使用保管库将机密存储起来以更安全,但是我的问题是是否还有其他方法可以每次生成机密而不是将其存储在某些存储中?

我已经阅读了教程,我需要为每个用户使用随机秘密,并将该秘密存储在DB中以进行otp验证。

我的想法是将特定机密存储在安全的地方,并使用每个用户的机密生成哈希。例如,使用mySecret + userId

生成哈希

这是一种安全的方法吗?

1 个答案:

答案 0 :(得分:0)

使用主密码并使用sha256生成用户密码是一个坏主意。因为生成的秘密和QR始终相同。如果用户丢失了历史电话,并且想要删除QR码并获得新的QR,那将是不可能的。最佳做法是生成随机秘密并将其存储在Vault中。