php_screw安裝使用教程(另一個(gè)PHP代碼加密實(shí)現(xiàn))
開始之前,首先要澄清兩個(gè)問題:第一,支持開源,不等于反對(duì)代碼加密;第二,如果把不屬于自己的東西(比如公司的)拿去開源,就更加不應(yīng)該了。
以前知道的,PHP代碼的加密都是用Zend的encoder,這東西不但是商業(yè)軟件,好像還暴出過能夠被破解的問題,所以就找到了替代的方案────php_screw。
php_screw非常小巧,沒有仔細(xì)看過它的算法,但從說明文檔中看,可以自行更改SEED,然后自行編譯so和可執(zhí)行檔。如果夠牛的話,甚至可以自己去更改算法。不管怎樣,對(duì)于我們這些“普通人”來(lái)說,這種加密應(yīng)該就夠了吧,如果真想滴水不漏,那還是不要公開的好,雖然作者說的并不是很容易就破解,但指不定哪兒有牛群呢不是么?
安裝的環(huán)境需要:PHP5.x,zlib開啟,autoconf,automake已安裝。
測(cè)試環(huán)境:Ubuntu 8.04 hardy, PHP 5.2.3。
下載地址:http://sourceforge.net/projects/php-screw/
1、 解壓,更改my_screw.h,里面的幾個(gè)數(shù)字就是SEED,相當(dāng)于密碼,可以隨意更改、增加,并且數(shù)字的多少不影響解密的速度。
2、編譯so文件:
$ phpize
$ ./configure
$ make
如果出現(xiàn)這樣的錯(cuò)誤,那是因?yàn)閍utoconf沒有安裝:
$ make
make: *** No targets specified and no makefile found. Stop.
3、安裝so文件,編譯好的文件在modules目錄下,將其拷貝到php extension存放的位置,比如/usr/lib/php5/20060613+lfs下,然后在php.ini中增加:
extension = php_screw.so
4、編譯用來(lái)加密文件的可執(zhí)行文件:
$ cd tools
$ make
tools目錄下新生成的screw就是了,放到$PATH中就可以調(diào)用了,比如要加密一個(gè)文件:
$ screw a.php
Success Crypting(a.php)
加密后的a.php執(zhí)行正常,同時(shí)screw還會(huì)把原來(lái)沒有加密的文件改名為.screw文件作為備份。
Update @ 2008-09-01
加密之后,還有個(gè)小問題,用require或include引用放在include_path下的加密代碼時(shí),會(huì)當(dāng)做明文引過來(lái),解決方法有兩種:
使用絕對(duì)路徑引用放在include_path下的加密內(nèi)容,如果是自己的主機(jī),肯定沒問題的;
使用相對(duì)路徑來(lái)引用,比如在本項(xiàng)目的子目錄內(nèi),這樣也是沒問題的。
相關(guān)文章
PDO實(shí)現(xiàn)學(xué)生管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了PDO實(shí)現(xiàn)學(xué)生管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-03-03
ThinkPHP V2.2說明文檔沒有說明的那些事實(shí)例小結(jié)
這篇文章主要介紹了ThinkPHP V2.2說明文檔沒有說明的那些事,實(shí)例分析了ThinkPHP中常用的技巧,需要的朋友可以參考下2015-07-07
部署和發(fā)布PHP網(wǎng)站到IIS服務(wù)器的全過程
這篇文章主要介紹了如何在IIS服務(wù)器上部署PHP網(wǎng)站,PHP的優(yōu)勢(shì)在于易學(xué)易用、開源免費(fèi)、跨平臺(tái)性、強(qiáng)大社區(qū)支持、與MySQL的良好集成、豐富的框架和庫(kù)、安全性以及高效的服務(wù)器端處理能力,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2025-02-02
PHP中Restful api 錯(cuò)誤提示返回值實(shí)現(xiàn)思路
REST是Representational State Transfer的縮寫,翻譯為“表現(xiàn)層狀態(tài)轉(zhuǎn)化”。表現(xiàn)層其實(shí)就是資源,因此可以理解為“資源狀態(tài)轉(zhuǎn)化”。接下來(lái)通過本文給大家介紹Restful api 錯(cuò)誤提示返回值實(shí)現(xiàn)思路,感興趣的朋友一起學(xué)習(xí)吧2016-04-04
微信支付開發(fā)動(dòng)態(tài)鏈接Native支付
本篇文章主要介紹微信支付下的基于動(dòng)態(tài)鏈接二維碼的Native支付實(shí)現(xiàn)流程,希望能給開發(fā)微信支付的小伙伴提供幫助2016-07-07

