使用PHP进行简单但快速的二进制文件解/加密

时间:2017-10-02 17:12:43

标签: php encryption

我需要使用PHP实现简单(非超安全)但快速的文件加密/解密,因此文件在上载时加密,在下载时解密。文件主要是图像(jpg)和视频(mp4),有些视频最多30 MB,所以我的想法是只加密每个文件的前X个字节,以避免任何人可以访问服务器(即。支持人员)打开用户的文件。

我是这个主题的新手,经过近6个小时的研究,发现只有旧例子,使用弃用的Mcrypt。

拜托,有谁可以给​​我提示开始?我可以使用PHP的本机方法,还是开源库? Mcrypt是否可以选择,即使已弃用(我使用的是PHP 5.6)。你认为在我的情况下,只加密文件的前X个字节是一个好方法吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

这是一个PHP加密库:JSFiddle

我发现这只是通过谷歌搜索,我不能保证它的可靠性或安全性。该页面上有文档和示例。

但是我真的会请你退后一步,考虑一下这个目的是什么以及更广泛的安全考虑因素。为了成功完成这项工作,需要有一些安全秘密,无论是密钥还是密码,都需要隐藏在您不希望能够破译数据的人身上。我可以想象如果那些人是支持人员那将是困难的。如果您将密码设置为用户登录密码,那么当用户忘记密码时,您就会为自己设置广泛的数据丢失。此外,在某些时候它需要不加密,你需要考虑确保此时不会泄露。然后,您需要考虑谁有权访问处理文件访问的源代码以及密钥/密码代码。服务器日志和缓存怎么样?等等

此外,如果您只加密前X个字节数而不需要使其“超安全”,那么我想知道您为什么要尝试这样做呢?我不确定你想要解决的是什么问题。

鉴于正确地进行加密并不简单(更不用说在计算资源方面代价高昂),但是如果你没有正确地做到这一点并不是很好,那么我不禁怀疑你可能会有很多最好不要花费精力确保不受信任的人只在需要知道的基础上访问信息,并记录所有访问权限以保证人们的诚实。