麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > PHP > 正文

php代碼加密解密類的示例(完整代碼)

2020-03-24 18:54:47
字體:
供稿:網(wǎng)友
本篇文章給大家?guī)淼膬?nèi)容是關于php代碼加密解密類的示例(完整代碼) ,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

php 代碼加密類,大家可以根據(jù)自己的需求進行修改,原類如下,該實例在ubuntu下測試沒有問題。

 ?phphtml' target='_blank'>class Encryption{ private $c= //存儲密文 private $s= ,$q1,$q2,$q3,$q4,$q5,$q6;//存儲生成的加密后的文件內(nèi)容 //如果不設置一個值,isset會表示不存在; private $file= //讀取文件的路徑 private $source= ,$target=  //構造函數(shù),實例化時調(diào)用初始化全局變量public function __construct(){ //初始化全局變量 $this- initialVar(); //echo hello /n  *@input $property_name,$value *@output * 魔法方法,對變量進行設置值;可根據(jù)需求進行處理。若直接去除if判斷表示可用設置任何屬性的值,包括不存在的屬性; public function __set($property_name,$value){ //定義過的變量; if(isset($this- $property_name)){ $this- $property_name = $value; }else{ //異常處理,處理未聲明的變量賦值;可根據(jù)需求進行處理。 throw new Exception( property does not exist  //魔法方法 取出變量的值; public function __get($property_name){ if(isset($this- $property_name)){ return $this- $property_name; }else{ //throw new Exception( property does not exist  return NULL; //取隨機排序 private function RandAbc($length= ){//隨機排序取回 $str= ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz  return str_shuffle($str); //對明文內(nèi)容進行加密處理 private function ciphertext($filename){ //$filename= index.php  $T_k1=$this- RandAbc(); $T_k2=$this- RandAbc(); $vstr=file_get_contents($filename); $v1=base64_encode($vstr); $c=strtr($v1,$T_k1,$T_k2); $this- c=$T_k1.$T_k2.$c; return $this; //初始化變量 private function initialVar(){ $this- q1= O00O0O //base64_decode $this- q2= O0O000 //$c(原文經(jīng)過strtr置換后的密文,由 目標字符+替換字符+base64_encode(‘原文內(nèi)容 )構成) $this- q3= O0OO00 //strtr $this- q4= OO0O00 //substr $this- q5= OO0000 //52 $this- q6= O00OO0 //urldecode解析過的字符串(n1zb/ma5/vt0i28-pxuqy*6%6Crkdg9_ehcswo4+f37j) //生成加密后的模板(復雜版本); private function model(){ //$c = $this-  //$this- initialVar(); $this- s= ?php $ .$this- 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 $ . $this- q1. =$ .$this- q6. {3}.$ .$this- q6. {6}.$ .$this- q6. {33}.$ .$this- q6. {30};$ .$this- q3. =$ .$this- q6. {33}.$ .$this- q6. {10}.$  .$this- q6. {24}.$ .$this- q6. {10}.$ .$this- q6. {24};$ .$this- q4. =$ .$this- q3. {0}.$ .$this- q6. {18}.$ .$this- q6. {3}.$ .$this- q3. {0} .$ .$this- q3. {1}.$ .$this- q6. {24};$ .$this- q5. =$ .$this- q6. {7}.$ .$this- q6. {13};$ .$this- q1. .=$ .$this- q6. {22}.$ .$this- q6. {36} .$ .$this- q6. {29}.$ .$this- q6. {26}.$ .$this- q6. {30}.$ .$this- q6. {32}.$ .$this- q6. {35}.$ .$this- q6. {26}.$ .$this- q6. {30}; eval($ .$this- q1. ( .base64_encode( $ .$this- q2. = .$this- c.  eval(/ ? / .$ .$this- q1. ($ .$this- q3. ($ .$this- q4. ($ .$this- q2. ,$ .$this- q5. *2),$ .$this- q4. ($ .$this- q2. ,$ .$this- q5. ,$ .$this- q5. ), $ .$this- q4. ($ .$this- q2. ,0,$ .$this- q5. )))); ). ));?  return $this; //創(chuàng)建加密文件 private function build($target){ //$this- encodes( ./index.php  //$this- model(); $fpp1 = fopen($target, w  fwrite($fpp1,$this- s) or die( 寫入是失敗!  fclose($fpp1); return $this; //加密處理 連貫操作 public function encode($file,$target){ //$file = index.php  //連貫操作其實就是利用函數(shù)處理完后返回自身 $this- ciphertext($file)- model()- build($target); echo encode------ .$target. -----ok br/  //解密 public function decode($file,$target= ){ //讀取要解密的文件 $fpp1 = file_get_contents($file); $this- decodeMode($fpp1)- build($target); echo decode------ .$target. -----ok br/  //解密模板,得到解密后的文本 private function decodeMode($fpp1){ //以eval為標志 截取為數(shù)組,前半部分為密文中的替換掉的函數(shù)名,后半部分為密文 $m = explode( eval ,$fpp1); //對系統(tǒng)函數(shù)的替換部分進行執(zhí)行,得到系統(tǒng)變量 $varStr = substr($m[0],strpos($m[0], $  //執(zhí)行后,后續(xù)就可以使用替換后的系統(tǒng)函數(shù)名 eval($varStr); //判斷是否有密文 if(!isset($m[1])){ return $this; //對密文進行截取 {$this- q4} substr $star = strripos($m[1], (  $end = strpos($m[1], )  $str = ${$this- q4}($m[1],$star,$end); //對密文解密 {$this- q1} base64_decode $str = ${$this- q1}($str); //截取出解密后的 核心密文 $evallen = strpos($str, eval  $str = substr($str,0,$evallen); //執(zhí)行核心密文 使系統(tǒng)變量被賦予值 $O0O000 eval($str); //并不能將如下段封裝,因為 ${$this- qn} 并不能在全文中起作用 $this- s = ${$this- q1}( ${$this- q3}( ${$this- q4}( ${$this- q2},${$this- q5}*2 ${$this- q4}( ${$this- q2},${$this- q5},${$this- q5} ${$this- q4}( ${$this- q2},0,${$this- q5} return $this; //遞歸讀取并創(chuàng)建目標目錄結構 private function targetDir($target){ if(!empty($target) ) { if(!file_exists($target)){ mkdir($target,0777,true); }else{ chmod($target,0777); //遞歸解密 對指定文件夾下的php文件解密 public function decodeDir($source,$target= ){ if(is_dir($source)){ $this- targetDir($target); $dir = opendir($source); while(false!=$file=readdir($dir)) //列出所有文件并去掉 . 和 .. 此處用的實例為thinkphp框架,所以默認排除里Thinkphp目錄,用戶可以按照自己的需求設置 if($file!= . $file!= .. $file != ThinkPHP ) $path = $target.DIRECTORY_SEPARATOR.$file; $sourcePath = $source.DIRECTORY_SEPARATOR.$file; $this- decodeDir($sourcePath,$path); }else if(is_file($source)){ $extension=substr($source,strrpos($source, . )+1); if(strtolower($extension)== php ){ $this- decode($source,$target); }else{ //不是php的文件不處理 copy($source, $target); //return; //遞歸加密 對指定文件夾下的php文件加密 public function encodeDir($source,$target){ if(is_dir($source)){ $this- targetDir($target); $dir = opendir($source); while(false!=$file=readdir($dir)) //列出所有文件并去掉 . 和 ..  if($file!= . $file!= .. $file != ThinkPHP ) $path = $target.DIRECTORY_SEPARATOR.$file; $sourcePath = $source.DIRECTORY_SEPARATOR.$file; $this- encodeDir($sourcePath,$path); }else if(is_file($source)){ $extension=substr($source,strrpos($source, . )+1); if(strtolower($extension)== php ){ $this- encode($source,$target); }else{ copy($source, $target);$ob = new Encryption();$ob- source = /var/www/bookReservation $ob- target = /var/www/jiami/bookReservation //解密指定文件//$ob- decode( D://php//WWW//workspace//weixin2//Application//Home//Controller//IndexController.class.php //$ob- decode( jiami.php //$ob- decode( dam6.php //對一個指定的文件目錄進行加密$ob- encodeDir($ob- source,$ob- target);//對一個指定的文件目錄進行解密$ob- decodeDir($ob- target, /var/www/jiami/bookReservationD 

