继续扫描某芝关注的一些神秘人物的侧脸,今期要介绍的是Cracker,文字整理自关于对俄罗斯软件逆向工程学专家Ivan 博士的访问。
首先说一下Cracker和Hacker的区别:
Hacker通常以简洁、完美的编程为自豪,以发现系统的Bug为乐趣,擅长突破各种安全防范;研究的范围一般在突破(Hack)网络系统、长途电话系统、PGP加密系统、信用卡识别系统、RAS系统、计算机病毒、无线系统以及身份识别系统等等。(似乎比较玄
)
而Cracker对解密软件有一种偏爱,通常以破解各种加密或限制的商业软件为乐趣,讲究Crack的艺术性和完整性,以及从文化上体现计算机的大众化。Cracker通常有很深的数学基础和密码学造诣。Ivan 博士说:“Cracker是一个对于未知世界不间断的追问者。”
Ivan 博士是诺基亚研究院俄罗斯分院的项目主管、总工程师。同时,也是世界著名cracker之一。他毕业于俄罗斯下诺夫哥罗德大学,在芬兰赫尔辛基大学取得博士学位。(Linux的作者Linus Torvalds即毕业于该校)。Ivan 写有11篇关于IC芯片和3G通信技术的论文和百余篇密码学论文。
“我是这样走上Cracker之路的”
“睿智,机敏,具有世界级Cracker的严谨,坚强和果敢。”这是世界Cracker们给予他的形容词。
是什么因素使Ivan 走上了Cracker 之路?Ivan 说,是技术的吸引,从兜里往外掏钱是件痛苦的事,既然能通过技术取代付钱,为什么不这样做呢?
1999年初,Ivan 使Macromedia公司损失了数百万美金,为此,Macromedia 公司的律师Steve Wozniak 给他发来电子邮件警告,说他的网页不合法,其目的是让他关闭提供Macromedia 公司的系列产品的crackz的下载站点。由于俄罗斯法律不保护国外计算机软件产品的版权,于是Ivan 引用了部分对其有利的俄罗斯法律来驳斥律师。同年6月,他成立了一个Cracker组织,结束了单打独斗的时代,经过短短几年拼搏挤进了世界级Cracker组织的行列。
“此后我曾经遭到两家公司的起诉”,Ivan 博士说。一家是关于密码学专利权的使用,一家是关于游戏,由于在公司发布游戏前一个月Ivan 将其破解出来提前公布,结果造成游戏公司的损失。记者询问Ivan 周围的人对Cracker这一行的看法,Ivan 说,Cracker是一种不为外行所知的群体,并没有告诉别人知道。
“谈自己的思想和看法……”
萧雍:Cracker也许是很枯燥、很寂寞的群体,加入这一群体,您感到最值得自豪的是什么?
Ivan:我没有什么可值得自豪的,我感谢上帝让我出生在这个时代,赶上经历计算机的发展,感谢上帝赐予我接受更高教育的机会,crack只是一个副产品,我的目标是向数学进军,而不是汇编语言。
萧雍:要怎么样才能成为真正的cracker,究竟数学基础和密码学知识对于Cracker有何帮助?
Ivan:这是几门连贯的、相互弥补的学科,cracker接触用密码保护的软件再正常不过了,不过要分析这样的软件必须要了解一些密码学理论,要了解密码学理论又必须有坚实的数学基础。我还想补充一点的是作为一个真正的cracker,这几门学科是远远不够的,至少还要学习哲学、心理学。其实我觉得cracker和英国爵士Arthur Conan Doyle创造的Sherlock Holmes(福尔摩斯)倒是很像。
萧雍:您把自己称为工匠——一个和专家相对的称号。为什么?
Ivan:真正的专家能找到答案。而工匠却限于他的技术之内。比如说,我很了解调试工具、计算机语言,我知道硬件调试器上不同指令的作用,我多少知道些怎么使用密码算法,可那不是真正的知识。真正的知识在于懂得怎样工作,工作的意义……诸如此类的东西。
萧雍:您的谈话越是切实,看上去就越有形而上学的意味。你似乎在寻找超乎具体与物质的东西。
Ivan:当然我希望能超越具体的事物。但这很难。非常困难。
萧雍:您在通过逆向代码试图捕捉什么?
Ivan:也许是灵魂。无论如何,是我自己还没找到的一种事实。或许是一闪即逝的思想。
萧雍:真正的Cracker懂得逆向的价值,初学者也将重新学会去探索。这样的话对于Hacker和Crypto也能说的通。当你讨论逆向和学习时,思想是决定性的?
Ivan:实际上,在我的探索中思想总是与逆向相对的。它产生两难境地,它带来苦楚。有了它、没了它,我都很苦恼,我的真实思想是对于防御的完美追求,但是这种追求的过程正好与之相反,既要绞尽脑汁的寻找漏洞,又可望它是无懈可击的防御方案。你很难能在我的语言中体会这种矛盾,它是无法形容的。
萧雍:您是如何看待现实中的自由和技术上的自由区别?现实生活中的经历是否改变了你对自由的看法?
Ivan:不,因为自由技术与政治无关。我讨论的是内在技术的自由。如果我要讨论外在社会的自由——社会运动的自由——我会选择第三世界国家。因为显然,那儿还没有变。举一些愚蠢的例子。你有护照,能去美国。可很多第三世界国家的人不能。有一份法国的薪水,你可以买一张去印度的飞机票,但反之并非如此。然而内在技术的自由是普遍的。
萧雍:你们在互联网中分享技术自由,会遇到很多国家的人,在语言上你们是怎样解决的?
Ivan:像你推断的,我能熟练的说法语、英语、俄语,芬兰语,瑞典语,还有德语。我们创造了一种每个人都感到很舒服的氛围。与不同国籍的人在一起,我遇到没什么困难。
“今后软件加密保护技术会向哪一个方向发展”
Ivan:“我试着说说加密的未来发展,个人认为加密会向简单化发展,当然这种简单并不是算法上的简单,而是加密理论上的简单。现在的加密方法已发展到过于繁琐的地步了,我猜想很多加密的方式经过实践的考验会退出的,只剩下一些较为有效的方式。另外,64位的计算机很快就上市了,它的出现将使得加密理论更加“人性化”使用更多的分析量来达到人脑的分析极限,从而实现防护。
关于crack技术的发展,这个可不好讲。由于64位的计算机的性能和数学家的不断努力,说不定现在的算法密码理论很快被公式破解?也许不能,很难预见。”
“因为有Cracker,世界上才有更多的人从事程序员的行业”
Ivan 认为,实际上Cracker在俄罗斯乃至世界的IT行业没什么地位,Cracker只是为了让更多人使用好的软件而已。但是没有Cracker,计算机也不会达到今天的普及程度,大部分程序员决不会从事这一行业的。因为如果没有盗版的编程开发软件,他们拿什么学呢?相信不会有谁为了学习像Visual Basic这样的软件就花数万元买正版的软件。从一个侧面来看,如果没有盗版,计算机应用就不会在全世界普及。尽管盗版不合法,但却使世界上更多的人走上了程序员之路,促使了计算机科学的蓬勃发展。
关于对待Cracker群体的态度,Ivan 认为,万事万物有矛就有盾,软件逆向工程也不例外。在Crack技术发展的同时,软件保护技术的发展也没有停止过,从最初的磁盘加密,到现在泛滥的序列号、软件狗等,都是和Cracker技术同步发展、互相促进的。
Ivan:“我相信我们身负一个责任,就是告诉应用软件的学习者:cracker是善良诚实的人,他们在与技术交往的时候,没有忘记无数学习者,他们愿意与之免费分享一些技术和学习资料,他们是热忱的、诚恳的。如果我能为建设这种形象做出供献,并在外人心中产生更多的正面影响,我会为此感到非常高兴。”