原創(chuàng)|其它|編輯:郝浩|2012-11-27 10:33:26.000|閱讀 1444 次
概述:利用.NET Reactor進行軟件保護,可以大大增強軟件保護的強度。.NET Reactor利用多種方法來防止你的應用程序被反編譯,其核心原理是將你的.NET程序集轉(zhuǎn)化為其他工具不能反編譯的進程。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
中國原創(chuàng)軟件企業(yè)正在夾縫中生存,除了面臨國內(nèi)外軟件巨頭的擠壓之外,同時面臨著盜版對軟件發(fā)展的巨大沖擊。并且由于中國軟件企業(yè)的發(fā)展正由之前的軟件模仿向創(chuàng)新、創(chuàng)意發(fā)展。因此軟件保護已成為中國軟件企業(yè)乃至硬件設備商的重中之重。
當.Net編譯器編譯你的c#或vb.net程序時, 程序員的程序并不會編譯為原生的機器語言,而是編譯成為了通用中間語言指令(CIL)。 CIL是介于源代碼和本地代碼的中間的語言,當你的程序運行,不是直接執(zhí)行的機器代碼,而是由.NET框架解釋執(zhí)行。 正因為如此,你的應用程序或庫的源代碼,可以很容易地復制。 CIL很容易被反編譯,代碼混淆如利用NET的反射(的工具www.red-gate.com/products/reflector/),可以容易的將CIL反編譯為c#或vb.net源代碼! 顯然,這種分發(fā)給最終用戶的商業(yè)軟件,很容易被你的競爭對手和不法分子所利用。微軟公司提供一個低級的解決方案, 就是使用“混淆”,這個工具集成在Visual Studio中。當然還有更加強大的混淆工具,如Dotfuscator。
但僅僅簡單的代碼混淆足夠嗎?簡單的混淆使你的源代碼更加難以閱讀(但是還能讀,只不過多費點時間)。 混淆工程將有意義的類命,方法名,屬性名混淆為無意義的變代碼混淆量名字。 例如,它可能會將計數(shù)器變量counter混淆為“A4DF3CV89G”。 混淆的名稱讓程序員很難記住,但是并不影響NET Framework解釋器。 不難發(fā)現(xiàn)在,這種方法并沒有在源代碼級別上做任何事情,所以它并不能保護你的源代碼。 .NET Reactor功能不僅涵蓋.NET的混淆器做的一切,但在更多的層面來保護您的知識產(chǎn)權(quán),拒絕任何想偷盜你源代碼的人得到它。訪問到你的源代碼,即使是那些誰偷你們的辛勤工作。 目前還沒有任何方式能夠破解的.NET Reactor混淆后的源代碼混淆代碼, 這是簡單混淆不可能做到的。
利用多種方法來防止你的應用程序被反編譯,其核心原理是將你的.NET程序集轉(zhuǎn)化為其他工具不能反編譯的進程。.NET Reactor可以產(chǎn)生一個不能夠被CIL理解文件,從而在黑客和你的程序集之間構(gòu)建了一道原生的“代碼墻”。這樣使得你的程序集在運行態(tài)和設計態(tài)的時候才被還原(也就是說任何工具都無法訪問時),任何工具都不能反編譯 .NET Reacto代碼混淆r保護的程序集。.NET Reactor在黑客和你的程序集之間構(gòu)建了一道原生的“代碼墻”,這種叫做NecroBit 的技術(shù)是.NET Reactor特有的。 這種技術(shù)至2004年誕生以來,還從來沒有被任何人破解過。 這些技術(shù)重新構(gòu)造了你的源代碼,使得破解更加的困難重重。實踐證明,NecroBit是迄今為止最有效的保護。NET程序集的手段。 除了行業(yè)領(lǐng)先的知識產(chǎn)權(quán)保護手段外,.NET Reactor還提供在試用版中加入多種功能鎖,從而讓用戶更加愿意購買正版,讓你的軟件為你創(chuàng)造更多的財富。
保護.NET應用程序和.NET庫文件 CIL代碼與本地代碼替換執(zhí)行額外的保護層,包括混淆,程序集合并,在試用版中加入多種功能鎖, 從而讓用戶更加愿意購買正版。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都控件