.net程式混淆、安全、保護、加密

來源:互聯網
上載者:User
 

原文連結:http://www.svnhost.cn/Article/Detail-173.shtml

 

反編譯工具:.net 反編譯工具reflector 工具 .NET Reflector外掛程式FileDisassembler

大家都知道.net開發的軟體,無論WebForm項目還是WinForm項目,發布的時候都是編譯成dll或者exe檔案。但是我們經常會無論是出於學習還是其他什麼目的,想查看軟體原始碼和解除軟體的某些限制。這時反編譯技術就派上了用場。上面提到的reflector就是這樣一個工具。

他可以把dll或者exe等目標檔案反編譯成原始碼。如果目標檔案沒有經過混淆、加密等處理,往往反編譯得到的原始碼跟軟體編譯前的原始碼幾乎一模一樣。這樣就為程式的著作權、安全等帶來嚴重的隱患。

另外還有個工具ILDASM可以把目標檔案反編譯成IL原始碼。然後我們就可以修改IL原始碼,然後再使用ILASM編譯這個IL原始碼,就可以得到一個修改過的目標檔案,這個目標檔案解除了程式的某些限制,例如時間限制、使用次數限制。

那麼我們如何保護我們的程式不被修改呢?

這兩天實際操作了下編譯、反編譯、混淆。總結如下:

1.      項目中,增加強簽名。具體操作方法:按右鍵項目,選擇屬性,找到簽名選項卡,建立簽名檔案,輸入密碼即可。

2.      項目發布以後,對dll、exe檔案進行混淆,混淆工具:Dotfuscator Professional Edition 4.2 ,如果是混淆web項目,請排除web專案檔的重新命名功能。免得aspx檔案無法引用dll程式集。同理HttpModule一類的引用也要注意。

3.      另外如果還不放心,可以對混淆過的檔案進行加殼。加殼工具: MaxtoCode.Professional.2007.v3.21-Lz0.rar 該工具我沒有親自試用過,有興趣的自己研究。

通過以上三層保護,應該可以對付一般的破解菜鳥了。本來文章都沒什麼可說的,但是想想還是介紹一下,對沒有接觸混淆的網友應該能有協助。免得走彎路。

我就走了很多彎路。找Dotfuscator Professional Edition 4.3版找了好久,用其他的混淆軟體也摸索了許久,這裡不得不提到一個軟體:Xenocode Postbuild,最新版本是2008,該軟體是非常出名的混淆器。但是我沒有找到好用的下載,有該軟體的朋友請發給我。還有NET Reactor(帶註冊檔案)也是一個混淆器,可以混淆.net 2.0以前的版本。

總結:以上提到的兩個方法“強簽名”和“Dotfuscator Professional Edition 4.2”混淆是簡單易用的保護程式集的辦法。推薦使用。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.