【发布时间】:2011-01-19 15:04:38
【问题描述】:
我正在开发一个 Web 应用程序,最终用户必须为其创建一个帐户。这部分非常简单:我将使用 SHA-256 对他们的密码进行哈希处理,这样除了用户自己之外,没有人知道密码。现在是困难的部分。用户创建帐户后,他/她必须提供他/她的电子邮件服务器的密码。现在的问题是:我怎样才能体面地保护这个密码(密码将存储在数据库中)?如果我用 TripleDES 加密密码,任何开发人员或系统管理员都可以解密密码并看到它。处理此类问题的通常方法是什么?非常感谢。
【问题讨论】:
-
开发人员不应访问生产数据库。
-
可能,您无法控制用户使用哪些电子邮件服务器,但在这种情况下,用户希望第二方(您)访问他的某些资源,由第三方托管(用户的邮件服务器),在不泄露 3rd-party-password 的情况下,发明了 3-legged-oauth
标签: database passwords encryption