VB 软件防破解设计技术初探(二).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文档。上传文档
查看更多
【原创】VB 共享软件防破解设计技术初探(二) 标 题: 【原创】VB 共享软件防破解设计技术初探(二) 作 者: 爱琴海 时 间: 2008-09-07,02:22:51 链 接: /showthread.php?t=72204 VB?共享软件防破解设计技术初探(二) ×××××××××××××××××××××××××××××××××××××××××××××× 其他文章快速链接: VB?共享软件防破解设计技术初探(一) /showthread.php?t=72050 VB?共享软件防破解设计技术初探(三) /showthread.php?t=72489 ×××××××××××××××××××××××××××××××××××××××××××××× 作者:爱琴海[SCG]?2008/09/06?(转载请保留该信息) ??上个篇我粗略的讲了以下几个内容: 1、??文件完整性,防止被非法修改 2、??运行时的校验,防止被LOADER 3、??反调试,防止动态跟踪和挂接 4、??防静态反汇编分析 5、??注册码系统(算法部分,核心内容) 6、??加壳防脱壳 7、??隐蔽性设计 8、??另辟蹊径 列表在这里是为了提醒初学VB发布共享软件的朋友,在设计VB防破解的时候,不要出现“水桶效应”,也就是说,设计如水桶,任何一个角落缺失都将导致无法全部盛满水。 ??而这个水桶的捆圈恐怕就是保护文件完整性,防止修改了。 ??周末了,今天有点时间。赶快写好,等下吃晚饭,练练琴,然后陪陪女朋友。 ??接下去,我们将开始具体至微的讲解第1、2两个内容,剩下的老规矩:日后有空,有时间,有精力,有能力的话接着写。 1、????文件完整性,可采用CRC32或者MD5或者哈希算法等,计算出文件的加密值,在适当的时候进行对比,判断文件被修改与否。当然那也可以加猛壳来防止文件非法修改。还有简单点的检查文件最后修改时间,看看是否是你自己设置好的时间,如果不是,则很有可能被修改过;也可以检测文件大小,往往压缩壳被脱掉后,文件的大小会增加;保护壳被脱掉后,文件大小会变小,我们可以根据这个设置好临界值来检测有没有被脱壳。常用的还有故意设计好关于算法方面的陷阱,如果是破解者会主动掉进你的陷阱,而事实上,这个跳转除非爆破,不然在算法上是永远也无法到达的,这样就检出破解者在修改程序流程。你可以无声无息的程序死掉,不要直接退出,不然会被追踪到退出函数。 还有内存镜像校验,是为了防止普通的修改内存和普通断点问题。 我们就具体演示3种VB程序的完整性校验设计。 第一种是VB的CRC32自校验设计,包含过程,代码和所有工程文件及演示; 第二种是VB程序的时间检测法则,包括过程,代码和所有工程文件及演示; 第三种是VB程序的文件大小检测法则,包括过程,代码和所有工程文件及演示。 其实还有些检测的办法,但是原理跟我们即将大曝光的三种办法差不多,都是衍生的吧。 第二章??第一讲 VB的CRC32自校验设计 来来来…大家跟我一起做运动,抖抖手啊,抖抖脚啊,做做深呼吸,本讲将会有点长,力求做到简单明了,容易明白,学完马上上手,学会应用的要求,我会具体点讲,不会像某些高人敝帚自珍,当然如果有错误的地方还请大家多多帮忙纠正,谢谢 首先来简单复习下何谓CRC32 CRC校验实用程序库?在数据存储和数据通讯领域,为了保证数据的正确,就不得不采用检错的手段。在诸多检错手段中,CRC是最著名的一种。CRC的全称是循环冗余校验,其特点是:检错能力极强,开销小,易于用编码器及检测电路实现。从其检错能力来看,它所不能发现的错误的几率仅为0.0047%以下。 有查表和计算法,我们可以在程序中自动生成码表来查表计算,方便和快速 为了快速带过原理笔墨,节省点时间吃饭,我把网路上的一篇介绍《探究CRC32算法实现原理》引述过来,原文地址: /course/6_system...1/134331.html# 以下是引用部分—————————————————————————————— 基于不重造轮子的原则,本文尽量不涉及网络上遍地都是的资料。 Whats?CRC?? 简而言之,CRC是一个数值。该数值被用于校验数据的正确性。CRC数值简单地说就是通过让你需要做 处理的数据除以一个常数而得到的余数。当你得到这个数值后你可以将这个数值附加到你的数据后, 当数据被传送到其他地方后,取出原始数据(可能在传送过程中被破坏)与附加的CRC数值,然后将这里 的原始数据除以之前那个常数(约定好的)然后得到新的CRC值。比较两个CRC值是否相等即可确认你的 数据是否在传送过程中出现错误。 那么,如何让你的数据除以一个常数?方法是对你的数据进行必要的编码处理,逐字节处理成数字

文档评论(0)

精华文档888 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档