黑客记忆与前作_黑客记忆图鉴

hacker|
102

文章目录:

黑客故事之早期的黑客是如何诞生的

学院技术模型铁路俱乐部(Tech Model Railroad Club,TMRC) 的信号动力委员会(Signals and Power Committee,SP)把它作为最时髦的科技玩具,并由此产生了许多程序设计工具、术语、和整个文化氛围——这些,直到今日我们仍然依稀可辨。史蒂文·利维(Steven Levy)在《黑客》(Hackers)的第一部分中详细的记录了这段岁月。

“黑客”这个词汇最早出现在麻省理工学院的计算机文化中。TMRC中的黑客,日后成为了MIT人工智能实验室的核心成员,而该实验室直到80年代早期都一直主导着全世界的人工智能研究。从ARPAnet诞生的第一年,1969年开始,他们的影响力便不断的扩大。

ARPAnet是第一条横贯(美国)大陆的高速计算机网络,由美国国防部出资兴建。作为一实验性的数据通讯网络,它将数以百计的大学、国防部分包商、研究机构连接在一起。各地的研究人员能以史无前例的速度和弹性交换信息,它为协同工作带来了巨大推进,并使得科技创新突飞猛进。

ARPAnet还有另一项好处,它将散落在全美国的黑客汇聚到一起,一改往日局面——几个独居一隅的小组各自发展朝生暮死的本地文化。他们发现(或觉察到)自己置身于一个网络部族之中。

黑客文化的第一批史前遗存——第一批术语表、第一批讽刺文学、关于黑客伦理的自发讨论——凡此种种都萌生在ARPAnet的早期岁月中。特别是在1973年到1975年,通过网络协作我们完成了“黑客字典”(Jargon File)的第一版,这个术语辞典成了一份黑客文化的定义文档。终于在1983年以《黑客辞典》之名付梓刊印了。虽然该书已经绝版了,但是我们现在有了经过修正和扩充的《新黑客辞典》。

黑客道在那些连接到网络的大学中绽放,特别(并非绝对)是在计算机科学部门中。60年代末,首先由麻省理工学院人工智能和计算机实验室领军,斯坦福大学人工智能实验室(SAIL)和卡内基梅隆大学(CMU)紧随其后。这些兴旺的计算机科学以及人工智能实验室吸引到无数人才,他们都对黑客文化作出了伟大的贡献——无论是创造技术还是传说。

为了了解日后的故事,我们有必要先看看电脑本身。因为无论是人工智能实验室的升腾还是最终的陨落,都取决于计算机科技变幻的波涛。

从PDP-1型开始,黑客道的命运就紧紧的和DEC(Digital Equipment Corporation,迪吉多)的PDP系列微型机交织在一起了。DEC可谓是交互计算和分时系统的商业先驱。由于其灵活、强大和比同行便宜的特点,被很多大学所采用。

廉价的分时操作系统是黑客文化成长的中继,ARPAnet生命的大部分时间都被DEC机器编织的网络占据了。其中最重要是在1967年首次推出的PDP-10型,它受到黑客道的青昧长达十五年之久。TOPS-10 (DEC为这个机型开发的操作系统)和MACRO-10 (它的汇编程序)至今还能在许多术语和传说中泛起记忆的涟漪。

麻省理工学院虽然像大家一样采用PDP-10,却试图独辟蹊径。他们不屑于使用DEC开发的操作系统,而是打算自己编一个——传说中的ITS。

ITS是IncompatibleTime-sharing System(不兼容分时系统)的缩写,这个名称也正是MIT黑客姿态的写照(技术上,这是对其前辈“兼容分时系统”的戏谑,CompatibleTime-Sharing System, CTSS)。他们就是要自成一派。很幸运,这群人并非“夜郎自大”。尽管ITS通常离奇古怪并与错误相伴,但是这不足以遮盖许多技术创新的光芒,而且ITS至今还是分时系统单次运行时间最长记录的保持者。

ITS本身是用汇编语言写成的,但是其许多项目却采用了一种人工智能语言——LISP。当时,LISP可算得上是同类语言中最强大灵活的了。而且即使在二十五年后的今天,它也拥有比大多数语言出色的设计。LISP让ITS黑客们可以异想天开,是促成他们成功的主要原因,也是黑客道至今衷爱的语言之一。

许多ITS文化中的科技创造沿用至今,其中最著名的恐怕要数EMACS程序编辑器了。如同你在“黑客辞典”中看到的一样,许多ITS的传说还在黑客坊间流传。

SAIL和CMU当然也没闲着。许多在SAIL的PDP-10环境下成长起来的黑客,日后成为我们今天个人电脑中“窗口/图标/鼠标”软件界面领域的巨擘。而CMU的黑客则主导了专家系统和工业机器人技术的首次大规模应用。

另一个文化重镇是施乐的PARC——著名的帕洛阿尔托研究中心(Palo Alto Research Center)。在70年代初到80年代中期这十余年的时间里,PARC破天荒般的创造了数量惊人的软件和硬件。我们今天接触到的软件界面风格(包括窗口、鼠标、图标)就源自这里。当然,还有激光打印机和局域网。PARC在个人电脑出现(80年代)的十年前就开发出了可以与之一较短长的D系列机型。遗憾的是,“先知们”没有得到自家公司的赏识。以至于PARC成了一个笑柄——“那是为别人生产优秀创意的地方”。然而不可否认PARC对黑客道的影响是普遍而深入的。

贯穿70年代,ARPAnet和PDP-10文化变得愈发强大而多变。小巧的电子邮件列表,将各地具有独特爱好的人凝聚在一起。出现了越来越多的“小组”,而且延伸到了社交和娱乐领域。DARPA(美国国防部高级研究计划署)对所有“未授权”的技术活动睁一只眼闭一只眼。因为他们知道,与将一代睿智的年青人引入计算机领域相比,这点额外的开销简直微不足道。

最著名的“社交”ARPAnet邮件列表恐怕要数科幻小说迷建立的SF-LOVERS了。它至今都很活跃,实际上今天更广阔的“因特网”是由ARPAnet演化而成的。不及如此,这种对通讯模式的开拓,日后会被一些牟利性分时服务商推向商业化。比如CompuServe, GEnie 和Prodigy (而最终被AOL掌控)。

你的历史学家是在1977年通过ARPAnet和科幻小说圈初涉黑客文化的。在那之后的诸多变迁(也是我将叙述的),都是我亲身参与和见证的。

推荐几本与黑客有关的小说

黑客江湖

作者:出水小葱水上飘

有黑客的地方的就有江湖,有江湖的地方,就少不了刀光剑影、恩怨情仇。

绝世黑客

作者:冒险王

远在人类文明之前,存在着一个文明高度发达的恐龙文明,而它就是来自于那个失落的文明,随着那个来自星空的救命恩人的离去,再也没有人来约束它,于是重建一个全新的文明来取代人类文明成了它最大的目标,但它宏伟的计划遭到了另外力量的阻挠,同时太阳风暴的出现毁灭了人类文明,整个世界一片混乱…… 百年过去后,它依靠强大的机械军团开始了征服整个世界的计划,但是世界上仍然存在着一种它无法掌握的力量…… 战争持续了数百年的时间,在机械军团的面前,人类大军被各个击破,而幽灵大军也日益壮大,最后,陷入困境的人类开发出了另外一种奇异的智能生命,这种生命体就是曾经毁灭了恐龙文明的那种恐怖的生命,这是同化并吞噬一切的粒子生命体。 硝烟散尽,地球迎来了历史上最大的冰河时期。

黑客传说

2006年,一个隐藏在普通网管当中的超级黑客项彬,由于太不注意自己的身体,导致身体机能严重衰竭,在一次和国外黑客的较量中,已经几天几夜没有休息的他终于挂掉了。结果得到老天垂怜,让他重生到了1996年一个初中生许毅身上体内,两者的记忆发生了融合,产生了一个全新的少年……

