前往Shuct.Net首页

Shudepb PB反编译专家长时间以来,为业内同类软件事实上的唯一选择.细节,彰显专业.态度,决定品质.

关于PBKILLER的搜索

再论 pb所写的软件如何防止破解? - chengg0769 来自四川,在东莞虚度十载 - 博客频道 - CSDN.NET chengg0769 来自四川,在东莞虚度十载 PB反编译_Powerbuilder DeCompiler_PB反编译器_PB混淆器_PB加密 目录视图 摘要视图 订阅 新年新气象------CSDN2014新版导航就要跟大家见面了 2014年1月微软MVP当选名单揭晓! 消灭0回答,赢下载分 “我的2013”年度征文活动火爆进行中! 专访何海涛:“不正经”程序员的进阶之路 再论 pb所写的软件如何防止破解? 2009-05-09 23:33 1455人阅读 评论(1) 收藏 举报 破解exe加密汇编application软件测试 之前有对这个问题讨论: http://blog.csdn.net/chengg0769/archive/2009/02/28/3944575.aspx 但是针对的是比较通用的想法。单就pb程序来说。主要是应对反编译软件的侵害。 depb(1.0版视乎很多bug,测试一个结构也无法反编译),PBKILLER,shudepb。因为pb采用vm执行,所以汇编和调试根本对pb写的程序威胁不是很严重。 粗略地说有这末几种保护方式: 1. machine code方式的单一exe文件编译。 这个用反编译软件测试,都只能看到变量申明,无法看到源代码。 如果你的程序会出现无法编译成一个exe的情况(基本无法编译,如果是软件很复杂的情况下),那你不妨把要害部分作在一个独立的比较小的可执行文件中,比如注册码验证,然后这个小的可执行文件生成一个外部文件,比如100K大小的二进制文件。随即马上调用主程序运行整个程序,而主程序将这个外部100K文件第一时间读入blob变量,然后删除外部100K文件。然后在主程序里有意无意地在很多地方引用这个blob中的数值对软件进行限制。 一般而言,除非是作者自己反编译自己的软件,所以一般破解者是无法真正完整(或者说不会有相应的专业知识和耐心)反编译的。可以这么认为,他们只能很容易偷窥到一些代码,但是你的代码写明要把一个数据检索的行数限制为100行,他也没有办法。应该他不可能反编译后再进行编译打包嘛!对不对。可以我们在【可以看到代码而无法修改代码并重新打包】这层意义上来防止他是可以的。试想,如果你在100个地方都做了手脚,他难道有那个耐心来弄个工具,达到什么什么效果? 所以总结一句就是,把关键的敏感代码放入machine cdoe的 单一exe编译文件,而在主程序里搞鬼,尽量搞得破解者莫名其妙。他不懂程序,他的难度就非常高。 2. 用pbni的方式编译敏感代码,然后转成pbd,一般反编译软件只能编译传统的pbd和dll,不能反出vc++编译后转过来的pbd。 3. 如果在一个工程里,一个全局的对象出现过多次,它会按lib的次序查找,所以这一点也可以拿来迷惑破解者。比如我对若干函数,甚至窗体生成多个拷贝对象,把测试版的放在前面,用单一的机器码程序来验证注册码,如果注册码OK,那我可以生成一个加密的文件,这个文件指示出lib的顺序。在主程序里设置这个顺序。假如说这个顺序是: 10001.pbd 10002.pbd 10003.pbd 当然我这个顺序列表是从加密的文件内取出的。因为破解者他用shudepb能看到代码,他也没法调试,毕竟软件反编译后很多错误。没有几天几夜是无法修改掉错误处的,所以我们可以认为他不具备调试的条件。而具体你的lib的顺序是怎么样的,他应该不清楚。 你的真正的pbd你可以动态从某个文件里创建出来。更增加了破解的难度。 你可以把所有pbd或者dll从一个包里解析出来,用一个独立的exe文件来执行这个任务,就是在主程序下生成多个假的pbd文件,然后随即在window系统目录或者其他path所指向的目录生出pbd,然后把这个清单通过主程序的parmlist传入,在主程序的application的open事件中设置库路劲。你可以一次性释放出几百个文件来。用完之后删除,下次启动再次生成。这样文件名可以随机和随意起名。静态反编译时,pj者无法确认你的正确的对象在哪里。pj者修改pbd文件也没有用。 鉴于目前PBKILLER和shudepb,最好在启动时创建上百个甚至上千个文件。。。等pj者去研究吧。 总之。很多编译型软件是很容易被破解掉的。其原因就是别人asm后跟踪了jxxp这样的汇编指令。而pb程序我认为只要足够地愚弄破解者。就能尽量拖延时间,保护好软件。让其破解的时间成本和难度增加,迷幻度增加是一个办法。 试想,如果一个房门,一把锁,想打开它,是可以很快速地想到办法,比较暴力的方法就是砸掉锁,或者砸掉门。而你如果采用足够迷惑的方法,让其根本不晓得门在哪里,或者设置若干假门,耽误他的时间,增加它的挫折度。我想也是一个好的方法。 4. 网络认证,把认证部分放在网络服务器上,认证完,下载一个加密文件下来。用其对程序的一些参数进行设置。当然有人会说破解者有相当的技术,他能怎么怎么样!但是他工程量绝不亚于重新开发10套软件的工作量嘛。他何苦呢? 更多 上一篇:别出心裁卖“天籁之音”赚千万(转) 下一篇:小型数据库运用软件中的dbms选型 查看评论 * 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场 核心技术类目 全部主题 Java VPN Android iOS ERP IE10 Eclipse CRM JavaScript Ubuntu NFC WAP jQuery 数据库 BI HTML5 Spring Apache Hadoop .NET API HTML SDK IIS Fedora XML LBS Unity Splashtop UML components Windows Mobile Rails QEMU KDE Cassandra CloudStack FTC coremail OPhone CouchBase 云计算 iOS6 Rackspace Web App SpringSide Maemo Compuware 大数据 aptech Perl Tornado Ruby Hibernate ThinkPHP Spark HBase Pure Solr Angular Cloud Foundry Redis Scala Django Bootstrap 个人资料 chengg0769 访问:515740次 积分:8551分 排名:第420名 原创:267篇 转载:211篇 译文:0篇 评论:348条 文章搜索 文章分类 PB反编译与加密(12) IOS和安卓(9) PB与数据库(9) 网络相关(1) 搜索相关(0) 闲话扯起耍(1) 其他语言(4) 文章存档 2013年12月(2)2013年11月(2)2013年09月(1)2013年02月(1)2012年11月(1)2012年09月(1)2012年08月(6)2012年07月(1)2012年05月(3)2012年03月(4)2011年12月(2)2011年11月(2)2011年10月(9)2011年09月(6)2011年08月(11)2011年07月(2)2011年06月(4)2011年04月(3)2010年12月(1)2010年10月(2)2010年09月(8)2010年08月(1)2010年07月(8)2010年06月(17)2010年05月(2)2010年04月(2)2010年03月(4)2010年01月(1)2009年09月(8)2009年08月(5)2009年07月(8)2009年06月(8)2009年05月(16)2009年03月(2)2009年02月(7)2008年12月(2)2008年11月(4)2008年10月(5)2008年08月(1)2008年07月(2)2008年01月(12)2007年12月(29)2007年11月(7)2007年10月(4)2007年09月(20)2007年08月(55)2007年07月(176) 阅读排行 搜索引擎学习资源(作者:dongdonglang)(14656) 做代理网站最有效的4种宣传方法(admin9.com)(12007) 再谈powerbuilder程序防止破解的办法(终结篇,以后不再写这个问题)(8064) 程序员的SEO总结(7459) 浅谈Powerbuilder的未来和Powerbuilder使用者的未来(5999) 在一台联想3000G430 T1600笔记本上安装黑苹果(东皇v10.6.3)成功(5948) PowerBuilder DeCompiler(PB DeCompiler) Demo download(PB反编译,支持5-12)(5887) PB11.5,PB12 web项目初探(5635) 文件夹加密原理 [转](5627) powerbuilder反编译器开发-第一步:pbd结构分析和PBKILLER分析(5473) 评论排行 浅谈Powerbuilder的未来和Powerbuilder使用者的未来(49) 程序员的SEO总结(32) 有关Powerbuilder的悲观论和乐观论(由郭贴引发的300多贴争辩想到的,也是很久就想秉明的一个观点)(22) Powerbuilder混淆,加密(powerbuilder防止反编译,pb混淆器,PB加壳,支持5-12) obfuscator for PowerBuilder(20) 戏说DataWindow的“移植”和“临摹”(19) 因为垄断形成,数据库市场将出现更多开源数据库(19) 免费软件模式之随想(18) 软件提交到国外的下载站的几点操作和想法(15) PB11.5,PB12 web项目初探(15) 关于对pbd反编译器的期待(11) 推荐文章 最新评论 安装两个BCB6控件SynEdit、mwEdit 0.92a的过程总结 jiduxiaozhang12345: 请问BCB6的第三方控件在哪下载啊?急求 Powershield一个疑似的BUG zhj149: 高手啊,看你的文章,感觉你玩pb已经到了极致的境界了,我自认为pb还不错,和你比起来,还是差了太多了 软件提交到国外的下载站的几点操作和想法 u012353953: 楼主在吗?有个问题请教,看到请加我QQ,谢谢。17493589 Lucene(Nutch)距离商业文本搜索引擎还有多远?(转载) koubi1986: 你好!请教一些问题:请问一下1。你是如何把nutch抓取到的二进制内容,在项目中读取的。2。nutc... 看一个商业共享软件是如何在下载站刷下载量来作弊的! u011506701: 您的判断是有误的,像我研究的刷量算法你就根本看不出来,出现的曲线图跟正常的一模一样的,附:刷量是最好... 垂直搜索引擎蜘蛛的基本解决方案(编程实例:所以推荐) gis101989: 你好,我正在写面向主题搜索引擎结合地理信息的论文,很多地方不懂,能加个扣扣吗?非常感谢你的帮助,我的... 浅谈Powerbuilder的未来和Powerbuilder使用者的未来 hosthelp: PB的最大缺点就是:(其实很简单)过时了。 服装过时就没人穿了, 电器过时就没人买了, 明星过时(过... 三岁小孩开发搜索引擎,搜索引擎白热化[原创] rongzi1987: 顶一个。先顶再看 再谈powerbuilder程序防止破解的办法(终结篇,以后不再写这个问题) hua2000: 顶顶更健康正在研究反向工程 有个傻B说破解了我的软件—哈哈!黄金屋手机MP3.MP4.3GP.电影.下载系统 ljx811216: 真有这事,看看 我的未来方向 pconline/asp.net周金桥老师的aspnet 友人Blog 旧博客在sina Bluesen的语音卡开发平台 JackXu的开源语音卡框架 经验丰富的好友:杨光的专栏 蓝星际语音平台,Koodoo语言 Lucene改造者-yuetiantian 西部.阿呆's blog manesking:全文检索c/c fullfocus研究lucene,nutch 黄国酬的博客 把“天轰穿”的asp.net 雨松.安卓