欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

PHP源碼加密的實(shí)例分析

這篇文章給大家介紹PHP 源碼加密的實(shí)例分析,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

10多年的梅河口網(wǎng)站建設(shè)經(jīng)驗(yàn),針對設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整梅河口建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“梅河口網(wǎng)站設(shè)計(jì)”,“梅河口網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

背景:在商用的情況下 可能需要加密 php 源碼

php-beast 是一個(gè) PHP 源碼加密的模塊,其使用 DES 算法加密,用戶可以自定義加密的 key 來加密源代碼,可以很好的保護(hù)你的代碼。主要應(yīng)用情景有:

1) 代碼放在虛擬主機(jī)上,有泄漏源碼的危險(xiǎn)。

2) 商業(yè)保護(hù),當(dāng)項(xiàng)目需要收費(fèi)時(shí)就可以加密你的代碼不被修改。

選擇收費(fèi)的 缺點(diǎn)是 需要花錢,但是可能加密性好一點(diǎn),在性能方面會好一點(diǎn)

選擇開源的 優(yōu)點(diǎn)不需要 花錢,可能安全性或者性能比不上收費(fèi)的

選擇 php-beast 為 php 一個(gè)擴(kuò)展,可以方便快捷為 php 代碼進(jìn)行加密處理

有這幾個(gè)特點(diǎn)

提供只能在指定的機(jī)器上運(yùn)行的功能。要使用此功能可以在 networkcards.c 文件添加能夠運(yùn)行機(jī)器的網(wǎng)卡號

代碼使用可以設(shè)置有效期,超過這個(gè)有效期代碼就不能使用了

可以自定義修改默認(rèn)的的密鑰,提高了被盜取的可靠性

源碼:liexusong/php-beast 可以參照文檔

注意如果系統(tǒng)有多個(gè) php 版本,安裝方法有所不同,需要安裝擴(kuò)展到對應(yīng)的 php 版本 例子 博客:多 PHP 版本共存的環(huán)境下安裝 Swoole 到指定版本

Linux 系統(tǒng)安裝 步驟 1 (注意需要 root 安裝保證權(quán)限)

$ wget https://github.com/liexusong/php-beast/archive/master.zip
$ unzip master.zip
$ cd php-beast-master
$ phpize
$ ./configure
$ sudo make && make install

編譯好之后修改 php.ini 配置文件(可能 php.ini 配置 有 cli 和 fpm)cli 就命令行運(yùn)行 php, 加入配置項(xiàng): extension=beast.so, 重啟 php-fpm

systemctl restart php-fpm

PHP 源碼加密的實(shí)例分析

加密方案 進(jìn)入 php-beast-master/tool/ 目錄配置 configure.ini 文件

#source path   
src_path = ""

#destination path 加密的php 放到的目錄
dst_path = ""

#expire time 源碼使用有效期
expire = "2021-02-13 14:48:12"

#encrypt type 加密類型 可以有 selection: DES, AES, BASE64
encrypt_type = "DES"

進(jìn)入 php-beast-master/tool/ 執(zhí)行 php encode_files.php,加密后的結(jié)果

PHP 源碼加密的實(shí)例分析

可以定制修改 默認(rèn)的加密源碼這個(gè)不容易給破解

修改加密后的文件頭結(jié)構(gòu):打開 header.c 文件,找到以下代碼:

char encrypt_file_header_sign[] = {
 0xe8, 0x16, 0xa4, 0x0c,
 0xf2, 0xb2, 0x60, 0xee
};

int encrypt_file_header_length = sizeof(encrypt_file_header_sign);

自定義修改以下代碼(其中的數(shù)字的范圍為:0-8,字母的范圍為:a-f):

0xe8, 0x16, 0xa4, 0x0c,
0xf2, 0xb2, 0x60, 0xee

修改 aes 模塊加密 key:

打開 php-beast-master/aes_algo_handler.c 文件,找到以下代碼:

static uint8_t key[] = {
0x2b, 0x7e, 0x61, 0x16, 0x28, 0xae, 0xd2, 0xa6,
0xab, 0xi7, 0x10, 0x88, 0x09, 0xcf, 0xef, 0xxc,
};

自定義修改以下代碼(其中的數(shù)字的范圍為:0-8,字母的范圍為:a-f):

0x3b, 0x7d, 0x61, 0x16, 0x28, 0xae, 0xd2, 0xa6,
0xab, 0xi7, 0x10, 0x88, 0x49, 0xcf, 0xef, 0xxc,

修改 des 模塊加密 key:

打開 php-beast-master/des_algo_handler.c 文件,找到以下代碼

static char key[8] = {
 0x01, 0x1f, 0x01, 0x1f,
 0x01, 0x0e, 0x01, 0x0e,
};
// 修改以 {} 里面的代碼(其中的數(shù)字的范圍為:0-8,字母的范圍為:a-f):

加密前 和 加密后的時(shí)間的對比

測試工具 ab,10 個(gè)線程發(fā)起 100 次請求

  1. 代碼沒有加密

$stime=microtime(true); //獲取程序開始執(zhí)行的時(shí)間
$a = 0;
for($i=0;$i<5000000;$i++){
 $a=$a*$i;
}
$etime=microtime(true);//獲取程序執(zhí)行結(jié)束的時(shí)間
$total=$etime-$stime;   //計(jì)算差值
echo "<br />[頁面執(zhí)行時(shí)間:{$total} ]秒";

在 linux 執(zhí)行命令 源碼沒有加密的情況

$ ab -n 100 -c 10 http://106.53.5.168:8800/testTime.php

結(jié)果 一共使用了 3.880 秒

PHP 源碼加密的實(shí)例分析

加密后的代碼

斤
 ?`'檁<Sy::bkR¥?Ad0
                  ?γ 6{¥?80?2k*8.\ /t;==h]rx4N???0£
                                                  2v|?_}????a?稖g?a?u·q  3dSR    ¤1r¢zNu?Vjq    ē7M ¤*[root@localhost public]# Xshell

在 linux 執(zhí)行命令 源碼加密的情況

$ ab -n 100 -c 10 http://106.53.5.168:8800/testTimeEncode.php

結(jié)果是:使用了 4.114 秒,比沒有加密的情況慢了 0.3 秒左右

PHP 源碼加密的實(shí)例分析

注意 使用了 php-beast 之后性能不會下降,而且會有所提升。

主要原因是 php-beast 緩存了解密后的代碼,所以二次訪問時(shí)不會再進(jìn)行解密操作,所以會比原來讀文件更快。另外設(shè)置較大的緩存效率會更好,可以通過 beast.cache_size 配置項(xiàng)來設(shè)置。

在 php.ini 文件 增加緩存設(shè)置

beast.cache_size=100m

重啟 pfm

$ systemctl restart php-fpm

再次執(zhí)行

$  ab -n 100 -c 10 http://106.53.5.168:8800/testTimeEncode.php

結(jié)果:執(zhí)行結(jié)果是 3.858 秒 比原來沒有加密 3.880 快了 0.03 秒

PHP 源碼加密的實(shí)例分析

關(guān)于PHP 源碼加密的實(shí)例分析就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

網(wǎng)站名稱:PHP源碼加密的實(shí)例分析
網(wǎng)頁地址:http://chinadenli.net/article36/giccsg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、網(wǎng)站維護(hù)App設(shè)計(jì)、App開發(fā)、網(wǎng)站策劃域名注冊

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)