.

1996年,是中国互联网刚刚起步的年代

1996年,是中国黑客萌芽的年代

.

前世,项彬将一生都奉献在黑客事业上,连初恋的味道都没有偿过;今生,仍旧热爱黑客的许毅将如何自处?介于成熟与不成熟之间的他将如何处理自己的感情?爱上一个比自己大上10岁的女人,他将面对怎样的阻碍?

.

他的到来,历史的轨迹将发生怎样的偏转?

他的到来,中国网络将发生哪些惊人的变化?

他的到来,将会给中国黑客多大的影响?

.

本书将揭密神秘的黑客生活,介绍深奥的黑客知识,展示高超的黑客技术,构建理想中的黑客江湖,营造特色的黑客文化……

我是一个黑客

作者:无名

《我是一个黑客》内容简介:

这部作品是我所看到的描述黑客生活最为真实的一部作品,也许作者也对现今同类作品中对黑客形象的扭曲现象不能容忍。

黑客无论在美国欧洲是什么样子,我想,在中国,他们应该就是这个样子!他们只是一些默默无闻的人,没有很多表面上的激烈,或许说,他们内心中的激烈带来的只是自己的满足,黑客行为本身只是个人的一种游戏,自娱自乐,那些把黑客行为社会化、神化的做法都是浅薄、低俗的。

作品采用的叙述手法很平静,娓娓展开,不急不徐,但给我们展现了一幅真实的社会场面。可以说,作者肯定是有着贴身的体会的。对公司里隔间生活的描述,外出到公安局的情形,让我们这些有着同样经历的人看来,仿佛那就是我们自己的身影,那些描述多么贴近生活,作者在告诉我们,黑客不是你们想的那样,如果你们认为我就是黑客的话,你们看吧,黑客就是这样的。

指间的黑客

《指间的黑客》内容简介:

通往电脑的路不止一条,所有的信息都应当是免费的。打破电脑集权,在电脑上创造艺术和美,计算机将使生活更美好。

————黑客道德准则

凌晨,他的双手依旧在键盘上飞快的敲打着。

——单调的键盘声奏乐,双手挥出一段指间舞。

午夜,键盘声停止,点燃一支香烟,嘴角骤然翘起,聚目盯……

巅峰黑客

作者:莫水

《巅峰黑客》内容简介:

这是一个高度---黑客世界里的高度,除了他无人能及!

折磨防火墙,玩弄服务器,那不是他的作风!!

颠覆传统,破而后立,那是他的境界!!!

大道至简,那是他的高度!!!!

黑客的历史~

黑客的历史:

Jargon File中对“黑客”一词给出了很多个定义,大部分定义都涉及高超的编程技术,强烈的解决问题和克服限制的欲望。如果你想知道如何成为一名黑客,那么好,只有两方面是重要的。(态度和技术)

长久以来,存在一个专家级程序员和网络高手的共享文化社群,其历史可以追溯到几十年前第一台分时共享的小型机和最早的ARPAnet实验时期。 这个文化的参与者们创造了“黑客”这个词。 黑客们建起了Internet。黑客们使Unix操作系统成为今天这个样子。黑客们搭起了Usenet。黑客们让WWW正常运转。如果你是这个文化的一部分,如果你已经为它作了些贡献,而且圈内的其他人也知道你是谁并称你为一个黑客,那么你就是一名黑客。

黑客精神并不仅仅局限于软件黑客文化圈中。有些人同样以黑客态度对待其它事情如电子和音乐---事实上,你可以在任何较高级别的科学和艺术中发现它。软件黑客们识别出这些在其他领域同类并把他们也称作黑客---有人宣称黑客实际上是独立于他们工作领域的。 但在本文中,我们将注意力集中在软件黑客的技术和态度,以及发明了“黑客”一词的哪个共享文化传统之上。

另外还有一群人,他们大声嚷嚷着自己是黑客,实际上他们却不是。他们是一些蓄意破坏计算机和电话系统的人(多数是青春期的少年)。真正的黑客把这些人叫做“骇客”(cracker),并不屑与之为伍。多数真正的黑客认为骇客们是些不负责任的懒家伙,还没什么大本事。专门以破坏别人安全为目的的行为并不能使你成为一名黑客, 正如拿根铁丝能打开汽车并不能使你成为一个汽车工程师。不幸的是,很多记者和作家往往错把“骇客”当成黑客;这种做法激怒真正的黑客。

根本的区别是:黑客们建设,而骇客们破坏。

如果你想成为一名黑客,继续读下去。如果你想做一个骇客,去读 alt.2600 新闻组,并在发现你并不像自己想象的那么聪明的时候去坐5到10次监狱。 关于骇客,我只想说这么多。

---黑客的态度

黑客们解决问题,建设事物,信仰自由和双向的帮助,人人为我, 我为人人。

要想被认为是一名黑客,你的行为必须显示出你已经具备了这种态度。要想做的好象你具备这种态度,你就不得不真的具备这种态度。但是如果你想靠培养黑客态度在黑客文化中得到承认,那就大错特错了。因为成为具备这些特质的这种人对你自己非常重要,有助于你学习,并给你提供源源不断的活力。同所有有创造性的艺术一样,成为大师的最有效方法就是模仿大师的精神---不是仅从理智上,更要从感情上进行模仿。

So,如果你想做一名黑客,请重复以下事情直到你相信它们:

1 这世界充满待解决的迷人问题

做一名黑客有很多乐趣,但却是些要费很多气力方能得到的乐趣。 这些努力需要动力。成功的运动员从健壮体魄,挑战自我极限中汲取动力。同样,做黑客,你必须

要有从解决问题,磨练技术,锻炼智力中得到基本的热望。如果你还不是这类人又想做黑客,你就要设法成为这样的人。否则你会发现,你的黑客热情会被其他诱惑无情地吞噬掉---如金钱、性和社会上的虚名。

(同样你必须对你自己的学习能力建立信心---相信尽管你对某问题所知不多,但如果你一点一点地学习、试探,你最终会掌握并解决它。)

2. 一个问题不应该被解决两次

聪明的脑瓜是宝贵的,有限的资源。当这个世界还充满其他有待解决的有趣问题之时,他们不应该被浪费在重新发明轮子这些事情上。 作为一名黑客,你必须相信其他黑客的思考时间是宝贵的---因此共享信息,解决问题并发布结果给其他黑客几乎是一种道义,这样其他人就可以去解决新问题而不是重复地对付旧问题。

(你不必认为你一定要把你的发明创造公布出去,但这样做的黑客是赢得大家尊敬最多的人。卖些钱来给自己养家糊口,买房买车买计算机甚至发大财和黑客价值也是相容的,只要你别忘记你还是个黑客。)

3. 无聊和乏味的工作是罪恶

黑客们应该从来不会被愚蠢的重复性劳动所困扰,因为当这种事情发生时就意味着他们没有在做只有他们才能做的事情---解决新问题。这样的浪费伤害每一个人。因此,无聊和乏味的工作不仅仅是令人不舒服而已,它们是极大的犯罪。 要想做的象个黑客,你必须完全相信这点并尽可能多地将乏味的工作自动化,不仅为你自己,也为了其他人(尤其是其他黑客们)。

(对此有一个明显的例外。黑客们有时也做一些重复性的枯燥工作以进行“脑力休息”,或是为练熟了某个技巧,或是获得一些除此无法获得的经验。但这是他自己的选择---有脑子的人不应该被迫做无聊的活儿。)

4 自由就是好

黑客们是天生的反权威主义者。任何能向你发命令的人会迫使你停止解决令你着迷的问题,同时,按照权威的一般思路,他通常会给出一些极其愚昧的理由。因此,不论何时何地,任何权威,只要他压迫你或其他黑客,就要和他斗到底。

