php 源码简单加密的几种方法
第一种:利用base64 + 压缩 加密。
加密函数如下:
function encode_file_contents($filename) { $type=strtolower(substr(strrchr($filename,'.'),1)); if ('php' == $type && is_file($filename) && is_writable($filename)) { // 如果是PHP文件 并且可写 则进行压缩编码 $contents = file_get_contents($filename); // 判断文件是否已经被编码处理 $contents = php_strip_whitespace($filename); // 去除PHP头部和尾部标识 $headerPos = strpos($contents,'<?php'); $footerPos = strrpos($contents,'?>'); $contents = substr($contents, $headerPos + 5, $footerPos - $headerPos); $encode = base64_encode(gzdeflate($contents)); // 开始编码 $encode = '<?php'."\n eval(gzinflate(base64_decode("."'".$encode."'".")));\n\n?>"; return file_put_contents($filename, $encode); } return false; }
第二种:利用随机字符加密
function RandAbc($length = "") { // 返回随机字符串 $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; return str_shuffle($str); } $filename = 'count.inc.php'; //要加密的文件 $T_k1 = RandAbc(); //随机密匙1 $T_k2 = RandAbc(); //随机密匙2 $vstr = file_get_contents($filename); $v1 = base64_encode($vstr); $c = strtr($v1, $T_k1, $T_k2); //根据密匙替换对应字符。 $c = $T_k1.$T_k2.$c; $q1 = "O00O0O"; $q2 = "O0O000"; $q3 = "O0OO00"; $q4 = "OO0O00"; $q5 = "OO0000"; $q6 = "O00OO0"; $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.'))));').'"));'; $s = '<?php '."\n".$s."\n".' ?>'; //echo $s; // 生成 加密后的PHP文件 $fpp1 = fopen('temp_'.$filename, 'w'); fwrite($fpp1, $s) or die('写文件错误');
第三种: 在线加密: www.phpjm.net;
第四种: 加密软件加密。【貌似这个加密软件用的是第二种加密的思想】
下载地址: 点击打开链接
php 源码简单加密的几种方法相关推荐
- 线程的3种实现方式并深入源码简单分析实现原理
前言 本文介绍下线程的3种实现方式并深入源码简单的阐述下原理 三种实现方式 Thread Runnable Callable&Future 深入源码简单刨析 Thread Thread类实现了 ...
- php源码安全加密之PHP混淆算法.
php源码安全加密的前世今生,本想发在教程区中.不知道怎么发,就写在这里面吧. PHP加密,解密是一直的话题,本人菜鸟,今天就简单向大家介绍一下并说说其中原理.提供一些加密的混淆算法. 一\PHP的加 ...
- android 点击事件消费,Android View事件分发和消费源码简单理解
Android View事件分发和消费源码简单理解 前言: 开发过程中觉得View事件这块是特别烧脑的,看了好久,才自认为看明白.中间上网查了下singwhatiwanna粉丝的读书笔记,有种茅塞顿开 ...
- PHP源码的加密方法分享
关于PHP PHP是一种易于学习和使用的服务器端脚本语言.只需要很少的编程知识你就能使用PHP建立一个真正交互的WEB站点. PHP是能让你生成动态网页的工具之一.PHP网页文件被当作一般HTML网页 ...
- MACD改良抓牛神器 通达言指标公式 副图 源码 无加密 无未来
MACD改良抓牛神器 通达言指标公式 副图 源码 无加密 无未来 MACD指标是人们喜欢的一个经典传统指标.MACD是用的最多的指标,有交易的地方都能看到他.但是又有多少人能够真正搞懂了这个指标,大部 ...
- Hessian 源码简单分析
Hessian 源码简单分析 Hessian 是一个rpc框架, 我们需要先写一个服务端, 然后在客户端远程的调用它即可. 服务端: 服务端通常和spring 做集成. 首先写一个接口: public ...
- poco源码简单分析
自动化工具poco源码简单分析 Airtest简介 Airtest是网易游戏开源的一款UI自动化测试项目,目前处于公开测试阶段,该项目分为AirtestIDE.Airtest.Poco.Testlab ...
- FFmpeg的HEVC解码器源码简单分析:概述
===================================================== HEVC源码分析文章列表: [解码 -libavcodec HEVC 解码器] FFmpeg ...
- FFmpeg的HEVC解码器源码简单分析:解码器主干部分
===================================================== HEVC源码分析文章列表: [解码 -libavcodec HEVC 解码器] FFmpeg ...
最新文章
- 一文详解科研中的Paper阅读方法!!!
- Request_获取请求参数通用方式介绍
- 三维卷积神经网络预测MNIST数字详解
- Arcgis自动编号实现
- Spring框架面试工作必备锦囊 Java框架-Spring
- 使用nodejs进行WEB开发
- 普通码农和CTO之间的差距
- 超经典两万字,MySQL数据库快速入门。
- pip3 install mysqlclient 报错 “/bin/sh: 1: mysql_config: not found”的解决方法
- 德硕ABeam三位顾问获得SAP认证,企业数字转型有保障
- 【android studio】安卓实现mysql数据库登录、注册、重置密码。
- Praat将连续录制的声音文件切成小单位文件
- 推荐一款可快速全量交付 Kubernetes 集群分布式应用的神器 Sealer
- 使用exe4j打包Java桌面程序为exe
- Java基础 DAY18
- 小米官网前端页面还原
- [Javascript 高级程序设计]学习心得记录 函数参数传递与引用
- MySql 之定时备份数据库
- 怎么将webm格式转换成mp4,3招轻松学
- WordPress插件:微信公众号涨粉插件