0

我正在客户端加密一个文件并尝试使用 openssl 命令在我的 linux 服务器上解密它,它创建输出文件但大小为 0 字节。

我在 php 中用于解密文件的代码是:

system("openssl enc -d -aes-192-ecb -in secure.cxf -out plain.xml -K 11223344556677889900aabbccddeeff0011223344556677");

在这里,我在 ECB 模式下使用 AES 和 192 位(24 字节)密钥,

在哪里

secure.cxf是与php文件在同一文件夹中的输入文件

plain.xml输出文件是否带有 0 个字节

11223344556677889900aabbccddeeff0011223344556677是我的解密私钥

我在不同的 linux 操作系统上尝试了相同的 openssl 命令,该命令工作正常,但在服务器上它会生成空输出文件。知道如何解决空文件问题吗?有没有其他方法可以对 php 服务器上的文件进行相同的解密(AES、ECB 模式、192 位密钥)?

提前致谢。

4

2 回答 2

0

尝试其中之一:

a) 创建空文件plain.xml和 0666 的权限chmod 0666 plain.xml

或者

b) 在您的 php 文件的父目录上设置权限。chmod 0777 DirectoryWithMyFile

您可以在 FTP 客户端或 SSH 中执行此操作。

另一种方式 - 从phpinfo()查找 tmp 目录并使用此目录。

于 2013-08-08T11:15:51.130 回答
0

我使用 php 以另一种方式解决了我的解密问题。如果有人寻找相同的遵循这个。

使用 php 的 AES -192 加密/解密?

于 2013-08-08T14:01:21.580 回答