(这并非说任何权力都不必要。儿童需要监护,罪犯也要被看管起来。 如果服从命令得到某种东西比起用其他方式得到它更节约时间,黑客会同意接受某种形式的权威。但这是一个有限的、特意的交易;权力想要的那种个人服从不是你的给予,而是无条件的服从。)

权力喜爱审查和保密。他们不信任自愿的合作和信息共享---他们只喜欢由他们控制的合作。因此,要想做的象个黑客,你得对审查、保密,以及使用武力或欺骗去压迫人们的做法有一种本能的反感和敌意。

5. 态度不能替代能力

要做一名黑客,你必须培养起这些态度。但只具备这些态度并不能使你成为一名黑客,就象这并不能使你成为一个运动健将和摇滚明星一样。成为一名黑客需要花费智力,实践,奉献和辛苦。

因此,你必须学会不相信态度,并尊重各种各样的能力。黑客们不会为那些故意装模做样的人浪费时间,但他们却非常尊重能力---尤其是做黑客的能力,不过任何能力总归是好的。具备很少人才能掌握的技术方面的能力尤其为好,而具备那些涉及脑力、技巧和聚精会神的能力为最好。

如果你尊敬能力,你会享受提高自己能力的乐趣---辛苦的工作和奉献会变成一种高度娱乐而非贱役。 要想成为一名黑客,这一点非常重要。

---基本黑客技术

黑客态度是重要的,但技术更加重要。态度无法替代技术,在你被别的黑客称为黑客之前,有一套基本的技术你必须掌握。 这套基本技术随着新技术的出现和老技术的过时也随时间在缓慢改变。例如,过去包括使用机器码编程,而知道最近才包括了HTML语言。但现在明显包括以下技术:

1 学习如何编程

这当然是最基本的黑客技术。如果你还不会任何计算机语言,我建议你从Python开始。它设计清晰,文档齐全,对初学者很合适。尽管是一门很好的初级语言,它不仅仅只是个玩具。它非常强大,灵活,也适合做大型项目。

但是记住,如果你只会一门语言,你将不会达到黑客所要求的技术水平,甚至也不能达到一个普通程序员的水平---你需要学会如何以一个通用的方法思考编程问题,独立于任何语言。要做一名真正的黑客,你需要学会如何在几天内通过一些手册,结合你现在所知,迅速掌握一门新语言。这意味着你应该学会几种不同的语言。

如果要做一些重要的编程,你将不得不学习C语言,Unix的核心语言。其他对黑客而言比较重要的语言包括Perl和LISP。 Perl很实用,值得一学;它被广泛用于活动网页和系统管理,因此即便你从不用Perl写程序,至少也应该能读懂它。 LISP 值得学习是因为当你最终掌握了它你会得到丰富的经验;这些经验使你在以后的日子里成为一个更好的程序员,即使你实际上可能很少使用LISP本身。

当然,实际上你最好四种都会。 (Python, C, Perl, and LISP). 除了是最重要的四种基本语言,它们还代表了四种非常不同的编程方法,每种都会让你受益非浅。

这里我无法完整地教会你如何编程---这是个复杂的活儿。但我可以告诉你,书本和课程也不能作到。几乎所有最好的黑客都是自学成材的。真正能起作用的就是去亲自读代码和写代码。

学习如何编程就象学习用自然语言写作一样。最好的做法是读一些大师的名著,试着自己写点东西,再读些,再写点,又读些,又写点....如此往复,直到你达到自己在范文中看到的简洁和力量。

过去找到好的代码去读是困难的,因为很少有大型程序的可用源代码能让新手练手。这种状况已经得到了很大的改善;现在有很多可用的开放源码软件,编程工具和操作系统(全都有黑客写成)。这使我们自然地来到第二个话题...

2 得到一个开放源码的Unix并学会使用、运行它

我假设你已经拥有了一台个人计算机或者有一个可用的( 今天的孩子们真幸福 :-) )。新手们最基本的一步就是得到一份Linux或BSD-Unix,安装在个人计算机上,并运行它。

当然,这世界上除了Unix还有其他操作系统。但它们都是以二进制形式发送的---你无法读到它的源码,更不可能修改它。尝试在DOS或Windows的机器上学习黑客技术,就象是在腿上绑了铁块去学跳舞。

除此之外,Unix还是Internet的操作系统。你可以不知道Unix而学会用Internet,但不懂它你就无法成为一名Internet黑客。因为这个原因,今天的黑客文化在很大程度上是以Unix为中心的。(这点并不总是真的,一些很早的黑客对此很不高兴,但Unix和Internet之间的共生关系已是如此之强,甚至连微软也无可奈何)

So,装一个Unix---我个人喜欢Linux,不过也有其他选择。(你也可以在同一台机器上同时运行DOS,Windows和Linux)学会它。运行它。用它跟Internet对话。读它的代码。试着去修改他。你会得到比微软操作系统上好的多的编程工具(包括C,Lisp, Python, and Perl),你会得到乐趣,并将学到比你想象的更多知识。

关于学习Unix的更多信息,请看 The Loginataka.

要得到Linux,请看: 哪里能得到 Linux.

3 学会如何使用WWW和写HTML

大多黑客文化建造的东西都在你看不见的地方发挥着作用,帮助工厂、办公室和大学正常运转,表面上很难看到它对他人的生活的影响。Web是一个大大的例外。即便政客也同意,这个巨大而耀眼的黑客玩具正在改变整个世界。单是这个原因(还有许多其它的), 你就需要学习如何掌握Web。

这并不是仅仅意味着如何使用浏览器(谁都会),而是要学会如何写HTML,Web的标记语言。如果你不会编程,写HTML会教你一些有助于学习的思考习惯。因此,先建起自己的主页。

但仅仅建一个主页也不能使你成为一名黑客。 Web里充满了各种网页。多数是无意义的,零信息量垃圾。

要想有价值,你的网页必须有内容---必须有趣或对其它黑客有用。这样,我们来到下一个话题....

---黑客文化中的地位

象大部分不涉及金钱的文化一样,黑客王国的运转靠声誉维护。你设法解决有趣的问题,但它们到底多有趣,你的解法有多好,是要有那些和你具有同样技术水平的人或比你更牛的人去评判的。

相应地,当你在玩黑客游戏时,你知道,你的分数要靠其他黑客对你的技术的评估给出。(这就是为什么只有在其它黑客称你为黑客是,你才算得上是一名黑客)这个事实常会被黑客是一项孤独的工作这一印象所减弱;它也会被另一个黑客文化的禁忌所减弱(此禁忌的效力正在减弱但仍很强大):拒绝承认自我或外部评估是一个人的动力。

特别地,黑客王国被人类学家们称为一种精英文化。在这里你不是凭借你对别人的统治来建立地位和名望,也不是靠美貌,或拥有其他人想要的东西,而是靠你的奉献。尤其是奉献你的时间,你的才智和你的技术成果。

要获得其他黑客的尊敬,你可以做以下五种事情:

1. 写开放源码的软件

第一个(也是最基本和传统的)是写些被其他黑客认为有趣或有用的程序,并把程序的原代码公布给大家共享。

(过去我们称之为“自由软件-free software”,但这却使很多不知free的精确含义的人感到不解。现在我们很多人使用“开放源码-open source”这个词)

黑客王国里最受尊敬的大牛们是那些写了大型的、具有广泛用途的软件,并把它们公布出去,使每人都在使用他的软件的人。

2. 帮助测试并修改开放源码的软件

黑客们也尊敬也那些使用、测试开放源码软件的人。在这个并非完美的世界上,我们不可避免地要花大量软件开发的时间在测试和抓臭虫阶段。 这就是为什么任何开放源码的作者稍加思考后都会告诉你好的beta测试员象红宝石一样珍贵。 (他知道如何清楚描述出错症状,很好地定位错误,能忍受快速发布的软件中的bug,愿意使用一些简单的诊断工具) 甚至他们中的一个能判断出哪个测试阶段是延长的、令人精疲力尽的噩梦,哪个只是一个有益健康的玩意儿。

