Web虎-b/s源代码加密,软件防盗版保护系统

站内搜索:

热搜: asp.net加密 php加密  

Java加密 ...
  选择Web虎的20个理由   免费赠送Web虎机器码版-网站授权保护系统   免费试用打包加密版Web虎   50套可免费打激光logo
  首页 | php加密 | asp.net加密 | flash保护 | Web虎网站(课件)保护 | 成功案例 | 公司动态 | 业界关注 | 客服| 下载| 关于| 付款方式| 注册
当前位置:业界关注

关于软件加密的错误观念


时间:2011年6月27日  来源:互联网转载  关联产品/方案:网站授权保护

 就我们多年从事软件加密的经验来看,大多数的开发商在设计和实现自己的软件保护过程中对软件加密理解上存在某些偏差所导致,我们在这里分析一些比较典型的问题,以便大家将来在实现加密的时候不要犯同样的错误。

1、加密是专业公司的事,只要选择好加密产品就行了
  这个观点可以认为是一种对软件加密比较片面的理解。所有从事加密行业的公司所提供的产品基本都属于需要二次开发的类型,加密公司只能够保证它所完成部分的安全性,而开发商如何有效的使用加密公司所提供的功能来完成加密要求,很大一部分取决于开发商自身。
  虽然有些加密行业的公司可能会提供一些比较典型的解决方案,开发商基本可以照此实施,但这些典型方案会产生相对固定的加密模式,解密者分析起来因而会相对容易很多。如果固定的加密方案能够解决盗版问题的话,加密公司直接提供方案就好了,而不必要求开发商进行二次开发。

2、加密等程序都编好以后,让一个人搞两天就行了
  这种思想在我们碰到过的很多软件开发商那里都感受到,在项目测试基本完成后, 只抽出1个人专门给软件搞两天加密工作。但编程人员原来就没有太多的加密经验,而且时间安排又非常紧,往往凑合一下就发出去了,这样的加密效果可想而知。 现在的解密者,大多都是“身经百战”的高手,即使是殚精竭虑设计出来的加密也不见得能挡得住,何况这种匆匆忙忙设计出来的加密,效果就更差了。
  软件加密如果想要做得好,不一定非要在项目初期就考虑,但起码要有个相关的加密设计方案才行。从上文的软件保护的应用模式来说,要根据自己开发的软件类型来设计相应的保护方式是最好的。

3、负责加密的人越少越好
  很多软件公司认为软件的加密应该属于公司的核心机密领域,整个加密编制和处理了解的人越少越安全。事 实并非如此。我们都知道加密属于百密一疏的问题,也许加密者很多地方都考虑得比较周全,但若有一个地方没有考虑周到,就有可能被解密者作为突破点,把整个 软件破解掉。如果多个人参加得话,即使每个人都会有一定疏漏的地方,但却有取长补短的效果。
  对于一个软件公司来说,完全有能力让多个人来搞加密处理。如果担心安全性出问题的话,可以考虑让每个人只搞一个加密点,再由专门的人来汇总这些加密点。这样完整的加密还是掌握在少数人的手中。

4、加密用外壳型的就好了,强度高,加密简单
  这也是很多软件开发商所采用的方法,目前在网络上有很多免费的外壳程序可以下载, 而且很多加密锁厂家也都支持外壳型加密,直接对可执行文件进行保护。这种方式的保护使用起来非常容易,加上这些外壳都具有专门的反跟踪、反调试的功能,看 起来非常完美。但外壳加密有其利就有其弊,外壳加密正因为是通用的加密方法,因而也就有通用的解密方法。留心一下就可以发现,网络上很多名气很大的外壳加 密程序,譬如: ASProtect, PELock...都有通用的解密工具。
  也许你会说,那就找一些名气不那么大的外壳就好了,但往往那些不很流行的外壳工具通常都会有这样或那样的兼容性问题,譬如程序在 Windows9x 下面可能没有问题,但到了 Windows 2000 上就会出错。
  另外,随着各种外壳程序的出现,通用的解外壳工具也出现了。这些工具并不针对哪种特别的外壳程序,但能够采用某种特别的方法脱掉大部分外壳加密程序的壳,譬如: ProcDump...。外壳加密不再是软件保护的捷径了。
  以上我们列举的问题并不是说外壳加密没有用了,我们想说的是最好不要把外壳加密作为软件保护的唯一手段。作为一种辅助手段来说,如果配合开发者精心设计的加密方案,就可能会发挥外壳加密的最大长处。

