如何在PHP中加密和解密图像文件?

时间:2012-05-17 08:19:12

标签: php encryption

如何使用 PHP 加密上传的图像文件(如www.yahoo.com/images/image1.jpg)并在浏览器中显示时解密?我想将它保存在不在数据库中的文件夹中。

1 个答案:

答案 0 :(得分:-1)

所有上传的文件都由PHP存储在临时文件夹中。

在提交表单后,可以通过PHP设置的$ _FILES ["文件"] [" tmp_name"]变量访问此临时文件路径。

然后,您可以使用base64_encode()之类的编码(非加密)算法对图像数据进行编码,然后使用base64_decode()对其进行解码以进行显示。

<?php
      $image_binary = fread(fopen($_FILES["file"]["tmp_name"], "r"), 
                                filesize($_FILES["file"]["tmp_name"]));

       $encoded_image =  base64_encode($image_binary);
       //Save the image file with file data set as $encoded_image
?>

要记住的另一件事是,具有管理员权限的任何人(例如您的主机)都可以看到您的PHP脚本。因此,他们会知道您使用了哪种加密方法,并且可能会发现解密加密文件的方法。

更好的加密策略:Best way to use PHP to encrypt and decrypt passwords?