如果你是个新手,试着找一个赶兴趣的正在开发的程序,作一个好的beta测试员。从帮着测试,到帮着抓臭虫,到最后帮着改程序,你会不断进步。以后你写程序时,会有别人来帮你,你就得到了你当初善举的回报。

3. 公布有用的信息

另一个好事是收集整理网页上有用有趣的信息或文档如FAQ。许多主要FAQ的维护者和其他开放源码的作者一样受到大家的尊敬。

4. 帮助维护基础设施的运转

黑客文化是靠自愿者运转的。要使Internet能正常工作,就要有大量枯燥的工作不得不去完成----管理mail list,newsgroup,维护大量文档,开发RFC和其它技术标准等等。做这类事情的人会得到很多人的尊敬,因为每人都知道这些事情是耗时耗力的苦役,不象编码那样好玩。做这些事情需要毅力。

5. 为黑客文化本身服务

最后,你可以为这个文化本身服务(例如象我这样,写一个“如何成为黑客”的初级教程 :-) )(hehe,象我这样把它翻成中文 :-) ) 这并非一定要在你已经在这里呆了很久,精通所有以上4点,获得一定声誉后后才能去做。

黑客文化没有领袖。精确地说,它确实有些文化英雄和部落长者和历史学家和发言人。若你在这圈内呆的够长,你或许成为其中之一。

记住:黑客们不相信他们的部落长者的自夸的炫耀,因此很明显地去追求这种名誉是危险的。你必须具备基本的谦虚和优雅。

---黑客和怪人(Nerd)的联系

同流行的传说相反,做一名黑客并不一定要你是个怪人。然而,很多黑客都是怪人。做一个出世者有助于你集中精力进行更重要的事情,如思考和编程。

因此,很多黑客都愿意接受“怪人”这个标签,更有甚者愿意使用“傻子(geek)”一词并自以为豪---这是宣布他们与主流社会不合作的声明。

如果你能集中足够的精力来做好黑客同时还能有正常的生活,这很好。今天作到这一点比我在1970年代是个新手是要容易的多。今天主流文化对技术怪人要友善的多。甚至有更多的人意识到黑客通常更富爱心,是块很好的做恋人和配偶的材料。 更多信息见 Girl's Guide to Geek Guys.

如果你因为生活上不如意而为做黑客而吸引,那也没什么---至少你不会分神了。或许以后你会找到自己的另一半。

---风格的意义

重申一下,做一名黑客,你必须进入黑客精神之中。当你不在计算机边上时,你仍然有很多事情可做。它们并不能替代真正的编程(没有什么能替代编程),但很多黑客都那么做,并感到它们与黑客精神存在一种本质的关联。

阅读科幻小说。参加科幻小说讨论会。(一个很好的寻找黑客的场合)

研究禅宗,或练功习武。

练就一双精确的耳朵,学会鉴赏特别的音乐。学会玩某种乐器,或唱歌。

提高对双关语的鉴赏。

学会流畅地用母语写作。(令人惊讶的时,我所知道的所有最棒的黑客,都是很不错的作家)

这些事情,你做的越多,你就越适合做黑客。至于为什么偏偏是这些事情,原因并不很清楚,但它们都涉及到了左-右脑的综合技巧,这似乎是关键所在。(黑客们既需要清晰的逻辑思维,有时也需要强烈的跳出逻辑之外的直觉)

最后,还有一些不要去做的事情。

不要使用愚蠢的,过于哗众取宠的ID

不要自称为网络崩客(punk) ,也不要对那些人浪费时间

不要寄出充满拼写和语法错误的email,或张贴错误百出的文章

做以上的事情,会使大大损害你的声誉。黑客们个个记忆超群---你将需要数年的时间让他们忘记你的愚蠢。

---其它资源

Peter Seebach为那些不知如何同黑客打交道的经理们维护了一个非常精彩的黑客FAQ。

The Loginataka 有许多关于如何正确培养一个Unix黑客的态度的材料。

我也曾写过一篇“黑客文化简史”。

我还写过另一篇文章,“大教堂与集市”,解释了许多Linux和开放源码文化的运做原理。我还在它的续集“开拓智域”一文中有更直接的论述。

---FAQ(常问问题解答)

问:你会教我如何做黑客吗?

自从第一次发布此页,我每周都会得到一些请求,要我“教会他如何做黑客”;遗憾的是,我没有足够的时间和精力来做这个;我自己的编程项目已经占用了我110%的时间。

甚至即便我想教你也不可能,黑客基本上是一项需要你自行修炼的的态度和技术。你会发现即使真正的黑客想帮助你,如果你乞求他们填鸭一样教你的话,你不会赢得他们的尊敬。

首先去学习。显示你在尝试,你能靠自己去学习。然后再去向黑客们请教问题。

问:你会帮我“黑”掉一个站点吗?或者教我怎么黑它?

No. 任何在读完FAQ后还问此问题人,都是愚不可及的家伙,即使有时间我也不会理睬。 任何发给我的此类mail都会被忽略或被痛斥。

问:哪里能找到真正的可以与之交流的黑客?

最佳办法是就近参加一个Unix或Linux的用户组,参加他们的会议。

问:我该先学哪种语言?

HTML, 如果你还不会的话.

但它不是一个真正的编程语言。当你准备编程时,我建议你从 Python开始. 会有很多人向你推荐Perl,它比Python还受欢迎,但却难学一些。

C 是非常重要的,但它却是最难学的。不要一开始就尝试学C。

问:开放源码的自由软件不会使程序员饿肚子吗?

这似乎不大可能---到目前,开放源码软件产业创造了而不是消灭了大量工作机会。

如果写一个程序比不写一个程序只是个纯粹经济上的收益的话,无论它是否免费,只要它被完成,程序员都会从中得到回报。而且,无论软件是由多么的free的方法开发的,对更新的软件应用的需求总是会有的。

问:我从何学起?哪里有免费的Unix?

本页的其他地方指向最常用的免费Unix。要做一名黑客,你需要自立自强,以及自我教育的能力。

黑客教程:

我就是hack!

马斯克脑控黑科技,可能会为黑客攻击大脑、篡改记忆留下后门吗?

2019年,技术狂人钢铁侠马斯克发布了他在意念控制、脑机接口上的规划蓝图,未来只需意念操作即可控制所有设备,而且记忆植入也成了大家最希望拥有的技能,还有录制记忆,任何时刻都可以身临其境的回味第一次约会的甜蜜往事!

但最近美网络专家警告,接受植入式电子设备增加记忆以及脑机控制设备的网络极客,可能将成为第一批被黑客直接入侵大脑的白老鼠!

马斯克的脑控黑科技,到底是干啥的?

英国科幻剧《黑镜》中就有一个记录芯片植入的剧情,每个人的耳后都有一个记忆芯片记录生活中的事无巨细,任何时刻都可以被查阅!而《冒死记录中国神秘事件》这部网络神篇也有记忆被提取的描述,开始李胜利以为只是一个头戴式摄像头的记录,但后来他恐怖的发现,这就是一个人眼睛所见即为所得!

当然钢铁侠马斯克的人机交互的脑机植入可没如此强大的功能,它的简单解释就是用意念控制机器,或者简单的说控制你周围符合协议的电器设备,那么要如何来实现呢?

读取大脑的行为,并将其转换成控制命令的方式主要有两种,一种是头戴非侵入式,另一种则是在大脑中植入芯片,并且用4-6微米的导线接触需要读取的区域,马斯克的脑机接口研发公司Neuralink用的就是这种很黄很暴力的侵入式!

