查看由 Codeigniter 的加密类加密的文件


View a File Encrypted by the Encrypt Class of Codeigniter

我使用codeigniter的加密类来加密服务器中上传的文件。然后,每当我不想像这样访问它时,我都会解密它:

$decrypted = $this->encrypt->decode($fileContents);

我现在的问题是我不知道如何处理我的变量$decrypted,我想查看我的文件,但据我到目前为止的谷歌搜索,用于查看文件的函数需要一个参数,这是一个 url,但随后我不想将解密的文件保存在服务器中以便查看它。我需要帮助。

您的 codeIgniter 加密类有问题还是文件查看问题?我的意思是,您是否正在解码文件?

只需检查这些,如果你在配置文件中提供了加密密钥。

    $config['encryption_key'] = 'some_key';

1.你加载了代码点火器类吗?

    $this->load->library('encrypt');

2.如果要编码的文件是查看页面,您是否正确处理了文件的内容?

    $fileContents = $this->load->view('file_name','',TRUE);

3.对文件进行编码

    $encrypted_string = $this->encrypt->encode($fileContents);

4.解码文件

    $plaintext_string = $this->encrypt->decode($encrypted_string);

在第三步之后,您将获得一个长而混乱的字符串,即加密字符串。在第四步之后,您将取回文件内容。

您可以在每个步骤上回显结果以进行验证。

希望这能让你对codeIgniter加密类有一个了解。

@Ismael米格尔是对的。我只需要用正确的内容类型将其吐出到浏览器:/ 标头。喜欢这个:

header("Content-type:application/pdf");
echo $decrypted;

我知道如果该人有插件可以在浏览器中查看它,该文件就会出现。我认为有更好的方法可以做到这一点。