基于Web共享软件加密方案和对策.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Web共享软件加密方案和对策

基于Web共享软件加密方案和对策   摘要:随着互联网的普及,共享软件得到了快速的传播,但盗版和解密技术也一直困扰着共享软件的发展。本文对基于Web的共享软件加密和解密技术进行探讨,并提出软件加密方案和应对破解的策略。   关键词:Web;共享软件;注册;加密;破解   中图分类号:TP309文献标识码:B文章编号:1673-8454(2011)15-0064-03      互联网的出现极大地促进了共享软件的快速传播和迅猛发展。而开发一套好的共享软件,软件开发商要投入较大的资金,软件作者往往要付出许多心血,如果软件很容易被他人破解、盗用,不但软件开发者应有的权益得不到保障,而且还会极大地打击软件作者开发、维护、升级软件的热情和动力。软件加密是软件开发者必须要面对的问题。软件加密的目的就是为了防盗版、防解密,保护软件的知识产权,维护软件开发者的利益;同时,软件保护也是在维护软件使用者的权益。   目前,软件加密的方式大致包括:磁盘保护、软件加壳、设置软件注册、密码保护、软件狗、光盘加密(CD KEY)、逻辑炸弹、客户端和服务器端加密、License保护、Keyfile加密方式等。   基于Web的共享软件与大型商业软件有较大的区别,大型商业软件一般是面向特定的企业、行业或领域,商业软件通常不能随意下载,不能试用。而“先试用后付费”的共享软件是面向大众的、开放的、可以通过网络随意下载和免费试用的软件。因此,共享软件在加密方式上,通过软件狗、磁盘、光盘等硬件加密不现实,有碍于共享软件的传播、推广和销售。   基于Web的共享软件,90%以上都是通过“设置软件注册”这种方式来进行保护的。因此,我们通常把共享软件限制取消或合法化的过程,称之为“软件注册”。共享软件的注册过程一般都是:用户先行下载、安装并试用软件;试用满意后与开发商联系,并支付一定的注册费,同时要将在用户计算机上产生的软件机器码或用户身份信息提供给软件开发商;软件开发商将根据用户提供的机器码或身份信息计算出一个(组)注册码,并将计算出的注册码告诉用户;用户得到这个注册码后,按照软件要求在软件中依次输入注册信息,其注册信息的合法性由软件验证;注册成功后,软件就会取消掉本身的各种限制,变成合法的正式软件。共享软件的这种加密方式实现起来比较简单,软件作者不需要增加其他成本,用户下载、使用、购买也非常方便。因此,采用设置软件注册,是共享软件的主要加密手段,这种方式对保障软件开发者、使用者的合法权益,起到了一定的积极作用。   但是,众多共享软件的破解案例表明,软件加密仅仅通过“设置软件注册”是远远不够的。一款保护成功的共享软件必须是设置软件注册、逻辑炸弹、软件加壳、实时监控等多种软件加密技术的混合体。   实践证明,研究软件的解密过程有利于软件的加密。软件加密的过程,往往是针对软件解密的方式、方法进行的。通常是先有解密,然后才有加密。当然,也有很多加密手段,并不是源于解密技术,而是软件作者奇思妙想的结果。   笔者研究、参考了众多网络高手撰写的加解密经验介绍,并结合自己开发的几款软件的加密、被解密、再加密的实践过程,和大家谈谈基于Web的共享软件加密方案和对策。这些方案和对策可操作性和实用性较强,不易被破解,非常适合广大共享软件的作者学习和掌握,也适用于商业软件的加密处理。本文不谈技术,只谈软件的加密方案和应对破解的对策。   一、设置注册码   在《VB下的共享软件注册技术》[1]一文中,笔者通过下面的语句,在程序中设置注册码,并由此完成注册过程:   ……   If zcm$ = abc123 Then   ……   其中的“abc123”就是注册码。但这种“显式”的“明码”注册码,极容易被破解;而且无法做到一机一用,也就是说,即使不破解,只要有一个人注册后将注册码公布到网上,其他人在网上一搜,找到这个注册码后,就可以成功地注册自己下载的共享软件。因此,这样设置软件注册,软件保护形同虚设。不过,目前网上仍有很多软件,包括一些大型软件都是这样做的。   这里,我们要求设置软件注册:第一,编写程序时,不能采用“明码”注册码,要将“明码”注册码通过建立较复杂的函数或算法换算(推荐后者)变成“隐码”,注册校验中,再通过逆函数或逆算法进行还原;第二,进行硬件绑定,也就是将共享软件与计算机绑定,增加“机器码”。由于计算机网卡序列号或硬盘序列号①的唯一性,可以将“机器码”与计算机的网卡序列号或硬盘序列号等硬件信息相结合、相关联,这也保证了不同计算机对应的“机器码”不相同。注意,这些硬件信息与注册码的关联,也不能是简单的、原原本本的信息展示,还要通过一定程度的复杂运算或数值转换,甚至只是截取其中的一部分进行转换得出。于是,我们将注册码由固定不变的变成可

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档