【发布时间】:2011-04-20 14:42:34
【问题描述】:
我已经解决了几个关于此的 SO 问题,我的方法在想要加密数据方面有点不同。这就是我想做的事情..
基本上我所有的客户数据都存储在数据库中,3 周或 4 周后,我不再需要他们的数据,例如地址、城市、州、邮编、电话、电子邮件地址、他们订购的产品等。
现在这些数据以原始格式存储在数据库 (mysql) 中。
我在想的是,在某些日子之后,我将加密驻留在 mysql 数据库中的所有数据,而不是存储密钥,我将每次通过输入框手动输入它(当想要加密它或者如果出于某种原因解密它只是为了显示在屏幕上)。
所以基本上这就是它的工作原理..
1) 选择客户在mysql中的记录
2) 通过输入框获取加密密钥
3) 通过加密数据更新mysql记录
这是我的两个问题...
1) 从某种意义上说,如果数据库被破坏,数据将得到保护,上述策略是否是一个好的策略。此外,如果入侵者要获得对代码的访问权限,他们将无法访问密钥,因为它不会存储在任何 php 文件中的任何位置。
2) 我应该如何设置加密系统?我应该使用mysql的函数AES_ENCRYPT吗(请记住,数据的长度可能会有所不同,例如地址,电子邮件地址或有关客户的其他一些信息)
【问题讨论】:
标签: php mysql encryption