【发布时间】:2012-08-11 19:18:13
【问题描述】:
大家好,我有一个关于加密/解密个人敏感信息的安全问题:身份(姓名、地址、电话号码)、银行详细信息(排序代码和帐号)几乎所有内容都已加密,并且只能由本人访问并由授权人使用个人数据。现在主要的问题是:
1. 我的方法够安全吗?
2. 有没有更好的方法?
3. 我应该在哪里使用来自数据库或 $_SESSION 的密钥?(最好在哪里使用它们进行解密以便用户查看他的详细信息)
这里是代码:
$iv = mcrypt_create_iv(32, MCRYPT_RAND);
$key = mcrypt_create_iv(32, MCRYPT_RAND);
$encrypted = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $unencrypted, MCRYPT_MODE_CBC, $iv);
这是在我将数据发送到数据库之前加密数据
$decrypted = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $encrypted, MCRYPT_MODE_CBC, $iv );
这是解密方法。(使用上面示例中的 $encrypted、$key 和 $iv)。
【问题讨论】:
-
您将生成的密钥和 IV 存储在哪里?
标签: php security mcrypt sensitive-data