相關推薦:

加密解密 PHP加密解密類

PHP加密解密函數(shù)詳解,加密解密函數(shù)詳解

PHP url 加密解密函數(shù)_PHP教程

以上就是php代碼加密解密類的示例(完整代碼)的詳細內(nèi)容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 黄网站进入 | 国产一级免费视频 | 欧美伦交 | 毛片一级网站 | 羞羞的视频在线观看 | 一区二区三高清 | 日韩精品中文字幕在线观看 | 日韩精品免费一区二区三区 | 成人精品久久久 | 全黄毛片| 国产一级在线看 | 国产精品久久久久久久久久大牛 | 欧美在线一级 | 美国一级黄色毛片 | 国产精品成人一区二区三区吃奶 | 国产一级做a| 久久精品性视频 | 久久欧美亚洲另类专区91大神 | av黄色片网站 | 欧美成人国产va精品日本一级 | 精品久久久久久久久久久αⅴ | 午夜国内精品a一区二区桃色 | 国产精品视频一区二区三区综合 | 亚洲成人精品在线 | 国产精品99久久久久久大便 | 亚洲一区二区三区视频免费 | 国产九色91 | 欧美成人免费tv在线播放 | 国产精品视频免费在线观看 | 国产精品久久久久久久四虎电影 | 黄色特级片黄色特级片 | 午夜国产精品成人 | 亚洲欧美在线看 | 欧美性黄 | 911精品影院在线观看 | 中国a毛片 | 日本人乱人乱亲乱色视频观看 | 亚洲一区二区成人 | 成人午夜在线观看视频 | 国产91影院 | 精品一区二区三区日本 |