我目前在我的php脚本中进行加密:
select name from table;
while (php loop) {
echo encrypt();
echo $name;
}
这是我的加密功能。
function encrypt($thisVal)
{
select lower(hex(aes_encrypt(:what,:salt))) as encValue
}
有没有办法可以在不使用我正在使用的函数或在sql本身使用加密的情况下执行加密部分?我不想把aes_encrypt
部分放在sql本身,因为如果出现问题,人们可以看到正在做什么。我可以以某种方式加密name
并返回sql的结果。也许将它保存在MySql函数中。
此外,存储aes_encrypt
中使用的keyString的最安全的方法是什么。我目前将它们作为常量存储在php文件中。
答案 0 :(得分:1)
有没有办法可以在不使用我正在使用的功能
的情况下进行加密部分
是什么让你觉得在PHP中进行加密是个坏主意还是不安全?一般来说,通过PHP进行加密是安全的(例如使用mcrypt)。
此外,存储在aes_encrypt中使用的keyString的最安全的方法是什么。我目前将它们作为常量存储在php文件中。
为了获得最佳安全性,请将加密密钥存储在公共HTML之外(或从文档根目录之外)。只要常量文件不驻留在文档根目录中,它就可以了。还要考虑服务器上的哪些用户可以访问该文件 - 您希望它是“需要知道”的基础。