导线似乎不难,但其实要让人体接受这个外来物还是很困难的,当然这个我们并不是特别关心,最主要的是芯片,Neuralink开发了一种能读取和放大大脑生物电信号的芯片,从大脑皮层收集到的信号会通过无线传输到附近的接收器,从而控制周围符合协议的设备!

尽管现在只能做到简单的控制,但对于那些高位截瘫的病人来说,即使越过无法传递信号的脊髓完成最简单的动作信号传递,也是相当了不起的成就,或者退而求其次,通过控制其他设备比如外骨骼完成自己行走等目的,这个市场庞大到难以想象!

而未来的目标则是交互式,比如向大脑直接输入信号,模拟各种知觉与感觉,到那个时代来临,人类真正的沉浸式VR时代即将来临,也将越来越难分辨现实与虚拟的差别!

植入式记忆装置与脑机控制设备,风险有多大?

要入侵人的大脑,除了骗子那三寸不烂之舌,还真没什么好办法!也许诺兰的《盗梦空间》可以给我们另一个方法,但那只是停留在电影中,而脑机接口则开启了这个超级漏洞!估计很多年前的一则新闻大家应该听说过黑掉ATM机,让它自动吐钞的美国超级黑客巴纳比·杰克!

他有两项未公布的黑客入侵技术,一项是他利用自己开发的工具,能在扫描并识别100米以内的胰岛素泵,并且控制它给出300个单位的胰岛素,这对于I型糖尿病人来说,这是一个致死剂量!另一项绝技是入侵心脏起搏器,控制它发送830V的高压,直接让心脏休克!

可惜他准备在2013年年度黑客“黑帽”大会前在家中神秘死亡,据调查并未有他杀迹象!不过坊间传闻他因即将公开的漏洞而死,但到底是什么原因,估计真相只掌握在少数人手中!

美计算机专家的警告

脑机接口的植入在未来将极大的改变我们的生活,但也将大脑开启一扇与外界沟通的窗户,尽管我们为它设置了纱窗,但根本就挡不住那些无孔不入的黑客!所以芯片和连接大脑区域的导线将成为黑客入侵大脑的桥梁!

沃特福德技术学院的专家Sasitharan Balasubramaniam博士称“这个威胁不仅在信息层面,还可能是物理上对大脑的永久损伤。”

比如某个脉冲电信号将会破坏神经元的生物传递过程,可能会导致大脑思维混乱,或者丢失关键记忆等等,尽管现在还这样的技术还很远,毕竟连脑机接口都还没普及,但这个时间距离现在可能已经不远了!

黑客的行为特征。

这些多百度一下,就可以得到答案。以下仅供参考。

要想更好的保护网络不受黑客的攻击,就必须对黑客的攻击方法、攻击原理、攻击过程有深入的、详细的了解,只有这样才能更有效、更具有针对性的进行主动防护。下面通过对黑客攻击方法的特征分析,来研究如何对黑客攻击行为进行检测与防御。

一、反攻击技术的核心问题

反攻击技术(入侵检测技术)的核心问题是如何截获所有的网络信息。目前主要是通过两种途径来获取信息,一种是通过网络侦听的途径(如Sniffer,Vpacket等程序)来获取所有的网络信息(数据包信息,网络流量信息、网络状态信息、网络管理信息等),这既是黑客进行攻击的必然途径,也是进行反攻击的必要途径;另一种是通过对操作系统和应用程序的系统日志进行分析,来发现入侵行为和系统潜在的安全漏洞。

二、黑客攻击的主要方式

黑客对网络的攻击方式是多种多样的,一般来讲,攻击总是利用“系统配置的缺陷”,“操作系统的安全漏洞”或“通信协议的安全漏洞”来进行的。到目前为止,已经发现的攻击方式超过2000种,其中对绝大部分黑客攻击手段已经有相应的解决方法,这些攻击大概可以划分为以下六类:

1.拒绝服务攻击:一般情况下,拒绝服务攻击是通过使被攻击对象(通常是工作站或重要服务器)的系统关键资源过载,从而使被攻击对象停止部分或全部服务。目前已知的拒绝服务攻击就有几百种,它是最基本的入侵攻击手段,也是最难对付的入侵攻击之一,典型示例有SYN Flood攻击、Ping Flood攻击、Land攻击、WinNuke攻击等。

2.非授权访问尝试:是攻击者对被保护文件进行读、写或执行的尝试,也包括为获得被保护访问权限所做的尝试。

3.预探测攻击:在连续的非授权访问尝试过程中,攻击者为了获得网络内部的信息及网络周围的信息,通常使用这种攻击尝试,典型示例包括SATAN扫描、端口扫描和IP半途扫描等。

4.可疑活动:是通常定义的“标准”网络通信范畴之外的活动,也可以指网络上不希望有的活动,如IP Unknown Protocol和Duplicate IP Address事件等。

5.协议解码:协议解码可用于以上任何一种非期望的方法中,网络或安全管理员需要进行解码工作,并获得相应的结果,解码后的协议信息可能表明期望的活动,如FTU User和Portmapper Proxy等解码方式。

6.系统代理攻击:这种攻击通常是针对单个主机发起的,而并非整个网络,通过RealSecure系统代理可以对它们进行监视。

三、黑客攻击行为的特征分析与反攻击技术

入侵检测的最基本手段是采用模式匹配的方法来发现入侵攻击行为,要有效的进反攻击首先必须了解入侵的原理和工作机理,只有这样才能做到知己知彼,从而有效的防止入侵攻击行为的发生。下面我们针对几种典型的入侵攻击进行分析,并提出相应的对策。

1.Land攻击

攻击类型:Land攻击是一种拒绝服务攻击。

攻击特征:用于Land攻击的数据包中的源地址和目标地址是相同的,因为当操作系统接收到这类数据包时,不知道该如何处理堆栈中通信源地址和目的地址相同的这种情况,或者循环发送和接收该数据包,消耗大量的系统资源,从而有可能造成系统崩溃或死机等现象。

检测方法:判断网络数据包的源地址和目标地址是否相同。

反攻击方法:适当配置防火墙设备或过滤路由器的过滤规则就可以防止这种攻击行为(一般是丢弃该数据包),并对这种攻击进行审计(记录事件发生的时间,源主机和目标主机的MAC地址和IP地址)。

2.TCP SYN攻击

攻击类型:TCP SYN攻击是一种拒绝服务攻击。

攻击特征:它是利用TCP客户机与服务器之间三次握手过程的缺陷来进行的。攻击者通过伪造源IP地址向被攻击者发送大量的SYN数据包,当被攻击主机接收到大量的SYN数据包时,需要使用大量的缓存来处理这些连接,并将SYN ACK数据包发送回错误的IP地址,并一直等待ACK数据包的回应,最终导致缓存用完,不能再处理其它合法的SYN连接,即不能对外提供正常服务。

检测方法:检查单位时间内收到的SYN连接否收超过系统设定的值。

反攻击方法:当接收到大量的SYN数据包时,通知防火墙阻断连接请求或丢弃这些数据包,并进行系统审计。

3.Ping Of Death攻击

攻击类型:Ping Of Death攻击是一种拒绝服务攻击。

攻击特征:该攻击数据包大于65535个字节。由于部分操作系统接收到长度大于65535字节的数据包时,就会造成内存溢出、系统崩溃、重启、内核失败等后果,从而达到攻击的目的。

检测方法:判断数据包的大小是否大于65535个字节。

反攻击方法:使用新的补丁程序,当收到大于65535个字节的数据包时,丢弃该数据包,并进行系统审计。

4.WinNuke攻击

攻击类型:WinNuke攻击是一种拒绝服务攻击。

攻击特征:WinNuke攻击又称带外传输攻击,它的特征是攻击目标端口,被攻击的目标端口通常是139、138、137、113、53,而且URG位设为“1”,即紧急模式。

检测方法:判断数据包目标端口是否为139、138、137等,并判断URG位是否为“1”。

