php - 我应该加密电子邮件地址吗?

Gal*_*Gal 9 php

当用户注册时,我应该按原样将他们的电子邮件存储在数据库中还是哈希.我希望以后可以解密,所以我应该使用md5吗?

谢谢!

Iva*_*uev 16

不,md5()- 是单向散列函数.你不能解密它的价值.通常用于不需要解密的密码.相反,你比较哈希像:

$salt = "adding some secret to increasse security";
if (md5($user_password . $salt) == $user_password_hash_from_db) {
    ## password is ok
}
Run Code Online (Sandbox Code Playgroud)

如果你想能够解密你的值,那么请使用cryptphp函数.但它可能需要安装其他模块.

任何方式我都没有看到任何加密电子邮件的实际原因.

  • 当然使用salted哈希存储密码是个好主意 (2认同)
  • "如果你想能够解密你的价值,那就使用crypt".这是错误的,如果你真的不屑于阅读PHP手册,你会发现它是一个散列函数.http://php.net/manual/en/function.crypt.php (2认同)