仅以此文,纪念我那颓废的2008
2008年刚刚过去,新的一年又开始了,希望自己能在新的一年里一帆风顺.也祝大家新年快乐,身体健康
0.引言
Crack之路是充满荆棘与挑战之路,也是充满希望之路.没有捷径可走.梦想有朝一日醒来成为绝世奇侠,练得一身好武艺是不现实的.
"不走弯路,就是捷径",佛经说的不无道理.
1.如何学习Crack?
一个好的程序员不一定是一个好的Cracker,但是一个好的Cracker首先是一个好的程序员.那么,如何学好程序设计呢?经常听说有编程高手,Java,C,Delphi等等拿来就用,没什么区别.为什么他们可以达到这种"摘叶伤人"的境界呢?个人认为这时因为编程语言有许多共通之处,领会了编程的精髓,自然能做到一通百通.学习程序设计也有许多共通之处.
1.1兴趣
兴趣是最好的老师.
兴趣是能够让你坚持下去的动力.经常听朋友说培养兴趣.个人感觉兴趣不是培养出来的,你也培养不出来兴趣.兴趣是在你认识与了解某个事物之后油然而生的.就像人一样.我个人并不相信一见钟情,但是日久生情还是相信的
Crack也一样,就像看雪大哥说的,也许刚入门时你会沉迷进去,可以饭不吃,觉不睡.但是等这段激情过去了,你还能依然这样吗,这个时候,支撑下去的就是兴趣.人对于新事物开始的时候都会有激情,但是兴趣不然.如果你学习Crack只是为了使用"免费软件",而不是作为一种爱好,一种兴趣去学习,那么,建议你还是放弃好了.
1.2编程语言
关于编程语言的选择,众说纷纭.虽说语言只是工具,但是还是要根据实际去学习.我不会奢望你用VB去做驱动程序.也许VB对Crack有一定的用处.但是,还是建议你学习C.当然,汇编是必须的.不仅仅是16位的,32位的汇编你也应该了解.而且以后还应该了解64位的.
1.3不要浮躁
关于浮躁,个人认为,浮躁不是某个人的错,而是整个IT环境都是浮躁的,整个社会都是浮躁的.
欲速则不达.
各种培训机构都可以号称2-3个月打造一个软件蓝领.一些培训机构的"粗制滥造"给程序员这个职业蒙上了许多阴影.给人的总体感觉是现在的程序员越来越多,但真正有水平的程序员却越来越少了.
很多人不是扎扎实实地钻研理论基础,而是整天追求热门的东西.就像小四哥说的,如果你连<WindowsNT设备驱动程序编写>;<win9x系统编程>;都没有看过,却要写个什么隐藏自己的木马,搞笑.如果你看都不看汇编语言,偏要问exploitcode的原理,那我无法回答也不想回答你.
很多人都讲脱壳脱壳,但是却一直使用自动脱壳机.整天谈论OOP,OOA,也仅仅是知道OOP是什么意思而已.
"你现在讲究简单方便,你以后的路就长了".好像也是佛经的劝诫.
所以,做事情不能讲究速成.能够速成的,要么不是什么好事情,要么就是你没有做好.
浮躁的人容易说:XX语言不行了,应该学YY;----是你自己不行了吧
浮躁的人容易问:我到底该学什么;----别问,学就对了
浮躁的人容易问:XX有钱途吗;----建议你去抢银行
浮躁的人容易说:我要中文版!我英文不行!----不行?学呀
浮躁的人容易问:XX和YY哪个好;----告诉你吧,都好----只要你学就行
浮躁的人分两种:a)只观望而不学的人:b)只学而不坚持的人
把时髦的技术挂在嘴边,还不如把过时的技术记在心里
1.4实践
实践是检验真理的唯一标准.
请把书上的程序例子亲手输入到电脑上实践,即使配套光盘中有源代码
任何事情,一旦考虑好了,就要马上上路,不要等到准备周全之后,再去做事情.假如事情准备考虑周全了再上路的话,别人恐怕捷足先登了.软件开发是一门工程学科,注重的就是实践.有前辈高人认为,学习编程的秘诀是:编程,编程,再编程,个人深表赞同.不仅要多实践,而且要快实践.我们在看教程的时候不要等到完全理解了才去实践.而是应该在看教程的同时去实践,这样可以让你更快更牢固的掌握知识.
1.5看代码
学习编程最好的方法一就是多写代码,二就是多看代码.
看代码的时候尽量去找一些好的代码,如果找到的代码没有注释的话,还是别看了.
还有,自己写代码的时候也一定要写注释,不仅仅是为了自己以后看起来方便,也为了别人看起来方便.
1.6英语
不管你是不是学习计算机的,都应该了解英语,最起码要有基本的阅读水平.
关于英语的问题我想多说一点.一点就是关于背单词的问题,大家千万不要把单词拆开来记,而要根据发音来记.
我没有见过记拼音的是用z-h-o-n-g,g-u-o这样的方式来记的.我见得都是用zhongguo的发音来记的.所以,英语也一样.我们不能用c-h-i-n-a这样的方式来记英语.而是根据china的发音来记.第二点就是,我们从小开始学英语,基本上都学的有10年之久,但是英语很好的又能有多少呢?天天都在讲英语,天天都在记英语,为什么还有那么多的英语不及格的呢?这就是方法问题.如果你遇到这种情况,就需要好好反省下了.方法是适用于自己的,所以不要问我学习英语的方法.
1.7数学
要尽可能的多学一些数学知识,必须具备扎实的数学基础!数学的重要性不言而喻.
学数学的时候要有目的的学,有需求的学,有针对性的去学.Crack并不需要学习太多的数学知识.除非你想成为数学家.
1.8提问的智慧
问问题之前,你应该先回答如下几个问题
你是否在google中搜索了问题的解决办法
你是否查看了相关API文档?
你是否查找过相关书籍?
你是否写代码测试过?
如果回答都是"是"的话,而且还没有找到解决办法,再问别人不迟.要知道独立思考的能力对你很重要.要知道程序员的时间是很宝贵的.
1.9多读好书
书中自有颜如玉.
但是书也有好坏,所以,读书也要慎重.不好的书看了不但没有什么好处,反而坏处颇多.
在任何时刻都不要认为自己手中的书已经足够了.
原来我也总是喜欢买书,买了很多书,大都没看,日子久了,也就淡忘了.到后来,除了需要用到的好书,其他的一概不买,毕竟计算机类的书还是很贵的.原来买书只是因为感觉这也不错,那也不错.所以,浪费了很多资源.
2后记
其实,如果你有不错的编程能力,那么学习Crack还是很容易入门的.关于如何学习Crack,看雪大哥也曾说过.参考<解密分析入门基础知识>
大家可以看到,论坛里相当多的高手都是做软件开发的.所以说,Crack的学习之路,其实也就是程序开发的学习之路.只不过是涉及到一些更底层的东西罢了.
这里说一下,我个人技术上并不是很好,因为我也仅仅是刚入门.所以关于技术上也许我不能为大家提供更多的帮助,但关于思想与资源上我可以提供帮助.我很喜欢去各大论坛的程序人生板块.也很喜欢帮助那些没有入门的朋友.如果你需要帮助的话,可以联系我.E-Mail:Jumby08@126.com
人生就是一个体验的过程.所以,不管你做什么,怎么去做都可以随性.但是,记住,不要让自己后悔.
人生在世,高兴就好.
部分内容摘自某作者的<JAVA学习之路>一文.特此感谢之.
最后以爱因斯坦的10条哲理箴言与大家共勉:
1. 固步自封的人才会永远不犯错误。
大部分人不想尝试新事情,因为他们害怕失败。然而失败并不可怕,通常失败者吸取的教训要远远大于成功者。失误总能提供我们学习和成长的机会。
2. 学校传授的不是知识,而是学习方法。
毕业30年以后,你会忘记学校里老师所传授给你的知识,但是不会忘记老师传承的学习方法。教育应该是“授人以渔”,而不是“授人以鱼”。
3. 我是乐于想象的艺术家。想象比知识更重要。知识有限,而想象无限。
想像的力量贯穿于人类从史前穴居到知识爆炸的现代。我们所有的一切都是建立在前人想像的基础上。我们后人的所有建立在我们的想像基础上。
4. 创造的秘诀是博采众长。
创造的独特性体现在如何让人看不出你思想的源泉。(Creativity and uniqueness often depends on how well you hide your sources.)你可以受到别人的启发或者影响,但是当你面对整个世界时,你要在博采众长基础上提出自己独特而新颖的观点。
5. 人的价值不在于他能获取什么,而在于他能奉献什么。不要只做成功的人,还要努力做有价值的人。
世界上所有伟大的人都曾经给这个世界带来过奉献。只有奉献了,才有资格获取。只有以奉献为目的,你的人生价值才会高人一等。
6. 有两种生活方式:你可以认为世界上没有奇迹,也可以认为世界上充满奇迹。
如果认为世界上没有奇迹,那么你会尽心竭力,突破极限;如果认为世界上充满奇迹,你会有精力欣赏到生活中无所不在的美。两种方式都回带给你丰富而且幸福的生活。
7. 每当我检视自身,我都认为幻想带给我的比抽象思维或者乐观心态带给我的要多得多。
对于美好的幻想是打开幸福之门的钥匙。让想像策马奔驰,创造想像的世界。
8. 只有鹤才能“鹤立鸡群”。
如果想成为一个成功的企业家,你首先要创办自己的公司。如果你想成为某人,就不要担心后果。如果你想赢得比赛,首先要参与比赛。
9. 首先要熟悉游戏规则,然后才有可能比别人玩得好。
10. 最重要的事情不要停止疑问。
聪明的人懂得提问。不断地疑问自己,疑问他人,并不断地寻求答案。这样才能增长见识,提高自己。
Jumby
2009.01.01
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)