资源描述:
《net下软件代码保护机制的研究》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第29卷第4期长春工业大学学报(自然科学版)Vol129,No.42008年8月JournalofChangchunUniversityofTechnology(NaturalScienceEdition)Aug12008.NET下软件代码保护机制的研究1123杨怀雷,周喜龙,刘伟,梁贺(1.长春工业大学计算机科学与工程学院,吉林长春130012;2.河北司法警官职业学院,河北邯郸056000;3.吉林省通信公司长春分公司,吉林长春130051)摘要:分析了当前代码保护的主要技术以及它们的优缺点,提出了在实际工作中切实可行的方案,并进一步指出了.NET下代码保护的关键技术和发展趋
2、势。关键词:代码保护;反编译;代码混淆;逆向工程中图分类号:TP309文献标识码:A文章编号:167421374(2008)0420428205Codeprotectionfor.NETsoftware1123YANGHuai2lei,ZHOUXi2long,LIUWei,LIANGHe(1.SchoolofComputerScience&Engineering,ChangchunUniversityofTechnology,Changchun130012,China;2.JudicialOfficersVocationalCollegesofHebei,Handan056000
3、,China;3.ChangchunBranch,JilinCommunicationCROP,Changchun130051,China)Abstract:Thispaperanalyzesthecurrentcode2protectiontechnologiesandtheiradvantagesanddisadvantages,andputsforwardafeasibleprogram.Itgivesthekeypointsforthe.NETcodeprotectionanditsprospective.Keywords:codeprotection;decompila
4、tion;codeobfuscation;reverseengineering.足够的时间、知识和决心,可以说任何软件都是可0引言[2]以破解的,但是,如果破解的成本大于其软件的随着.NET时代的到来,越来越多的软件使购买成本的话,破解也就变得毫无意义了,破解者用.NET技术,它简化了第三代因特网的高分布便会自动放弃,代码的保护也就达到了目的。当式环境下的应用程序开发,基于开放互联网标准前,.NET代码保护的研究工作主要集中在代码[3]和协议之上,有效地避免了“DLL地狱”,某种程混淆方面,但是由于代码混淆本身固有的缺点,度上使软件成了“绿色”版本,它通过编译生成了决定了其保护的
5、强度不高。文中综合介绍了目前与平台无关的中间代码,从而实现了跨平台运行。各种代码的保护方法,比较了它们的优缺点,并根和过去Win32下程序开发相比,.NET带来据实践经验,提出了切实可行的方案和代码保护[1]了时代的变革,但是同时它也带来了一个比过的研究趋势。去更迫切的问题,即软件代码的保护。对于代码1代码保护的方法的攻击主要有3种方式,即软件盗版、逆向工程、代码篡改。由于软件盗版和正版用户的保护意识1.1Win32下代码保护的方法有很大关系,不在文中的讨论范围,文中所讨论内Win32下代码的保护方法是比较成熟的。保容是如何有效阻止逆向工程和代码篡改。如果有护方法有很多种,软件可
6、以实现的保护包括:反静收稿日期:2008204210作者简介:杨怀雷(1982-),男,汉族,河北邯郸人,长春工业大学硕士研究生,主要从事计算机网络安全研究,E2mail:YHL6538628@163.com.©1994-2009ChinaAcademicJournalElectronicPublishingHouse.Allrightsreserved.http://www.cnki.net第4期杨怀雷,等:.NET下软件代码保护机制的研究429态分析、反动态分析、添加花指令、加壳、反跟踪技即可得到如下代码:[4]术等,用硬件实现的,如加密狗等。此时,通用privatestat
7、icvoidMain()的反编译软件有OllyDbg,TRW2000[5],针对{Delphi的有Dede,像加壳这样的代码保护机制使Console.WriteLine("helloworld");}这些工具无法正常地反编译目标文件,从而达到可见,.NET程序的编译方法使其具备跨平保护的目的。但是不能否认相应的破解工具很台运行的优势,但这也使它的代码很不安全,逆向多,而且极大地方便了破解。工程或者代码篡改变得非常简单。为了更好地保1.2.NET下代码保护的方法护公司或个人的知识产