反攻击方法:适当配置防火墙设备或过滤路由器就可以防止这种攻击手段(丢弃该数据包),并对这种攻击进行审计(记录事件发生的时间,源主机和目标主机的MAC地址和IP地址MAC)。

5.Teardrop攻击

攻击类型:Teardrop攻击是一种拒绝服务攻击。

攻击特征:Teardrop是基于UDP的病态分片数据包的攻击方法,其工作原理是向被攻击者发送多个分片的IP包(IP分片数据包中包括该分片数据包属于哪个数据包以及在数据包中的位置等信息),某些操作系统收到含有重叠偏移的伪造分片数据包时将会出现系统崩溃、重启等现象。

检测方法:对接收到的分片数据包进行分析,计算数据包的片偏移量(Offset)是否有误。

反攻击方法:添加系统补丁程序,丢弃收到的病态分片数据包并对这种攻击进行审计。

6.TCP/UDP端口扫描

攻击类型:TCP/UDP端口扫描是一种预探测攻击。

攻击特征:对被攻击主机的不同端口发送TCP或UDP连接请求,探测被攻击对象运行的服务类型。

检测方法:统计外界对系统端口的连接请求,特别是对21、23、25、53、80、8000、8080等以外的非常用端口的连接请求。

反攻击方法:当收到多个TCP/UDP数据包对异常端口的连接请求时,通知防火墙阻断连接请求,并对攻击者的IP地址和MAC地址进行审计。

对于某些较复杂的入侵攻击行为(如分布式攻击、组合攻击)不但需要采用模式匹配的方法,还需要利用状态转移、网络拓扑结构等方法来进行入侵检测。

四、入侵检测系统的几点思考

从性能上讲,入侵检测系统面临的一个矛盾就是系统性能与功能的折衷,即对数据进行全面复杂的检验构成了对系统实时性要求很大的挑战。

从技术上讲,入侵检测系统存在一些亟待解决的问题,主要表现在以下几个方面:

1.如何识别“大规模的组合式、分布式的入侵攻击”目前还没有较好的方法和成熟的解决方案。从Yahoo等著名ICP的攻击事件中,我们了解到安全问题日渐突出,攻击者的水平在不断地提高,加上日趋成熟多样的攻击工具,以及越来越复杂的攻击手法,使入侵检测系统必须不断跟踪最新的安全技术。

2.网络入侵检测系统通过匹配网络数据包发现攻击行为,入侵检测系统往往假设攻击信息是明文传输的,因此对信息的改变或重新编码就可能骗过入侵检测系统的检测,因此字符串匹配的方法对于加密过的数据包就显得无能为力。

3.网络设备越来越复杂、越来越多样化就要求入侵检测系统能有所定制,以适应更多的环境的要求。

4.对入侵检测系统的评价还没有客观的标准,标准的不统一使得入侵检测系统之间不易互联。入侵检测系统是一项新兴技术,随着技术的发展和对新攻击识别的增加,入侵检测系统需要不断的升级才能保证网络的安全性。

5.采用不恰当的自动反应同样会给入侵检测系统造成风险。入侵检测系统通常可以与防火墙结合在一起工作,当入侵检测系统发现攻击行为时,过滤掉所有来自攻击者的IP数据包,当一个攻击者假冒大量不同的IP进行模拟攻击时,入侵检测系统自动配置防火墙将这些实际上并没有进行任何攻击的地址都过滤掉,于是造成新的拒绝服务访问。

6.对IDS自身的攻击。与其他系统一样,IDS本身也存在安全漏洞,若对IDS攻击成功,则导致报警失灵,入侵者在其后的行为将无法被记录,因此要求系统应该采取多种安全防护手段。

7.随着网络的带宽的不断增加,如何开发基于高速网络的检测器(事件分析器)仍然存在很多技术上的困难。

入侵检测系统作为网络安全关键性测防系统,具有很多值得进一步深入研究的方面,有待于我们进一步完善,为今后的网络发展提供有效的安全手段。

“黑客”具体是干什么的 ?

---什么是黑客?

Jargon File中对“黑客”一词给出了很多个定义,大部分定义都涉及高超的编程技术,强烈的解决问题和克服限制的欲望。如果你想知道如何成为一名黑客,那么好,只有两方面是重要的。(态度和技术)

长久以来,存在一个专家级程序员和网络高手的共享文化社群,其历史可以追溯到几十年前第一台分时共享的小型机和最早的ARPAnet实验时期。 这个文化的参与者们创造了“黑客”这个词。 黑客们建起了Internet。黑客们使Unix操作系统成为今天这个样子。黑客们搭起了Usenet。黑客们让WWW正常运转。如果你是这个文化的一部分,如果你已经为它作了些贡献,而且圈内的其他人也知道你是谁并称你为一个黑客,那么你就是一名黑客。

黑客精神并不仅仅局限于软件黑客文化圈中。有些人同样以黑客态度对待其它事情如电子和音乐---事实上,你可以在任何较高级别的科学和艺术中发现它。软件黑客们识别出这些在其他领域同类并把他们也称作黑客---有人宣称黑客实际上是独立于他们工作领域的。 但在本文中,我们将注意力集中在软件黑客的技术和态度,以及发明了“黑客”一词的哪个共享文化传统之上。

另外还有一群人,他们大声嚷嚷着自己是黑客,实际上他们却不是。他们是一些蓄意破坏计算机和电话系统的人(多数是青春期的少年)。真正的黑客把这些人叫做“骇客”(cracker),并不屑与之为伍。多数真正的黑客认为骇客们是些不负责任的懒家伙,还没什么大本事。专门以破坏别人安全为目的的行为并不能使你成为一名黑客, 正如拿根铁丝能打开汽车并不能使你成为一个汽车工程师。不幸的是,很多记者和作家往往错把“骇客”当成黑客;这种做法激怒真正的黑客。

根本的区别是:黑客们建设,而骇客们破坏。

如果你想成为一名黑客,继续读下去。如果你想做一个骇客,去读 alt.2600 新闻组,并在发现你并不像自己想象的那么聪明的时候去坐5到10次监狱。 关于骇客,我只想说这么多。

---黑客的态度

黑客们解决问题,建设事物,信仰自由和双向的帮助,人人为我, 我为人人。

要想被认为是一名黑客,你的行为必须显示出你已经具备了这种态度。要想做的好象你具备这种态度,你就不得不真的具备这种态度。但是如果你想靠培养黑客态度在黑客文化中得到承认,那就大错特错了。因为成为具备这些特质的这种人对你自己非常重要,有助于你学习,并给你提供源源不断的活力。同所有有创造性的艺术一样,成为大师的最有效方法就是模仿大师的精神---不是仅从理智上,更要从感情上进行模仿。

So,如果你想做一名黑客,请重复以下事情直到你相信它们:

1 这世界充满待解决的迷人问题

做一名黑客有很多乐趣,但却是些要费很多气力方能得到的乐趣。 这些努力需要动力。成功的运动员从健壮体魄,挑战自我极限中汲取动力。同样,做黑客,你必须

要有从解决问题,磨练技术,锻炼智力中得到基本的热望。如果你还不是这类人又想做黑客,你就要设法成为这样的人。否则你会发现,你的黑客热情会被其他诱惑无情地吞噬掉---如金钱、性和社会上的虚名。

(同样你必须对你自己的学习能力建立信心---相信尽管你对某问题所知不多,但如果你一点一点地学习、试探,你最终会掌握并解决它。)

2. 一个问题不应该被解决两次

聪明的脑瓜是宝贵的,有限的资源。当这个世界还充满其他有待解决的有趣问题之时,他们不应该被浪费在重新发明轮子这些事情上。 作为一名黑客,你必须相信其他黑客的思考时间是宝贵的---因此共享信息,解决问题并发布结果给其他黑客几乎是一种道义,这样其他人就可以去解决新问题而不是重复地对付旧问题。

