【发布时间】:2019-06-19 17:29:15
【问题描述】:
我使用 mcrypt_decrypt 并加密到我的实时网站。现在,我想更改一些代码并在 localhost 上进行测试。加密/解密在我的实时网络上运行良好,但在 localhost 上却不行。我回显每个加密变量以查看是否有值,但似乎根本不起作用。有什么想法吗?
$secret_key ="qazxsw";
$email="myemail1@email.com";
$encrypted_data = trim(base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $secret_key, $email, MCRYPT_MODE_ECB, mcrypt_create_iv(mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND))));
echo $encrypted_data ;
【问题讨论】:
-
不要使用该代码。这是不安全的。
-
您有什么建议吗? @Scott Arciszewski
-
是:如果您要存储密码,请使用
password_hash()和password_verify()。否则,请使用github.com/defuse/php-encryption,它为您提供经过身份验证的加密(即它实际上是安全的)。 -
@ScottArciszewski。我要加密和解密的是电子邮件地址,我使用了不同类型的加密和解密方法。但它以不同的输出解密加密数据。此代码帮助我使用与原始电子邮件相同的解密方法。
标签: php encryption mcrypt