Dotfuscator是一款.NET混淆器和壓縮器,防止你的應用程序被反編譯。
啓用字符串加密混淆
字符串加密混淆加密程序集方法中的字符串文字,防止攻擊者使用搜索工具十分容易地找到敏感數據或更好地瞭解代碼的哪些部分執行某些操作。
默認情況下禁用字符串加密。在 Feature -> Settings -> Options,可以通過將 Disable String Encryption 設置爲 No,來啓用字符串加密。
字符串加密混淆僅適用於專門配置爲包含在此保護方法中的字符串文字。你可以加密敏感字符串,也可避免在運行時必須解密非敏感字符串的性能影響。
在 String Encryption 選項卡(其中只有一個子選項卡:Include)下,Check below to include specific items 樹視圖中選擇要保護的方法。
你可以從檢查程序集的節點開始,以保護程序集的所有方法中的字符串文字。如果想要自己設置,你可以展開樹節點並選擇要包含在字符串加密中的各個名稱空間,類型和方法。
注意:聲明爲常量(const)字段的字符串在使用時會內聯,因此對引用這些字段的方法啓用字符串加密也會導致這些用法被加密。但是,常量字段本身將保持未加密狀態,所以你應該啓用 Removal(刪除),將這些不需要的未加密值從程序集中刪除。
啓用Removal
Dotfuscator可以從程序集中刪除未使用的代碼和元數據,從而最大限度地減少攻擊的區域。
默認情況下Removal是禁用的。在 Feature -> Settings -> Options,可以通過將 Disable Removal 設置爲 No,來啓用Removal。
檢查受保護的程序集
在Config Editor中保存更改並在Visual Studio中構建應用程序後,你可以反編譯新保護的程序集,查看更改Dotfuscator配置文件會如何影響保護。有關如何執行此操作的詳細信息,請參閱反編譯。
例如,在增強Dotfuscator保護之前和之後對 GettingStarted 示例應用程序中的方法進行反編譯:
默認保護(摘錄)
增強保護
因爲進行了加密混淆,反編譯工具的作用會被削弱。你的應用程序會比之前更安全。
好了,關於Dotfuscator的加強保護系列教程就到此結束,希望能幫到你~