(你不必认为你一定要把你的发明创造公布出去,但这样做的黑客是赢得大家尊敬最多的人。卖些钱来给自己养家糊口,买房买车买计算机甚至发大财和黑客价值也是相容的,只要你别忘记你还是个黑客。)

3. 无聊和乏味的工作是罪恶

黑客们应该从来不会被愚蠢的重复性劳动所困扰,因为当这种事情发生时就意味着他们没有在做只有他们才能做的事情---解决新问题。这样的浪费伤害每一个人。因此,无聊和乏味的工作不仅仅是令人不舒服而已,它们是极大的犯罪。 要想做的象个黑客,你必须完全相信这点并尽可能多地将乏味的工作自动化,不仅为你自己,也为了其他人(尤其是其他黑客们)。

(对此有一个明显的例外。黑客们有时也做一些重复性的枯燥工作以进行“脑力休息”,或是为练熟了某个技巧,或是获得一些除此无法获得的经验。但这是他自己的选择---有脑子的人不应该被迫做无聊的活儿。)

4 自由就是好

黑客们是天生的反权威主义者。任何能向你发命令的人会迫使你停止解决令你着迷的问题,同时,按照权威的一般思路,他通常会给出一些极其愚昧的理由。因此,不论何时何地,任何权威,只要他压迫你或其他黑客,就要和他斗到底。

(这并非说任何权力都不必要。儿童需要监护,罪犯也要被看管起来。 如果服从命令得到某种东西比起用其他方式得到它更节约时间,黑客会同意接受某种形式的权威。但这是一个有限的、特意的交易;权力想要的那种个人服从不是你的给予,而是无条件的服从。)

权力喜爱审查和保密。他们不信任自愿的合作和信息共享---他们只喜欢由他们控制的合作。因此,要想做的象个黑客,你得对审查、保密,以及使用武力或欺骗去压迫人们的做法有一种本能的反感和敌意。

5. 态度不能替代能力

要做一名黑客,你必须培养起这些态度。但只具备这些态度并不能使你成为一名黑客,就象这并不能使你成为一个运动健将和摇滚明星一样。成为一名黑客需要花费智力,实践,奉献和辛苦。

因此,你必须学会不相信态度,并尊重各种各样的能力。黑客们不会为那些故意装模做样的人浪费时间,但他们却非常尊重能力---尤其是做黑客的能力,不过任何能力总归是好的。具备很少人才能掌握的技术方面的能力尤其为好,而具备那些涉及脑力、技巧和聚精会神的能力为最好。

如果你尊敬能力,你会享受提高自己能力的乐趣---辛苦的工作和奉献会变成一种高度娱乐而非贱役。 要想成为一名黑客,这一点非常重要。

---基本黑客技术

黑客态度是重要的,但技术更加重要。态度无法替代技术,在你被别的黑客称为黑客之前,有一套基本的技术你必须掌握。 这套基本技术随着新技术的出现和老技术的过时也随时间在缓慢改变。例如,过去包括使用机器码编程,而知道最近才包括了HTML语言。但现在明显包括以下技术:

1 学习如何编程

这当然是最基本的黑客技术。如果你还不会任何计算机语言,我建议你从Python开始。它设计清晰,文档齐全,对初学者很合适。尽管是一门很好的初级语言,它不仅仅只是个玩具。它非常强大,灵活,也适合做大型项目。

但是记住,如果你只会一门语言,你将不会达到黑客所要求的技术水平,甚至也不能达到一个普通程序员的水平---你需要学会如何以一个通用的方法思考编程问题,独立于任何语言。要做一名真正的黑客,你需要学会如何在几天内通过一些手册,结合你现在所知,迅速掌握一门新语言。这意味着你应该学会几种不同的语言。

如果要做一些重要的编程,你将不得不学习C语言,Unix的核心语言。其他对黑客而言比较重要的语言包括Perl和LISP。 Perl很实用,值得一学;它被广泛用于活动网页和系统管理,因此即便你从不用Perl写程序,至少也应该能读懂它。 LISP 值得学习是因为当你最终掌握了它你会得到丰富的经验;这些经验使你在以后的日子里成为一个更好的程序员,即使你实际上可能很少使用LISP本身。

当然,实际上你最好四种都会。 (Python, C, Perl, and LISP). 除了是最重要的四种基本语言,它们还代表了四种非常不同的编程方法,每种都会让你受益非浅。

这里我无法完整地教会你如何编程---这是个复杂的活儿。但我可以告诉你,书本和课程也不能作到。几乎所有最好的黑客都是自学成材的。真正能起作用的就是去亲自读代码和写代码。

学习如何编程就象学习用自然语言写作一样。最好的做法是读一些大师的名著,试着自己写点东西,再读些,再写点,又读些,又写点....如此往复,直到你达到自己在范文中看到的简洁和力量。

过去找到好的代码去读是困难的,因为很少有大型程序的可用源代码能让新手练手。这种状况已经得到了很大的改善;现在有很多可用的开放源码软件,编程工具和操作系统(全都有黑客写成)。这使我们自然地来到第二个话题...

2 得到一个开放源码的Unix并学会使用、运行它

我假设你已经拥有了一台个人计算机或者有一个可用的( 今天的孩子们真幸福 :-) )。新手们最基本的一步就是得到一份Linux或BSD-Unix,安装在个人计算机上,并运行它。

当然,这世界上除了Unix还有其他操作系统。但它们都是以二进制形式发送的---你无法读到它的源码,更不可能修改它。尝试在DOS或Windows的机器上学习黑客技术,就象是在腿上绑了铁块去学跳舞。

除此之外,Unix还是Internet的操作系统。你可以不知道Unix而学会用Internet,但不懂它你就无法成为一名Internet黑客。因为这个原因,今天的黑客文化在很大程度上是以Unix为中心的。(这点并不总是真的,一些很早的黑客对此很不高兴,但Unix和Internet之间的共生关系已是如此之强,甚至连微软也无可奈何)

So,装一个Unix---我个人喜欢Linux,不过也有其他选择。(你也可以在同一台机器上同时运行DOS,Windows和Linux)学会它。运行它。用它跟Internet对话。读它的代码。试着去修改他。你会得到比微软操作系统上好的多的编程工具(包括C,Lisp, Python, and Perl),你会得到乐趣,并将学到比你想象的更多知识。

关于学习Unix的更多信息,请看 The Loginataka.

要得到Linux,请看: 哪里能得到 Linux.

3 学会如何使用WWW和写HTML

大多黑客文化建造的东西都在你看不见的地方发挥着作用,帮助工厂、办公室和大学正常运转,表面上很难看到它对他人的生活的影响。Web是一个大大的例外。即便政客也同意,这个巨大而耀眼的黑客玩具正在改变整个世界。单是这个原因(还有许多其它的), 你就需要学习如何掌握Web。

这并不是仅仅意味着如何使用浏览器(谁都会),而是要学会如何写HTML,Web的标记语言。如果你不会编程,写HTML会教你一些有助于学习的思考习惯。因此,先建起自己的主页。

但仅仅建一个主页也不能使你成为一名黑客。 Web里充满了各种网页。多数是无意义的,零信息量垃圾。

要想有价值,你的网页必须有内容---必须有趣或对其它黑客有用。这样,我们来到下一个话题....

---黑客文化中的地位

象大部分不涉及金钱的文化一样,黑客王国的运转靠声誉维护。你设法解决有趣的问题,但它们到底多有趣,你的解法有多好,是要有那些和你具有同样技术水平的人或比你更牛的人去评判的。

相应地,当你在玩黑客游戏时,你知道,你的分数要靠其他黑客对你的技术的评估给出。(这就是为什么只有在其它黑客称你为黑客是,你才算得上是一名黑客)这个事实常会被黑客是一项孤独的工作这一印象所减弱;它也会被另一个黑客文化的禁忌所减弱(此禁忌的效力正在减弱但仍很强大):拒绝承认自我或外部评估是一个人的动力。

