真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

php數(shù)據(jù)解密 php如何解密

PHP常用加密解密方法

作者/上善若水

專注于為中小企業(yè)提供網(wǎng)站制作、成都網(wǎng)站設(shè)計服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)五通橋免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

1.md5(string $str,bool $flag = false);

$flag = false 默認(rèn)返回32位的16進(jìn)至數(shù)據(jù)散列值

$flag = true ?返回原始流數(shù)據(jù)

2.sha1($string,$flag = false)

$flag = false 默認(rèn)返回40位的16進(jìn)至數(shù)據(jù)散列值

true ?返回原始流數(shù)據(jù)

3.hash(string $algo,srting $str,bool $flag);

$algo : 算法名稱,可通過hash_algos()函數(shù)獲取所有hash加密的算法

如:md5,sha1等,采用md5,sha1加密所得結(jié)果和1,2兩種方式結(jié) 果相同。

$flag = false 默認(rèn)返回16進(jìn)至的數(shù)據(jù)散列值,具體長度根據(jù)算法不同

而不同。

true ?返回原始流數(shù)據(jù)。

4.crypt(string $str,$string $salt);

函數(shù)返回使用 DES、Blowfish 或 MD5 算法加密的字符串。

具體算法依賴于PHP檢查之后支持的算法和$salt的格式和長度,當(dāng) 然具體結(jié)果也和操作系統(tǒng)有關(guān)。比較結(jié)果采用 hash_equals($crypted,crypt($input,$salt));//且salt值相同

Password_verify($str,$crypted);

5.password_hash ( string $str, integer $algo [, array $options ] )

函數(shù)返回哈希加密后的密碼字符串, password_hash() 是crypt()的 一個簡單封裝

$algo : 算法 PASSWORD_DEFAULT ,PASSWORD_BCRYPT

$options = [

“cost”=10,//指明算法遞歸的層數(shù),

“salt”=“xxadasdsad”//加密鹽值,即將被遺 棄,采用系統(tǒng)自動隨機(jī)生成安全性更高

];

使用的算法、cost 和鹽值作為哈希的一部分返回

Password_verify($str,$hashed);

6.base64_encode(string $str)

設(shè)計此種編碼是為了使二進(jìn)制數(shù)據(jù)可以通過非純 8-bit 的傳輸層 傳輸,例如電子郵件的主體。base64_decode(string $encoded)

可以進(jìn)行解碼;

7.mcrypt_encrypt ( string $cipher , string $key , string $data ,

string $mode [, string $iv ] )

mcrypt_decrypt ( string $cipher , string $key , string $crypted ,

string $mode [, string $iv ] )

$ciper:加密算法,mcrypt_list_algorithms()可以獲取該函數(shù)所有支持的算法

如MCRYPT_DES(“des”),MCRYPT_RIJNDAEL_128(“rijndael-128”);

$mode : 加密模式 ,mcrypt_list_modes()獲取所有支持的加密模式,ecb,cbc

$key: 加密的秘鑰,mcrypt_get_key_size ( string $cipher , string $mode )

獲取指定的算法和模式所需的密鑰長度。$key要滿足這個長度,如果長 度無效會報出警告。

$iv : 加密的初始向量,可通過mcrypt_create_iv ( int $size [, int $source = MCRYPT_DEV_URANDOM ] ),

Iv的參數(shù)size:

通過mcrypt_get_iv_size ( string $cipher , string $mode )獲取

Iv 的參數(shù)source:

初始向量數(shù)據(jù)來源。可選值有: MCRYPT_RAND (系統(tǒng)隨機(jī)數(shù)生成 器), MCRYPT_DEV_RANDOM (從 /dev/random 文件讀取數(shù)據(jù)) 和 ?MCRYPT_DEV_URANDOM (從 /dev/urandom 文件讀取數(shù)據(jù))。 在 Windows 平臺,PHP 5.3.0 之前的版本中,僅支持 MCRYPT_RAND。

請注意,在 PHP 5.6.0 之前的版本中, 此參數(shù)的默認(rèn)值 為 MCRYPT_DEV_RANDOM。

Note: 需要注意的是,如果沒有更多可用的用來產(chǎn)生隨機(jī)數(shù)據(jù)的信息, 那么 MCRYPT_DEV_RANDOM 可能進(jìn)入阻塞狀態(tài)。

$data : 要加密的字符串?dāng)?shù)據(jù)

php文件被加密怎么破解

可以用黑刀Dezender來試試,我不擔(dān)保可以解出來的哦,

