【发布时间】:2019-04-29 18:12:32
【问题描述】:
我通常从 JavaScript 传输 JSON 对象并使用 PHP 保存它们。
然后我将它们附加到一个特定的文本文件中,如下所示:
$theFile = fopen("Data/" . FQ . ".txt", "a+");
fwrite($theFile, $data.PHP_EOL);
fclose($theFile);
我可以添加代码来将此信息保存为加密文本文件吗?
理想情况下,我想要:
- 我服务器上所有要加密的文件
- 存储在我的本地计算机上的密钥
要破译,我会:
- 将数据从服务器传输到本地计算机
- 使用我的本地密钥解密
我希望这样,如果我的服务器被入侵,所有数据都是乱码,没有密钥(它不存储在服务器上的任何地方)。
【问题讨论】:
-
是的,您可以添加代码来执行此操作。但是是/否问题并没有那么有用。如果您的问题是如何 这样做,那么您的问题对于 StackOverflow 来说太宽泛了。我建议您先尝试自己解决问题,然后编辑您的问题以包含更具体的问题。
-
您可以推荐哪些资源以便我更具体?我听说过 AES 和 SHA 之类的东西,但我不知道从哪里开始。
-
AES 是一种加密算法,适合这种情况。 SHA 系列算法是散列算法,与加密没有任何关系。我将首先查看 PHP 中的
openssl_encrypt函数,然后查看 this repository 中的代码示例。 -
所以我认为我遵循如何加密信息的一般想法,但看起来他们正在存储密钥以解密加密内容中的内容。我想避免这种情况,并且永远不要在任何地方解密我服务器上的内容。我希望它被加密,而我的服务器上没有任何密钥的痕迹;这有意义吗?
-
你误会了 - 密钥作为参数传递给函数。它不会以任何方式与数据一起存储。这将完全破坏加密的意义。
标签: javascript php json encryption