Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从另一个设置为仅接受本地主机连接的PHP文件加载PHP文件中的解密密钥是否更安全?_Php_Mysql_Security_Web - Fatal编程技术网

从另一个设置为仅接受本地主机连接的PHP文件加载PHP文件中的解密密钥是否更安全?

从另一个设置为仅接受本地主机连接的PHP文件加载PHP文件中的解密密钥是否更安全?,php,mysql,security,web,Php,Mysql,Security,Web,我不会以未加密的形式处理无数的用户密码,别担心:) 我不是特别擅长PHP,这是我编写的脚本的服务器端组件,它将接收加密的调用,解密它们,并将它们存储在mysql数据库中。我想知道将解密密钥“隐藏”在外部世界在任何情况下都无法访问的文件中是否更安全 有没有更聪明的方法?或者根本没关系 谢谢。比使用MySQL更安全,或者总的来说比将它们保存在纯文本文件中更安全 MySQL将是首选方法(使用MD5加密) 但是,如果您与简单地放入纯文本文件相比,您提到的方法更可取。通常,您会将登录文件定位在用户无法访问

我不会以未加密的形式处理无数的用户密码,别担心:)

我不是特别擅长PHP,这是我编写的脚本的服务器端组件,它将接收加密的调用,解密它们,并将它们存储在mysql数据库中。我想知道将解密密钥“隐藏”在外部世界在任何情况下都无法访问的文件中是否更安全

有没有更聪明的方法?或者根本没关系


谢谢。

比使用MySQL更安全,或者总的来说比将它们保存在纯文本文件中更安全

MySQL将是首选方法(使用MD5加密)

但是,如果您与简单地放入纯文本文件相比,您提到的方法更可取。通常,您会将登录文件定位在用户无法访问(但PHP用户可以访问)的完全独立的位置,例如在更高的文件夹级别

但是,我建议在PHP中使用MD5函数(可以使用salt),而不要使用MySQL中内置的函数:

参考:MySQL加密功能

安全性始终很重要:)


是的,一定要将它们存储在可访问的web空间之外

嗯,他说的是解密密钥——我想是以AES使用的方式或者其他方式。。。。您不能将它们
md5()
哈希化。。。。多注意这个问题;)迈克尔是对的,我不想加密解密密钥,那会很疯狂。@dsp_099是的,当然不会。我误解了你问题的那一部分。然而,我认为我的答案的关键仍然存在——数据库将被认为是更安全的地方。但如果要将它们存储在文件系统中,至少要移动到web用户无法访问的位置。@msigman-这有什么意义?如果您将它们存储在DB中,那么您就必须关心DB访问数据。。。而将它们存储在数据库中并不安全,因为数据库将是主要攻击目标之一。更不用说bobby表等了……我如何设置特权,使调用的php页面能够访问另一个存储密钥的php页面?我应该使用chmod还是.htaccess?这在很大程度上取决于服务器配置,不能告诉您。。。但您可能需要允许的open_base_dir指令。。。但是-不确定你所说的“另一个php页面”是什么意思-这在远程服务器之间不起作用-你没有提到它是远程服务器…@dps_099-如果对你有用,你应该投票/接受答案:)@dps_099-thanx。。。是的,注意到否决票,我会对它的解释感兴趣:)