從黑刀Dezender4.3版之后,將著力對混淆函數(shù)以及自定義函數(shù)的解密進(jìn)行應(yīng)對。

大家下載壓縮包并解壓后,會發(fā)現(xiàn)有一個“config.ini”的文件,這就是混淆函數(shù)庫啦!

打開后,可自行編輯其中的內(nèi)容,當(dāng)然,也可以通過黑刀Dezender的升級程序直接下載官方最新的混淆函數(shù)庫文件。這個混淆函數(shù)庫就相當(dāng)于是一個字典文件了,在保證格式不變的情況下,大家可以在【黑刀部落】下載《黑刀超級字典生成器》生成字典來掛入主程序進(jìn)行解密,正確步驟為:先備份、改名自己的config.ini文件,生成的字典文件在第一行加入“[OBFUSCATE_NAME]”,將字典文件改名為config.ini,開始解密。

同時,黑刀部落網(wǎng)站的“項(xiàng)目中心”欄目也開設(shè)了用戶提交自己已知程序被混淆的函數(shù)列表,這樣的話,就能讓Dezender變得越來越強(qiáng)了。再也不怕混淆函數(shù)了。呵呵。

什么是混淆函數(shù)?混淆函數(shù),是從Zend Guard 4.0之后新增的一項(xiàng)功能,能把PHP文件中的所有函數(shù)名都進(jìn)行混淆,混淆后變成以“_OBFUSCATE_”開頭的一串“亂碼”,這種加密方式感覺有點(diǎn)類似Md5,因?yàn)楹瘮?shù)名已經(jīng)不是原來的樣子了,所以解密出來的PHP文件是不能正常執(zhí)行的。黑刀Dezender在4.3版之后,新增加了掛入混淆函數(shù)庫參與解密的功能,而混淆函數(shù)庫,就像是一個包含了已知函數(shù)名的字典,利用這個字典,來與被混淆了的函數(shù)名(就是所謂的“亂碼”)進(jìn)行比對,如果比對結(jié)果相同,則解密出來的文件,基本上就可以恢復(fù)到加密前的樣子了。如果混淆函數(shù)庫中沒有包含該P(yáng)HP文件中使用的函數(shù)名,那么解密結(jié)果依然還是會存在“亂碼”的。掌握了這個原理,我們就可以去想辦法解決問題了。

方式有以下幾種:

第一,使用黑刀超級字典生成器產(chǎn)生一個字典,字典的內(nèi)容可以自己把握,修改字典文件名為“config.ini”,然后打開字典文件,在第一行插入“[OBFUSCATE_NAME]”標(biāo)記(注意,方括號也是需要的,也就是引號內(nèi)的內(nèi)容都要加進(jìn)去),將字典文件拷貝入黑刀Dezender主程序所在目錄,同時注意備份原有的config.ini文件。這種辦法費(fèi)時費(fèi)力,也要看運(yùn)氣,不過卻是最實(shí)際的解決辦法。

第二,??磩e人源代碼的朋友,可以把自己已經(jīng)掌握了的混淆函數(shù)的真實(shí)函數(shù)名提交到我的網(wǎng)站上來。操作步驟:進(jìn)入網(wǎng)站首頁,進(jìn)入項(xiàng)目中心的“DeZender混淆函數(shù)庫更新表”,提交。我會定期查看大家提交上來的數(shù)據(jù),加入到官方的混淆函數(shù)庫中,不斷的增強(qiáng)和完善官方混淆函數(shù)庫,大家可以利用黑刀Dezender的自動升級功能對其進(jìn)行升級!

PHP的aes加解密算法

1. php的aes算法,加密時會存在空格,0,\0等方式進(jìn)行補(bǔ)長,所以解密后需要進(jìn)行trim操作,才能得到原數(shù)據(jù)串

2. aes加密后進(jìn)行base64_encode,但是解密時,直接用aes進(jìn)行解密,不需要先base64_decode.【這個操作很騷氣】

function _decryptData($data,$password, $iv){

$decryptData=openssl_decrypt($data, 'aes-128-cbc', $password, OPENSSL_ZERO_PADDING, $iv);

$data =json_decode(trim($decryptData), true);

return $data;

}

function encryptData($data, $password, $iv){

$data = json_encode($data);//$data是一個數(shù)組,如果是字符串,請忽略此句.

$result = base64_encode(openssl_encrypt($data, 'aes-128-cbc', $password, OPENSSL_RAW_DATA, $iv));

return $result;

}

