php源码怎样加密?
php源码加密的办法:
1、无需任何PHP扩大的加密
此类加密的代表有 威盾PHP加密专家、PHP正在线加密平台、PHP神盾 等。
此类加密都是以eval函数为外围,辅以各式百般的字符串混杂以及各类小技术,来达到加密目的(更精确的说,应该算是混杂)。上面以一个简略的hello world为例来讲明此类加密的大要进程。
<?php echo "hello world";
起首,咱们把这段代码变成经过eval执行的
<?php eval('echo "hello world";');
而后,咱们再进行一些转换,比方说base64编码
<?php eval(base64_decode('ZWNobyAiaGVsbG8gd29ybGQiOw=='));
就这样子,咱们的第一个加密过的php代码新颖出炉了。。。
下面这个例子十分十分简略,根本上任何有一点php言语根底乃至此外言语根底的人都能轻松的看懂并解密。因而,咱们需求一些办法让这个加密至多看下来没有是那末简略。
2、同时采纳多种编码函数
除了了方才提到的base64,php另有许多内置的编码函数,例如urlencode、gzcompress等。把这些函数夹杂应用能够进步解密的复杂度(没有是难度),别的还能够应用strtr来制订本人的编码规定。 应用变量来替代函数名 应用特定字符来定名变量
这儿所说的特定字符是一些极端类似的字符,如I以及1,0以及O。试想一下满屏都是O以及0组成的变量,而且每个的名字长度都正在10个字符以上。。。 判别文件本身能否被修正
这个性能看似容易,对文件做一下择要再进行下比照便可晓得能否被修正了,然而若何能力正在文件内把择要嵌入出来呢?我不找到完满的计划,但一个变通的计划仍是很容易的。。。
<?php $code = substr(file_get_contents(__FILE__), 0, -32); $hash = substr(file_get_contents(__FILE__), -32); if(md5($code) !== $hash) { exit('file edited'); } ACBC41F727E00F85BEB3440D751BB4E3
当然,你能够把这个校验字符串放正在此外地位来进步破解的难度。有了这个,他人想破解你的顺序可就患上多费一点功夫了。。。
既然晓得了原理,那解密天然也就十分简略了,总体来讲就三步:
把eval交换为输入,比方echo 依据编码规定把字符串复原 假如文件未解密齐全,从第一步开端持续
当然,实际上的解密进程并无这么简略,比方说假如加密的时分应用了gzcompress,那失去的数据将会蕴含一些二进制数据,而采纳普通的文本编纂器关上时这些数据城市显示为乱码,而且正在保留时失落局部数据。处理办法很简略也很费事,那就是应用二进制(16进制)形式关上、修正以及保留。
以上就是php源码怎样加密?的具体内容,更多请存眷资源魔其它相干文章!
标签: php开发教程 php开发资料 php开发自学 PHP源码加密
抱歉,评论功能暂时关闭!