利用base64函数,对文件进行转码加密
设计此种编码是为了使二进制数据可以通过非纯 8-bit 的传输层传输,例如电子邮件的内容就是通过base64转码后传输的。Base64-encoded后, 数据要比原始数据多占用 33% 左右的空间。
利用base64加密文件:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
|
//写文件路径 $file_url = 'upload/iampdf.pdf' ; $file_encoded = 'encoded/iampdf.pdf' ; //获取文件数据 $data = file_get_contents ( $file_url ); //转码加密 $data_encode = base64_encode ( $data ); //保存加密后的文件 file_put_contents ( $data_encode , $file_encoded ); |
解密base64加密后的文件:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
|
$file_url = 'upload/iampdf.pdf' ; $file_encoded = 'encoded/iampdf.pdf' ; //读取文件数据 $data_encode = file_get_contents ( $file_encoded ); //解密 $data = base64_decode ( $data ); //保存解密后的文件 file_put_contents ( $data , $file_url ); |
其实上面的操作还算不上加密,只要懂解码分分钟可以获取原文件。所以,有兴趣的可以再对转码后的文件进行字符串位移、转换等操作,那样就做到真正的加密了。
本人博客地址:http://www.jsanf.com