5、采用国际标准加密算法加密的程序一定很难破解
  对于软件加密的概念理解不很清楚的人,往往会有这样的想法,他们认为好的加密算法就会带来好的软件保护效果。实际上这完全是两个不同的概念。象 DES、RSA 等国际标准加密算法的对象是数据,对于纯数据保护来说,好的加密算法代表一切,但对于软件来说则不然。
   软件是运行在客户计算机上面的程序,这个程序对于客户来说是完全公开的。如果能让用户在他的计算机上正确无误的运行软件,所有的解密、判别过程都必须在 程序中出现。即使破解者看不懂开发商所使用的加密算法,但若把解密后的比较过程改写为强制成功的话,一样可以破解开发商的软件。
  所以,对于软 件保护来说,防止破解的有效方法是"隐藏算法"而不是"使用高难度算法",当然在算法能够很好隐藏的前提下使用国际标准算法会比自己编的算法效果更好些。 既然算法能够被隐藏,那么最好也同时把算法进行某些变形处理,让算法和标准算法的处理结果有一些差异性,这样才能实现更好的隐藏效果。

6、编译出来的程序一定比解释运行的程序难破解
  很多开发商会有这样的认知,完全是因为很多解释运行的程序有反编译工具的存在。 因为被解释的内容就是实际程序的二进制压缩编码,反编译工具能够一点不差的把它回复成原始的代码。正因为这个原因,大多数开发商都认为解释运行的程序在安 全性能上都很差,如果要搞加密的话一定要使用C/C++这样的编译类型的语言来开发。其实这个观点是不正确的。在当前市场上开发语言种类很多,并非所有的 解释型开发语言都有反编译器的存在。没有反编译器存在的解释运行类的开发语言所开发出来的程序在跟踪和破解上比编译类型的开发语言要困难得多,在加密上具 备了先天上的优势。
  这也是我们所提倡的一个观点,真正好的加密应该是无为而治,通过技术复杂度来实现安全。开发者不需要特别考虑软件加密的问题,但加密出来的软件却非常难破解。
   在软件技术极大丰富的今天,即使是最好的破解者也不可能掌握所有的技术。一个最蹩脚的 Lisp 编写程序的加密效果可能比一个最好的 C 编写程序的加密效果要好得多。因为 Lisp 这种比较冷僻的语言懂得的人很少,99%的解密者根本不知道如何分析一个编译 Lisp 语言编写出来的执行程序。这就是我想表达的一种思路,加深软件上的技术复杂度,往往比采用任何特别的反跟踪、反调试手段更为有效。

相关业界关注:
当前流行的一些软件保护技术(2011-10-28)

软件加密时保护软件著作权要注意避免的思路误区(2011-9-1)

谈谈软件保护方法的升级进化,(2011-8-25)

软件产品防盗版技术(2011-8-24)

软件加密锁编程技巧(2011-8-3)

深圳易用信息公司,一切以用户为中心

jar加密狗,php加密狗,ASP.NET加密狗,java加密狗,bs加密狗,asp加密狗,课件加密狗,flash加密狗,swf加密狗


地址:深圳市福田区深华科技园1栋6楼 | 邮编:518008 | 电话:0755-88865755,(0)138-2326-5258 | 传真:0755-83273525 | 电邮:leo-euse.cn
华东办:(0)186-5858-6527| 电邮:jacky-euse.cn | 关注咱们:
北京代理:中科神州(北京)信息技术有限公司|电话:(0)137-0124-0303|电邮:yubin_sinotech

  本网站版权归深圳市易用信息技术有限公司所有   |   粤ICP备09056668号-2  始自2003年


合作伙伴招募中:

上海,广州,杭州,宁波,南京,无锡,佛山,苏州,天津,成都,大连,济南,青岛,烟台,泉州,常州,东莞,武汉,沈阳,金华,南通,重庆,郑州,福州,温州,长沙,厦门,绍兴,西安,哈尔滨,合肥,珠海,包头,昆明,太原,湖州,汕头,惠州,广东,山东,江苏,浙江,河南,河北,辽宁,上海,四川,湖北,湖南,福建,北京,安徽,内蒙古,黑龙江,广西,陕西,吉林,天津,山西,江西,云南,重庆,新疆,贵州


友情连接: flash加密防盗版保护 seo工具 铁卷防泄密 纵横网络 软件项目交易网 深圳工作流系统 局域网管理软件 YCanPDF