WTF Obfuscator BETA漢化版(.net混淆器),.NET Obfuscator 只是迷惑了表面的分析者,而保持了機器編碼層的一致性。軟件 Obfuscator 使用混淆代碼來挫敗分析者的同時不破壞程序的執(zhí)行。為了闡明 Obfuscator 的工作原理,我們可以以廚師為參考。廚師可以在烹調(diào)一道由 7 道菜肴組成大餐的時候允許顧客一道一道地來品嘗。然而,廚師作為一個 Obfuscator 完全可以把所有的菜肴混合到一塊。合成的混合物會掩蓋每一道菜的味道,使得顧客無法分辯,盡管如此卻提供了相同的營養(yǎng)價值。
.NET Obfuscator 會影響性能嗎?
軟件 Obfuscators 并不會降低執(zhí)行性能。實際上,成熟的 .NET Obfuscator 可以通過壓縮應(yīng)用程序來提高性能。Obfuscators 使用 overload induction (重載感知)的技術(shù)重用標(biāo)志符的名稱,它的另一個特點就是可以刪除沒有使用到的類、方法、局部變量和設(shè)計時產(chǎn)生的元數(shù)據(jù)。這使得應(yīng)用程序的縮小率可以達到 20-40% 甚至更多。
精簡后的程序通常會加載地更快并使用更少的內(nèi)存。此外,因為程序小了,網(wǎng)絡(luò)分布式組件程序?qū)行省?/p>
哪些.NET程序需要被模糊化?
以下幾種情況下,.NET程序應(yīng)該使用 Obfuscator :
* 源代碼不是公開的;
* 代碼中存在個人敏感信息,比如 SQL 語句,用戶名和密碼;
* 系統(tǒng)性能,帶寬或者程序大小成為限制因素;
也就是說如果程序大小不是問題,源代碼是公開的或者是開源軟件,就不需要使用 Obfuscator了。對企業(yè)開發(fā)者來說,如果設(shè)定一個規(guī)范,明確使用 Obfuscator 作為標(biāo)準(zhǔn)的構(gòu)建工具,而不是把精力放在針對單個具體的程序上,他們將獲益良多。因為這做避免了對每個開發(fā)項目都花費時間去做重復(fù)的工作。