在PHP中加密用户电子邮件地址的最佳方法是什么?

时间:2016-03-13 01:35:34

标签: php email encryption md5 sha1

我目前正在使用sha1(我不需要知道我的用户的电子邮件地址,但是他们在我的网站上以登录形式使用,用户必须输入电子邮件和密码才能登录),但是我不知道不知道sha1如何处理大写字母和点,因为我假设某些电子邮件服务提供商区分大小写,所以例如我可能有两个用户具有相同的电子邮件地址但具有不同的大写字母。

抱歉英语不好。

sha1是否正确加密点和大写字母?是否有更好的电子邮件地址加密?你建议我做什么?

2 个答案:

答案 0 :(得分:2)

电子邮件地址不区分大小写,因此您绝不会遇到两个用户具有不同大写字母的同一电子邮件地址的情况。

为确保即使同一用户的大小写更改,您的哈希仍然有效,最好的办法是在散列之前将电子邮件地址转换为较低(或较高)的大小写。

根据您这样做的原因,我还会根据其他人的建议更改为更新的变体(SHA-2或SHA-3)和/或查看@Object Manipulator提到的摘要式身份验证。

答案 1 :(得分:0)

我认为加密电子邮件地址字段不是一个好主意。通常,它是需要进行哈希处理的密码字段。

但是,如果您愿意为您的应用程序提供很多安全保护,那么您可以尝试使用Digest Authenticate技术。这里,用户名和密码的组合以及其他服务器变量被加密。

你可能想看看这个:DIgest Authentication

希望这有帮助。

和平!的xD