.NET混淆器 Dotfuscator使用教程:保護你的應用之檢查受保護的程序集

Dotfuscator是一款.NET混淆器和壓縮器,防止你的應用程序被反編譯。

本篇文章將繼續上一篇文章與大家分享保護應用程序的第二個部分 - 檢查受保護的程序集。

將Dotfuscator集成到項目中後,你應該驗證集成後項目是否正常運行。你可能也很想知道Dotfuscator默認提供的保護是什麼樣的。

回答這些問題的最簡單方法是在項目的程序集上使用逆向工程工具,將它們反編譯回高級C#代碼。你可以反編譯本地構建的程序集(例如,在bin\Release中)以及應用程序安裝程序設置的程序集。 有關如何反編譯程序集的完整詳細信息,請參閱反編譯

例如,考慮在集成Dotfuscator之前和之後對GettingStarted示例應用程序中的方法進行反編譯:

無保護

gettingstarted-ilspy-no-protection

默認保護(摘錄)

gettingstarted-ilspy-default-protection

我們可以清楚地理解未受保護的代碼的意思,能看到它的名稱,就像我們有源代碼一樣。但是,通過Dotfuscator的默認保護,簡單的for循環已被Control Flow混淆轉換爲混亂的switchgoto語句。 另外,由於重命名混淆,方法的名稱及其定義類型已被無意義的名稱替換。

請注意,這只是Dotfuscator提供的默認保護。通過一些額外的配置,Dotfuscator可以在處理程序集時使反編譯工具徹底崩潰:

默認保護(摘錄)

gettingstarted-ilspy-default-protection

增強保護

gettingstarted-ilspy-improved-protection

Dotfuscator還可以將Checks嵌入你的應用程序,該應用程序可在運行時檢測並響應未經授權的使用。例如,調試檢查可以檢測調試器是否附加到你的生產應用程序,如果是,則終止應用程序。

有關配置這些以及其他更強大的保護形式的詳細信息,請參閱增強保護(後續會與大家分享)。

下載Dotfuscator最新試用版


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