php文件解密

PHP所有的加密都是紙老虎,把eval換為exit,然后在控制臺(或者DOS下)運(yùn)行一下就能看見那個eval語句解密后的代碼,用來替換eval語句既可。例如你的程序中,第一個eval替換為exit后,執(zhí)行輸出的代碼如下:

$OO0OO0000=$OOO000000{17}.$OOO000000{12}.$OOO000000{18}.$OOO000000{5}.$OOO000000{19};if(!0)$O000O0O00=$OO0OO0000($OOO0O0O00,'rb');$OO0OO000O=$OOO000000{17}.$OOO000000{20}.$OOO000000{5}.$OOO000000{9}.$OOO000000{16};$OO0OO00O0=$OOO000000{14}.$OOO000000{0}.$OOO000000{20}.$OOO000000{0}.$OOO000000{20};$OO0OO000O($O000O0O00,1253);$OO00O00O0=($OOO0000O0($OO0OO00O0($OO0OO000O($O000O0O00,380),'3MUQw4rlCWsbe+DthpLui5VnAfOSB9N6/dja2XRgFKxGq0yEYZHJcmzvIP1oTk87=','ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/')));eval($OO00O00O0);

用這一段替換源文件中的eval那一個語句,替換后的內(nèi)容如下:

?php // This file is protected by copyright law provided under license. Copyright(C) 2009 , All rights reserved.

$OOO0O0O00=__FILE__;$OOO000000=urldecode('%74%68%36%73%62%65%68%71%6c%61%34%63%6f%5f%73%61%64%66%70%6e%72');$OO00O0000=9504;$OOO0000O0=$OOO000000{4}.$OOO000000{9}.$OOO000000{3}.$OOO000000{5};$OOO0000O0.=$OOO000000{2}.$OOO000000{10}.$OOO000000{13}.$OOO000000{16};$OOO0000O0.=$OOO0000O0{3}.$OOO000000{11}.$OOO000000{12}.$OOO0000O0{7}.$OOO000000{5};$O0O0000O0='OOO0000O0';$OO0OO0000=$OOO000000{17}.$OOO000000{12}.$OOO000000{18}.$OOO000000{5}.$OOO000000{19};if(!0)$O000O0O00=$OO0OO0000($OOO0O0O00,'rb');$OO0OO000O=$OOO000000{17}.$OOO000000{20}.$OOO000000{5}.$OOO000000{9}.$OOO000000{16};$OO0OO00O0=$OOO000000{14}.$OOO000000{0}.$OOO000000{20}.$OOO000000{0}.$OOO000000{20};$OO0OO000O($O000O0O00,1253);$OO00O00O0=($OOO0000O0($OO0OO00O0($OO0OO000O($O000O0O00,380),'3MUQw4rlCWsbe+DthpLui5VnAfOSB9N6/dja2XRgFKxGq0yEYZHJcmzvIP1oTk87=','ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/')));exit($OO00O00O0);return;?

以上就是PHP解密的原理,但是這個文件到這里已經(jīng)無法自動解密下去了,因?yàn)樵募黄茐牧耍覀兛梢钥磂cho $OO0OO00O0等變量,發(fā)現(xiàn)現(xiàn)在的語句是實(shí)際上是讀取文件中后面的內(nèi)容,進(jìn)行替換,然后再次執(zhí)行,現(xiàn)在需要調(diào)整里面的380,到原文件380字節(jié)后的合適地方。

PHP文件如何解密

你可以網(wǎng)上下載這款軟件試試

黑刀Dezender

沒有反應(yīng)好象不對吧?

我用這個軟件解密過杰奇小說的PHP源代碼!

不過解密出來的源代碼只能用來參考,不能直接用回去。

我在懷疑不是PHP代碼的加密,你將/html后面的代碼復(fù)制到另一個記事本里另存為PHP,然后解一下密看看?如果還是不行,你要到網(wǎng)上找其他代碼解密工具試試了!

iOS傳過來的AES加密數(shù)據(jù)PHP怎么解密?

使用PHP解密數(shù)據(jù)就可以了,代碼參考

1、使用mcrypt擴(kuò)展方式實(shí)現(xiàn):

加密解密代碼中都有例子了

2、純PHP實(shí)現(xiàn):

加密函數(shù):AESEncryptCtr()

解密函數(shù):AESDecryptCtr()


分享名稱:php數(shù)據(jù)解密 php如何解密
分享URL:http://weahome.cn/article/hpgcjj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部