passwords - 有没有一种安全的方式通过电子邮件以明文形式向用户发送他们的密码?

标签 passwords password-protection forgot-password password-storage

如果我理解正确的话,通过电子邮件发送密码的最大问题是它要求密码以明文形式存储在数据库中。如果数据库遭到破坏,攻击者将获得对所有帐户的访问权限。

这个问题有解决方法吗?

如何尽可能安全地通过电子邮件向用户发送密码?

最佳答案

简单的答案是:不要。如果您认为您的数据库不安全,那么一封电子邮件就少得多。

如果您的意思是要在他们注册时向他们发送密码,那么您可以在将其存储在数据库中之前执行此操作。

如果您的意思是在他们注册后,唯一的选择是以明文形式存储(再次强调,不要这样做)或创建一个新的随 secret 码并将其发送给他们。不可能从散列中获取他们的密码,这就是为什么它使密码存储更安全。最好的选择是生成您发送给他们的新(临时)密码,或者生成一个 token ,让他们可以访问密码更改系统。

您可能需要考虑一个好的散列算法,例如 BCrypt包括盐。

关于passwords - 有没有一种安全的方式通过电子邮件以明文形式向用户发送他们的密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9447540/

相关文章:

php - 您如何确保您存储的密码使用 php 和 mySql 进行了很好的加密?

security - Grails 密码更改 : Allow only "new" passwords

php - 如何在 PHP 中检查 PDF 文件是否受密码保护

用于密码安全的 PHP 不同的单向哈希

security - 最好的 "forgot my password"方法是什么?

php - 使用 HTTP POST 登录表单

c++ - 密码屏蔽(输入显示为********)

jasper-reports - 生成受密码保护的 pdf。如何为每个用户获取唯一密码?

php - cakephp 2.0 中的忘记密码功能

asp.net-membership - ASP.Net 用户忘记了密码问题的答案