代码之家  ›  专栏  ›  技术社区  ›  stormdrain

扩展文件上载类以使用加密

  •  1
  • stormdrain  · 技术社区  · 14 年前

    是否有一种简单/直接的方法来扩展文件上载类以加密正在上载的文件?不仅要加密文件名,还要加密文件本身的数据。

    我使用mcrypt进行数据库加密,希望对文件加密使用同样的方法。

    通过upload.php库,我看不到一个明显的地方可以读取上传的文件,这就是我假设要填充加密的地方。

    如有任何帮助/建议,我们将不胜感激。


    编辑:

    我想的是,在do-upload()(我想是file-temp)中的某个地方,文件在移动(而不是复制)之前会被加密。最终目的地。但是,在upload.php中,我没有看到代码处理文件名、大小、类型等之外的任何文件数据的地方。这种方法有意义吗?

    2 回复  |  直到 14 年前
        1
  •  0
  •   mcandre    14 年前

    与其只加密上传,不如使用https/ssl加密客户端和服务器之间的整个连接。

        2
  •  0
  •   stormdrain    14 年前

    我决定放弃修改上传类。我所做的就是在文件上传后,打开文件,加密,然后再写出来。

    $f=file_get_contents(BASE_PATH.$fileFullPath) or die ('<script>window.parent.transUpdateFail(\'no gfc'.$fileFullPath.'\');</script>');
    $encf=$this->encrypt->encode($f,$this->e_key) or die ('<script>window.parent.transUpdateFail(\'no encrypt\');</script>');
    $nf=fopen(BASE_PATH.$fileFullPath,"r+") or die ('<script>window.parent.transUpdateFail(\'no open '.$fileFullPath.'\');</script>');
    $fw=fwrite($nf,$encf) or die ('<script>window.parent.transUpdateFail(\'no fwrite\');</script>');
    fclose($nf);