關於PHP代碼安全

PHP代碼可以文本查看,那麼如果我虛擬機,是不是所有可以登錄這臺機器且有權限訪問我虛擬目錄的人都可以拿走我的代碼,起碼是可能的。

查了下zend gard可以用來加密代碼,服務器要有zend optim組件就能運行加密的PHP代碼。


我比較關心性能損失。回家再研究吧。先mark出來


補充1:

http://www.zend.com/en/products/guard/

官方宣稱Zend Guard支持PHP 5.3

Zend Guard,市場上被接受最廣泛的PHP編碼和模糊處理產品,保護你的應用程序不受未授權使用和逆向引擎的威脅。

預防逆向引擎和未授權的修改

保護你的代碼不被非授權使用

Zend Optimizer和Zend Guard Loader----對Zend Guard免費的運行時解碼。因爲軟件運營商用PHP寫了很多商業應用程序,保護他們的智力財產(所有努力工作的結果)是非常重要的。對於很多軟件提供評估版本下載,確定用戶是發佈安全是一個很複雜的任務,無論對於免費,評估,還是商業賣家來說。

Zend Guard(以前的Zend編碼)通過編碼和模糊處理來保護你的應用程序不被逆向工程和未授權定製。它通過提供組合授權支持來增強保護未授權使用和重新發布。這個組合功能消除了軟件發佈的擔心。

市場上被接受最廣的PHP編碼和模糊處理。已有7年曆史。

Zend專業開發團隊使它是市場上最溫穩定和魯棒的編碼

和Zend Studio流水線集成

僅有的提供PHP4,5面向對象編程保護的產品

通過編碼和模糊處理預防逆向工程

你努力工作開發出代碼。現在你需要保護他。Zend Guard的強大編碼和模糊處理技術防止你的代碼被逆向工程,安全侵犯和未授權修改。

編碼是一個將PHP源碼轉換到機器可讀的中間碼的過程。這個格式很難被人閱讀並轉換回源代碼。他的結果是保護你的代碼隨便被人讀。它意味着如果有人獲取的登錄你服務器的密碼。他們也不能把他們用作其他目的。

模糊處理是一個故意把逆向代碼或者源代碼變得非常難讀的過程。模糊處理被設計來管理未授權訪問源代碼的風險。這個風險包括丟失智力財富,易於探測應喲南寧歌程序缺陷,經濟損失(在應用程序被逆向工程,修改繞過授權機制,重新編譯之後)。儘管計算機軟件逆向工程一直存在,這一點仍然很重要對於像PHP這樣的基於動態處理的(而不是在部署之前已經被編譯爲機器語言)腳本語言計算環境。

保護你的PHP代碼不被未授權使用

Zend Guard授權功能允許基於軟件供應商爲他們的商業PHP程序創建各種各樣的授權策略。產品支持絕大多數常規的授權使用模型,比如併發用戶,時間限制,網段,或者服務器描述授權。這些功能允許供應商通過預防非授權使用來最大化他們的收入。


 vendors:供應商

revenue:收入

encoding and obfuscation:編碼和模糊處理

evaluation copies:評估版本

complicated:複雜的


總結:如果是轉換成中間碼,那麼性能應該不會有損失,反而會提高。回頭再補充吧,有待研究。


2.上面做到了代碼本身安全,除此之外,還要解決參數安全

我目前的思路就是,將靜態頁面與服務器代碼完全分離,php直接受相應提供應有的數據。

比如說打開index.html,這本身是一個靜態頁面,客戶端瀏覽器在加載完成之後,用ajax和服務器代碼通信區的數據,然後填充。

而服務器我用一個dispatch程序去處理這一切,dispatch通過服務號來分發服務,他實現了第一層參數檢查,即服務號。

而他分發功能之後的程序,則複雜具體參數檢查。

但是關於參數檢查,還是挺複雜的,畢竟客戶端傳上來的什麼都有,圖片,字符串,xml或者json對象,這個問題還是得實驗纔有新的想法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章