特别地,黑客王国被人类学家们称为一种精英文化。在这里你不是凭借你对别人的统治来建立地位和名望,也不是靠美貌,或拥有其他人想要的东西,而是靠你的奉献。尤其是奉献你的时间,你的才智和你的技术成果。

要获得其他黑客的尊敬,你可以做以下五种事情:

1. 写开放源码的软件

第一个(也是最基本和传统的)是写些被其他黑客认为有趣或有用的程序,并把程序的原代码公布给大家共享。

(过去我们称之为“自由软件-free software”,但这却使很多不知free的精确含义的人感到不解。现在我们很多人使用“开放源码-open source”这个词)

黑客王国里最受尊敬的大牛们是那些写了大型的、具有广泛用途的软件,并把它们公布出去,使每人都在使用他的软件的人。

2. 帮助测试并修改开放源码的软件

黑客们也尊敬也那些使用、测试开放源码软件的人。在这个并非完美的世界上,我们不可避免地要花大量软件开发的时间在测试和抓臭虫阶段。 这就是为什么任何开放源码的作者稍加思考后都会告诉你好的beta测试员象红宝石一样珍贵。 (他知道如何清楚描述出错症状,很好地定位错误,能忍受快速发布的软件中的bug,愿意使用一些简单的诊断工具) 甚至他们中的一个能判断出哪个测试阶段是延长的、令人精疲力尽的噩梦,哪个只是一个有益健康的玩意儿。

如果你是个新手,试着找一个赶兴趣的正在开发的程序,作一个好的beta测试员。从帮着测试,到帮着抓臭虫,到最后帮着改程序,你会不断进步。以后你写程序时,会有别人来帮你,你就得到了你当初善举的回报。

3. 公布有用的信息

另一个好事是收集整理网页上有用有趣的信息或文档如FAQ。许多主要FAQ的维护者和其他开放源码的作者一样受到大家的尊敬。

4. 帮助维护基础设施的运转

黑客文化是靠自愿者运转的。要使Internet能正常工作,就要有大量枯燥的工作不得不去完成----管理mail list,newsgroup,维护大量文档,开发RFC和其它技术标准等等。做这类事情的人会得到很多人的尊敬,因为每人都知道这些事情是耗时耗力的苦役,不象编码那样好玩。做这些事情需要毅力。

5. 为黑客文化本身服务

最后,你可以为这个文化本身服务(例如象我这样,写一个“如何成为黑客”的初级教程 :-) )(hehe,象我这样把它翻成中文 :-) ) 这并非一定要在你已经在这里呆了很久,精通所有以上4点,获得一定声誉后后才能去做。

黑客文化没有领袖。精确地说,它确实有些文化英雄和部落长者和历史学家和发言人。若你在这圈内呆的够长,你或许成为其中之一。

记住:黑客们不相信他们的部落长者的自夸的炫耀,因此很明显地去追求这种名誉是危险的。你必须具备基本的谦虚和优雅。

---黑客和怪人(Nerd)的联系

同流行的传说相反,做一名黑客并不一定要你是个怪人。然而,很多黑客都是怪人。做一个出世者有助于你集中精力进行更重要的事情,如思考和编程。

因此,很多黑客都愿意接受“怪人”这个标签,更有甚者愿意使用“傻子(geek)”一词并自以为豪---这是宣布他们与主流社会不合作的声明。

如果你能集中足够的精力来做好黑客同时还能有正常的生活,这很好。今天作到这一点比我在1970年代是个新手是要容易的多。今天主流文化对技术怪人要友善的多。甚至有更多的人意识到黑客通常更富爱心,是块很好的做恋人和配偶的材料。 更多信息见 Girl's Guide to Geek Guys.

如果你因为生活上不如意而为做黑客而吸引,那也没什么---至少你不会分神了。或许以后你会找到自己的另一半。

---风格的意义

重申一下,做一名黑客,你必须进入黑客精神之中。当你不在计算机边上时,你仍然有很多事情可做。它们并不能替代真正的编程(没有什么能替代编程),但很多黑客都那么做,并感到它们与黑客精神存在一种本质的关联。

阅读科幻小说。参加科幻小说讨论会。(一个很好的寻找黑客的场合)

研究禅宗,或练功习武。

练就一双精确的耳朵,学会鉴赏特别的音乐。学会玩某种乐器,或唱歌。

提高对双关语的鉴赏。

学会流畅地用母语写作。(令人惊讶的时,我所知道的所有最棒的黑客,都是很不错的作家)

这些事情,你做的越多,你就越适合做黑客。至于为什么偏偏是这些事情,原因并不很清楚,但它们都涉及到了左-右脑的综合技巧,这似乎是关键所在。(黑客们既需要清晰的逻辑思维,有时也需要强烈的跳出逻辑之外的直觉)

最后,还有一些不要去做的事情。

不要使用愚蠢的,过于哗众取宠的ID

不要自称为网络崩客(punk) ,也不要对那些人浪费时间

不要寄出充满拼写和语法错误的email,或张贴错误百出的文章

做以上的事情,会使大大损害你的声誉。黑客们个个记忆超群---你将需要数年的时间让他们忘记你的愚蠢。

---其它资源

Peter Seebach为那些不知如何同黑客打交道的经理们维护了一个非常精彩的黑客FAQ。

The Loginataka 有许多关于如何正确培养一个Unix黑客的态度的材料。

我也曾写过一篇“黑客文化简史”。

我还写过另一篇文章,“大教堂与集市”,解释了许多Linux和开放源码文化的运做原理。我还在它的续集“开拓智域”一文中有更直接的论述。

---FAQ(常问问题解答)

问:你会教我如何做黑客吗?

自从第一次发布此页,我每周都会得到一些请求,要我“教会他如何做黑客”;遗憾的是,我没有足够的时间和精力来做这个;我自己的编程项目已经占用了我110%的时间。

甚至即便我想教你也不可能,黑客基本上是一项需要你自行修炼的的态度和技术。你会发现即使真正的黑客想帮助你,如果你乞求他们填鸭一样教你的话,你不会赢得他们的尊敬。

首先去学习。显示你在尝试,你能靠自己去学习。然后再去向黑客们请教问题。

问:你会帮我“黑”掉一个站点吗?或者教我怎么黑它?

No. 任何在读完FAQ后还问此问题人,都是愚不可及的家伙,即使有时间我也不会理睬。 任何发给我的此类mail都会被忽略或被痛斥。

问:哪里能找到真正的可以与之交流的黑客?

最佳办法是就近参加一个Unix或Linux的用户组,参加他们的会议。

问:我该先学哪种语言?

HTML, 如果你还不会的话.

但它不是一个真正的编程语言。当你准备编程时,我建议你从 Python开始. 会有很多人向你推荐Perl,它比Python还受欢迎,但却难学一些。

C 是非常重要的,但它却是最难学的。不要一开始就尝试学C。

问:开放源码的自由软件不会使程序员饿肚子吗?

这似乎不大可能---到目前,开放源码软件产业创造了而不是消灭了大量工作机会。

如果写一个程序比不写一个程序只是个纯粹经济上的收益的话,无论它是否免费,只要它被完成,程序员都会从中得到回报。而且,无论软件是由多么的free的方法开发的,对更新的软件应用的需求总是会有的。

问:我从何学起?哪里有免费的Unix?

本页的其他地方指向最常用的免费Unix。要做一名黑客,你需要自立自强,以及自我教育的能力。

参考资料:国内著名安全站点:

1条大神的评论

  • avatar
    访客 2022-10-29 上午 05:08:21

    之为“自由软件-free software”,但这却使很多不知free的精确含义的人感到不解。现在我们很多人使用“开放源码-open source”这个词) 黑客

发表评论