大多数密码管理器(例如Enpass和LastPass)目前采用了AES 256 + PBKDF2算法,这些算法依赖于用户设定的主密码来生成用于保护用户存储数据的加密密钥。
虽然各个密码管理器都使用了相似的加密方法,但它们的具体实现方式不同,因此安全性也有所不同。从加密方式的角度来看,我们可以将密码管理器大致分为四代。Enpass属于第二代密码管理器,其安全性主要依赖于用户设定的主密码。如果主密码不慎泄露,可能会导致所有密码数据的安全受到威胁。需要注意的是,Enpass并不直接存储用户数据在其服务器上,而是提供了与第三方云服务同步的功能,国内可以设置在坚果云上,比较方便。这意味着您的数据并不保存在Enpass的服务器上,因此不必担心数据会因为Enpass服务器遭受攻击而泄露。
1Password则属于第三代密码管理器,相较于第二代,它提升了云端同步的安全性。1Password采用了一种称为”two-secret key derivation (2SKD)”的方法来生成加密密钥。使用1Password时,您除了需要设置和记住主密码外,还需要妥善保管SecretKey。在新设备上登录1Password账号时,除了输入账号密码,还需要提供SecretKey,这样才能解密和查看云端同步的数据。这种额外的安全层级有助于提高数据的保护水平。
正是这个SecretKey提升了1Password在云端同步方面的安全性,相较于第二代密码管理器更加安全。然而,在设备端的安全性方面,第三代和第二代密码管理器差距不大,都依赖于用户设置的主密码。总结起来,从数据加密方式的角度来看,使用云端同步时,1Password更加安全;而在设备端,它们的安全性水平基本相当,都取决于用户设置的主密码。此外,除了基本的加密设计,各个密码管理器还通过多种功能设计来提升产品的整体安全性。
下面是Enpass和LastPass对比图