标签: security authentication backend two-factor-authentication totp
主要问题是:如何在服务器上安全存储2FA TOTP种子。 假设我将所有用户信息存储在DBMS中的表中。 我希望在整个数据库被盗时保护用户数据免受攻击。
用户密码经过哈希处理和盐渍处理,但我对2FA种子不能这样做。
我有这个想法,用从用户密码派生的密钥对称地加密2FA种子。在登录期间,我将使用给定的密码来检查散列版本,并使用相同的密码来解密2FA种子。密码本身无处存储。
我担心的是,这种方法实际上会削弱安全性,入侵者将能够恢复拥有数据库的用户密码(例如,使用暴力攻击)。