Decrypt('ab',Decrpyt('aa'))其中的Decrpyt('aa'))的结果会不会在内存看到?(40分)

  • 主题发起人 主题发起人 crazymoon
  • 开始时间 开始时间
C

crazymoon

Unregistered / Unconfirmed
GUEST, unregistred user!
这是我关于软件保护、破解的一个疑问:<br>Decrypt('ab',Decrpyt('aa'))其中的Decrpyt('aa'))的结果会不会在内存看到?<br>有什么方法可以不被看到?或破解工具中被发现?<br>另:如果我对 a.txt 读取 第10字节的5个字符,FileMon 能否检测到 ?
 
高手要破解你的加密,不管你怎么做都是枉费。就象你的锁一样,只防君子和低级小偷。
 
可以<br>FileMon可以
 
对于逆向工程我知道得多一些,虽然不能绝对禁止破解,但如果把判断的算法移到一个dll文件里,就可以加大破解难度,能挡住一些新手,再高级的办法实现起来就比较复杂了,把你的邮箱告诉我,我发给你(huangailian·126。com)我每星期2,4查邮箱
 
谢谢cjwdone,<br>我的邮箱 gjinkui@163.com
 
先别说谢,我后来想了想,还是资源共享的好,就把这个帖子公布出来好了。<br>首先,任何人都不能防止破解,而且你所能操作的内容在内存中都能看得到(filemon不行,最起码也要用winhex),你唯一能做的就是增加破解难度使得cracker觉得他所做的破解工作不值得这个软件本身的价值,他也就不会破解了。<br>如果想增加破解难度,你要遵循以下几条:<br>1:不要给出明确的密码错误的提示,这只会给破解者提供线索告诉他你的软件是在哪判断注册码的。如果你能在软件启动的时候判断的话就即可以更高一步加大破解难度,当然是别人输入的时候先存在一个位置了,比如注册表<br>2:在判断注册码时,最好先检查一次进程,如果找到“filemon”“regmon”“winhex”“ollydbg”什么的就可以不要判断注册码,直接退出就可以了,当然也不要任何提示<br>3:上次说的,把判断过程放在一个单独的dll里。<br>4:尽量使用密码学的算法,网上的免费代码很多,md5的就不错。<br>5:不要做成类似&quot;if decrypt(abc)=yui then ...&quot;的形式,就是一个新手也能轻松破解这种形式的判断。如果你的软件涉及输出文件什么的最好就不要判断了,直接用一个算法,和他输入的注册码作一下运算,把结果再和你输出的内容作个xor什么的就最好了<br>建议你参考winrar,它的文件加密算法就是一个很典型的例子,从来没有人能破解它加密的文件<br>6:最好在不同的地方做不同方式上的判断,这样cracker如果不对你的软件作深入研究的话就不能完全破解。但要注意的是就算用的算法可以养也不要用一个过程来回的call,最好把那个过程复制几分,每份又在作些稍微的更改,就是交换一下代码的顺序也行,也能加大破解难度了<br>暂时就写这么多了,希望对你有帮助
 
to cjwdone 及其他人:<br> &nbsp;最近也看了不少关于破解的文章。<br> &nbsp;钻牛角。<br> &nbsp;不过,倒也有些心得,有个方法感觉不能被破解,因为不要判断,只是不够通用。并且,<br> &nbsp;在源码中没有答案,答案在作者手中。<br> &nbsp;我在想,其实对破解的理解,其实可以认为<br> &nbsp;别人是拿到你的源码,能够去看,不过他看到的源码是汇编的而已。<br> &nbsp;因此,不必懂汇编,就反思一个问题,如果就把我DELPHI的源码来看,<br>可改可分析,只要能破解,就会被破解。<br> 如果看DELPHI的源码都不能破解,恐怕就真的不能破解了,呵呵。
 
另:破解?我也会呀,像是豪杰超级解霸3000这一类的还是没问题的。所以不要只看了几篇破解文章就来这里谈对破解的看法,会被别人笑的。自己先破解九、十个软件在来说的话,会比较有影响力的<br><br>上次忘了告诉你,找个猛壳是个关键,不要找网上公开的,要找像是在荷兰,俄罗斯的民间网站上流传的一般就万无一失了。<br>而你说的那一条也就是我给你建议的5th条,不加判断的,没跟你细说是因为这个方法有两个致命的缺点,不是不够通用,而是1:作者也不一定能够作出注册机,如果作者可以,那么cracker也可以做到。2:如果不用判断的话,还做得好的话,那么为此软件付出的努力一般已超过它本身的价值了,如果做得不好,破解起来比有判断的还要简单。所以不建议你这么做。
 
后退
顶部