php 加密解密方法,php加密方法与解密方法
测试文件
test.php
1.加密方法:
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz 长度
$q1 .= 64_decode -> base64_decode
*/
$s = '$' . $q6 . '=urldecode("%6E1%7A%62%2F%6D%615%5C%76%740%6928%2D%70%78%75%71%79%2A6%6C%72%6B%64%679%5F%65%68%63%73%77%6F4%2B%6637%6A");
$' . $q1 . '=$' . $q6 . '{3}.$' . $q6 . '{6}.$' . $q6 . '{33}.$' . $q6 . '{30};
$' . $q3 . '=$' . $q6 . '{33}.$' . $q6 . '{10}.$' . $q6 . '{24}.$' . $q6 . '{10}.$' . $q6 . '{24};
$' . $q4 . '=$' . $q3 . '{0}.$' . $q6 . '{18}.$' . $q6 . '{3}.$' . $q3 . '{0}.$' . $q3 . '{1}.$' . $q6 . '{24};
$' . $q5 . '=$' . $q6 . '{7}.$' . $q6 . '{13};
$' . $q1 . '.=$' . $q6 . '{22}.$' . $q6 . '{36}.$' . $q6 . '{29}.$' . $q6 . '{26}.$' . $q6 . '{30}.$' . $q6 . '{32}.$' . $q6 . '{35}.$' . $q6 . '{26}.$' . $q6 . '{30};
eval($' . $q1 . '("' . base64_encode('$' . $q2 . '="' . $c . '";eval('?>'.$' . $q1 . '($' . $q3 . '($' . $q4 . '($' . $q2 . ',$' . $q5 . '*2),$' . $q4 . '($' . $q2 . ',$' . $q5 . ',$' . $q5 . '),$' . $q4 . '($' . $q2 . ',0,$' . $q5 . '))));') . '"));';
echo $s;
file_put_contents('./test_encode.php', '');
?>
运行加密后生成TEST_ENCODE.PHP文件
解析
'.$O00O0O($O0OO00($OO0O00($O0O000,$OO0000*2),$OO0O00($O0O000,$OO0000,$OO0000),$OO0O00($O0O000,0,$OO0000))));
第二步是执行解码后的代码
解码后为另外一份代码,根据加密算法可知$O0O000变量的值为密钥1+密钥2+源代码编码并进行替换后的字符串,
这边先将替换掉的字符串还原回去,之后再进行base64_decode进行解码,即可获得原来的代码!!!
注意:由于源代码已经包含,所以这边必须加入'?>'
*/
?>
2.解密方法
*/
// 要解密的文件,去掉php标识
$encode_sourcecode = file_get_contents("./test_e.php");
$encode_sourcecode = str_replace('','', $encode_sourcecode);
// 提取第一次需要解密的内容
// 即JE8wTzAwMD0iTmV5SElCamZRdk......1UYVNuUUpnY21UYVVoOCtoTm89IjtldmFsKCc/==
echo '
------------------------------$encode_sourcecode_content
';
$start = strripos($encode_sourcecode, '("') + 2;
$end = strripos($encode_sourcecode, '")');
$encode_sourcecode_content = substr($encode_sourcecode, $start, $end - $start);
echo $encode_sourcecode_content;
// 解密加密部分的代码后的内容
// $O0O000="NeyHIBjfQvDMwo......JoSptgMdl3M3JgSKQTiB0nuh8+hNo="; eval('......OO0000))));
echo '
------------------------------$decode_sourcecode_content
';
$decode_sourcecode_content = base64_decode($encode_sourcecode_content);
echo $decode_sourcecode_content;
// 解密后还是一个加密的代码,需要再次解码,所以要再次提取需要被解密的内容出来
// 即NeyHIBjfQvDMwo......JoSptgMdl3M3JgSKQTiB0nuh8+hNo=
echo '
------------------------------$decode_sourcecode_content_encode_content
';
$start = stripos($decode_sourcecode_content, '"') + 1;
$end = strripos($decode_sourcecode_content, '"') ;
$decode_sourcecode_content_encode_content = substr($decode_sourcecode_content, $start, $end - $start);
echo $decode_sourcecode_content_encode_content;
// 根据加密规则,替换字符并解码,即可得到原文件
echo '
------------------------------$decode_sourcecode_content_encode_content
';
$origin_content = base64_decode(strtr(
substr($decode_sourcecode_content_encode_content, 104),
substr($decode_sourcecode_content_encode_content, 52, 52),
substr($decode_sourcecode_content_encode_content, 0, 52)));
var_dump($origin_content);
file_put_contents('./test_origin.php', $origin_content);
?>
php 加密解密方法,php加密方法与解密方法相关推荐
- java中完成md5加密解密_java实现md5加密解密 notNET中加密和解密的实现方法
java实现md5加密解密 notNET中加密和解密的实现方法 亦或是旅途风光 7-14 1918℃ 22 [ ee21.cn - ASP.NET ] .NET将原来独立的API和SDK合并到一个框架 ...
- 用base64方法进行加密、解密:
有的项目中会把参数用localStorage存储起来,为了避免信息丢失需要进行加密,如下是加密.解密的方法: 加密:this.encryption() 解密:this.decryption() 转载于 ...
- php 加密解密方法,PHP加密解密方法
PHP加密解密方法 2018-03-12 38 PHP加密和解密函数可以用来加密一些有用的字符串存放在数据库里,并且通过可逆解密字符串,该函数使用了base64和MD5加密和解密.function e ...
- python加密与解密_Python字符串加密与解密的方法总结
python对字符串做加密解密处理,大致有三种方法:base64,win32com.client和自定义加密解密算法,最安全可靠的方式,建议是自写加密解密算法. 1,使用base64: 代码示例: # ...
- java解密方法,java加密,解密方法
/** *AES加密解密工具类 *@author M-Y */ public class AESUtil { private static Logger log = LoggerFactory.get ...
- android系统密码文件夹,安卓手机如何隐藏(加密)文件夹(软件) 安卓手机隐藏(加密)文件夹(软件)的方法...
今天给大家带来安卓手机如何隐藏(加密)文件夹(软件),安卓手机隐藏(加密)文件夹(软件)的方法,让您轻松解决问题. 在使用安卓手机的过程当中,我们往往出于各种各样的原因,对于文件夹需要做一定的保护.而 ...
- php代码 加密,PHP给源代码加密的几种方法汇总(推荐)
虽说分享是传统的美德,但我们有时候辛辛苦苦写一些程序只是为了卖点小钱,挣点辛苦费,也防止有些没有道德的人倒卖,所以我们不得不对我们的程序进行加密,以下我们来介绍一下如何通过PHP的自定义函数来加密我们 ...
- iphone相册怎么加密_苹果手机怎么加密相册?苹果手机照片加密的方法介绍
现在手机功能越来越强大,隐私意识也越来越强.如何给私藏的照片加密,这一技巧我们应该也要学会.下面,小编给大家讲解一下苹果手机照片加密的方法介绍. 方法/步骤: 首先在苹果手机App Store上找到相 ...
- aes加密算法_令你的文件安全有了新方法AES-256-GCM加密网站免费用
您是否一直在寻找文件安全性的解决方案? 有一个免费的文件加密网站,在这里效果很好. 常用的加密技术主要分为两类:接近表示加密和不接近表示加密,AES加密是一种接近表示加密,即使用加密 泄露秘密沟通的关 ...
- java md5加密32位小写_Java生成MD5的方法,简单封装并转为32位小写
1 import java.security.MessageDigest; 2 3 public class MD5 { 4 5 public static String toMD5(String p ...
最新文章
- Nature:首个肠道微生物对药物代谢影响的系统性研究
- Android 获取keystore SHA1方法
- Android应用程序组件Content Provider的启动过程源代码分析(1)
- 微课竞赛系统的设计与实现所需工作条件_工作室文化建设展示(3)
- OpenCV相机位移引起的单应性的实例(附完整代码)
- 年轻程序员需要学习的5大经验
- 【蓝桥杯省赛】冲刺练习题【循环】倒计时【15】天
- DBeaver中event实验
- linux查看最近修改过的文件
- jzoj3379-查询【主席树】
- mysql重置增量_摆脱困境:在每种测试方法之前重置自动增量列
- python语言是编译性语音_最强编程语言 Java 和最受欢迎之 Python 的巅峰对决
- python绝对值函数偏码_绝对值python
- tushare数据存入mysql代码_下载股票的历史日交易数据并存入数据库——基于tushare...
- linux中自动化日志分析,Shell项目案例7-应用日志分析
- 虚拟机实现java线程_深入理解java虚拟机(23):java与多线程
- ACL2021 | 对比学习8篇论文一句话总结
- VMware Fusion安装VMware Tools
- IOS下localstorage不起作用提示
- 微服架构基础设施环境平台搭建 -(四)在Kubernetes集群基础上搭建Kubesphere平台
热门文章
- C语言学习(十八)大程序
- java识别节奏,Flutter AudioPlayers 或节拍器滞后
- 【Web】html+js 制作小游戏
- 格式化数据方法 sanitize
- 关于MOS管最全的知识
- 前端架构师的相关体系内容
- Windows下Qt使用htons,htonl,ntohs,ntohl
- 【什么是长尾关键词(Long Tail Keyword)】
- 山东省科协和山东省计算机协会信息奥赛夏令营活动,山东省信息学奥赛活动的开展情况介绍.doc...
- STM32 HAL库组成概述