當前位置:成語大全網 - 新華字典 - 有關黑客的壹切

有關黑客的壹切

黑客是對英語hacker的翻譯,hacker原意是指用斧頭砍材的工人,最早被引進計算機圈則可追溯自1960年代。他們破解系統或者網絡基本上是壹項業余嗜好,通常是出於自己的興趣,而非為了賺錢或工作需要。

加州柏克萊大學計算機教授Brian Harvey在考證此字時曾寫到,當時在麻省理工學院中(MIT)的學生通常分成兩派,壹是tool,意指乖乖牌學生,成績都拿甲等;另壹則是所謂的hacker,也就是常逃課,上課愛睡覺,但晚上卻又精力充沛喜歡搞課外活動的學生。 這跟計算機有什麽關系?壹開始並沒有。不過當時hacker也有區分等級,就如同tool用成績比高下壹樣。真正壹流hacker並非整天不學無術,而是會熱衷追求某種特殊嗜好,比如研究電話、鐵道(模型或者真的)、科幻小說,無線電,或者是計算機。也因此後來才有所謂的computer hacker出現,意指計算機高手。

有些人很強調黑客和駭客的區別,根據開放原始碼計劃創始人Eric Raymond(他本人也是個著名的hacker)對此字的解釋,hacker與cracker(壹般譯為駭客,有時也叫“黑帽黑客”。 )是分屬兩個不同世界的族群,基本差異在於,黑客是有建設性的,而駭客則專門搞破壞。 對壹個黑客來說,學會入侵和破解是必要的,但最主要的還是編程,畢竟,使用工具是體現別人的思路,而程序是自己的想法.壹句話--編程實現壹切。對於壹個駭客來說,他們只追求入侵的快感,不在乎技術,他們不會編程,不知道入侵的具體細節。還有壹種情況是試圖破解某系統或網絡以提醒該系統所有者的系統安全漏洞,這群人往往被稱做“白帽黑客”或“匿名客”(sneaker)或紅客。許多這樣的人是電腦安全公司的雇員,並在完全合法的情況下攻擊某系統。

但到了今天,在知識貧乏的記者寫的媒報道中,黑客壹詞已被用於泛指黑客和駭客,因此也影響了大眾對黑客的理解。 這個背景下,就出現了重新定義黑客內涵的努力,試圖把黑客的活動範圍限定為不為經濟利益、而是出於好奇心做出技術探索和挑戰。

黑客文化簡史

本篇原作者為Eric S. Raymond esr@snark.thyrsus.com,他是壹位大哥級的 Hacker,寫了很多自由軟件,知名著作有Jargon File等,近年來發表“大教堂與集市”論文為Opensource software努力,Netscape 願意公開Navigator的原始碼,與這篇文章有很大的關系。

序曲: Real Programmer

故事壹開始,我要介紹的是所謂的Real Programmer。

他們從不自稱是Real Programmer、Hacker或任何特殊的稱號;`Real Programmer' 這個名詞是在1980年代才出現,但早自1945年起,電腦科學便不斷地吸引世界上頭腦最頂尖、想像力最豐富的人投入其中。從Eckert &Mauchly發明ENIAC後,便不斷有狂熱的programmer投入其中,他們以撰寫軟件與玩弄各種程式設計技巧為樂,逐漸形成具有自我意識的壹套科技文化。當時這批Real Programmers主要來自工程界與物理界,他們戴著厚厚的眼鏡, 穿聚酯纖維T恤與純白襪子,用機器語言、匯編語言、FORTRAN及很多古老的 語言寫程式。他們是Hacker時代的先驅者,默默貢獻,卻鮮為人知。

從二次大戰結束後到1970早期,是打卡計算機與所謂"大鐵塊"的mainframes 流行的年代,由Real Programmer主宰電腦文化。Hacker傳奇故事如有名的 Mel (收錄在Jargon File中)、Murphy's Law的各種版本、mock- German`Blinke_nlight' 文章都是流傳久遠的老掉牙笑話了。

※譯者:Jargon File亦是本文原作者所編寫的,裏面收錄了很多Hacker用語、縮寫意義、傳奇故事等等。Jargon File有出版成壹本書:The New Hacker's Dictionary,MIT PRESS出版。也有Online版本: puting,大學成立電算相關科系及電腦網絡。它們催生了另壹個持續的工程傳統,並最終演化為今天的開放代碼黑客文化。

早期的黑客

Hacker時代的濫觴始於1961年MIT出現第壹臺電腦DEC PDP-1。MIT的Tech Model Railroad Club(簡稱TMRC)的Power and Signals Group買了這臺機器後,把它當成最時髦的科技玩具,各種程式工具與電腦術語開始出現,整個環境與文化壹直發展下去至今日。 這在Steven Levy的書`Hackers' 前段有詳細的記載(Anchor/Doubleday 公司,1984年出版,ISBN 0-385-19195-2)。

※譯:Interactive computing並非指Windows、GUI、WYSIWYG等介面, 當時有terminal、有shell可以下指令就算是Interactive computing了。 最先使用Hacker這個字應該是MIT。1980年代早期學術界人工智慧的權威:MIT 的Artificial Intelligence Laboratory,其核心人物皆來自TMRC。從1969年起,正好是ARPANET建置的第壹年,這群人在電腦科學界便不斷有重大突破與貢獻。

ARPANET是第壹個橫跨美國的高速網絡。由美國國防部所出資興建,壹個實驗性 質的數位通訊網絡,逐漸成長成聯系各大學、國防部承包商及研究機構的大網絡。各地研究人員能以史無前例的速度與彈性交流資訊,超高效率的合作模式導致科技的突飛猛進。

ARPANET另壹項好處是,資訊高速公路使得全世界的hackers能聚在壹起,不再像以前孤立在各地形成壹股股的短命文化,網絡把他們匯流成壹股強大力量。 開始有人感受到Hacker文化的存在,動手整理術語放上網絡, 在網上發表諷刺文學與討論Hacker所應有的道德規範。(Jargon File的第壹版出現在1973年,就是壹個好例子), Hacker文化在有接上ARPANET的各大學間快速發展,特別是(但不全是)在信息相關科系。

壹開始,整個Hacker文化的發展以MIT的AI Lab為中心,但Stanford University 的Artificial Intelligence Laboratory(簡稱SAIL)與稍後的Carnegie-Mellon University(簡稱CMU)正快速崛起中。三個都是大型的資訊科學研究中心及人工智慧的權威,聚集著世界各地的精英,不論在技術上或精神層次上,對Hacker文化都有極高的貢獻。

為能了解後來的故事,我們得先看看電腦本身的變化;隨著科技的進步,主角MIT AI Lab也從紅極壹時到最後淡出舞臺。

從MIT那臺PDP-1開始,Hacker們主要程式開發平臺都是Digital Equipment Corporation 的PDP迷妳電腦序列。DEC率先發展出商業用途為主的interactive computing及time-sharing操作系統,當時許多的大學都是買DEC的機器, 因為它兼具彈性與速度,還很便宜(相對於較快的大型電腦mainframe)。 便宜的分時系統是Hacker文化能快速成長因素之壹,在PDP流行的時代, ARPANET上是DEC機器的天下,其中最重要的便屬PDP-10,PDP-10受到Hacker們的青睞達十五年;TOPS-10(DEC的操作系統)與MACRO-10(它的組譯器),許多懷舊的術語及Hacker傳奇中仍常出現這兩個字。

MIT像大家壹樣用PDP-10,但他們不屑用DEC的操作系統。他們偏要自己寫壹個:傳說中赫赫有名的ITS。

ITS全名是`Incompatible Timesharing System',取這個怪名果然符合MIT的搞怪作風——就是要與眾不同,他們很臭屁但夠本事自己去寫壹套操作系統。ITS始終不穩,設計古怪,bug也不少,但仍有許多獨到的創見,似乎還是分時系統中開機時間最久的紀錄保持者。

ITS本身是用匯編語言寫的,其他部分由LISP寫成。LISP在當時是壹個威力強大與極具彈性的程式語言;事實上,二十五年後的今天,它的設計仍優於目前大多數的程式語言。LISP讓ITS的Hacker得以盡情發揮想像力與搞怪能力。LISP是MIT AI Lab成功的最大功臣,現在它仍是Hacker們的最愛之壹。

很多ITS的產物到現在仍活著;EMACS大概是最有名的壹個,而ITS的稗官野史仍為今日的Hacker們所津津樂道,就如同妳在Jargon File中所讀到的壹般。在MIT紅得發紫之際,SAIL與CMU也沒閑著。SAIL的中堅份子後來成為PC界或圖形使用者介面研發的要角。CMU的Hacker則開發出第壹個實用的大型專家系統與工業用機器人。

另壹個Hacker重鎮是XEROX PARC公司的Palo Alto Research Center。從1970初期到1980中期這十幾年間,PARC不斷出現驚人的突破與發明,不論質或量,軟件或硬體方面。如現今的視窗滑鼠介面,雷射印表機與區域網絡;其D系列的機器,催生了能與迷妳電腦壹較長短的強力個人電腦。不幸這群先知先覺者並不受到公司高層的賞識;PARC是家專門提供好點子幫別人賺錢的公司成為眾所皆知的大笑話。即使如此,PARC這群人對Hacker文化仍有不可抹滅的貢獻。1970年代與PDP-10文化迅速成長茁壯。Mailing list的出現使世界各地的人得以組成許多SIG(Special-interest group),不只在電腦方面,也有社會與娛樂方面的。DARPA對這些非`正當性'活動睜壹只眼閉壹只眼, 因為靠這些活動會吸引更多的聰明小夥子們投入電腦領域呢。

有名的非電腦技術相關的ARPANET mailing list首推科幻小說迷的,時至今日ARPANET變成Internet,愈來愈多的讀者參與討論。Mailing list逐漸成為壹種公眾討論的媒介,導致許多商業化上網服務如CompuServe、Genie與Prodigy的成立。

Unix的興起

此時在新澤西州的郊外,另壹股神秘力量積極入侵Hacker社會,終於席卷整個PDP-10的傳統。它誕生在1969年,也就是ARPANET成立的那壹年,有個在AT&T Bell Labs的年輕小夥子Ken Thompson發明了Unix。

Thomspon曾經參與Multics的開發,Multics是源自ITS的操作系統,用來實做當時壹些較新的OS理論,如把操作系統較復雜的內部結構隱藏起來,提供壹個介面,使的programmer能不用深入了解操作系統與硬體設備,也能快速開發程式。

※譯:那時的programmer寫個程式必須徹底了解操作系統內部,或硬體設備。比方說寫有IO的程式,對於硬碟的轉速,磁軌與磁頭數量等等都要搞的壹清二楚才行。

在發現繼續開發Multics是做白工時,Bell Labs很快的退出了(後來有壹家公司Honeywell出售Multics,賠的很慘)。

Ken Thompson很喜歡Multics上的作業環境,於是他在實驗室裏壹臺報廢的DEC PDP-7上胡亂寫了壹個操作系統, 該系

統在設計上有從Multics抄來的也有他自己的構想。他將這個操作系統命名Unix,用來反諷Multics。

※譯:其實是Ken Thompson寫了壹個遊戲`Star Travel' 沒地方跑,就去找壹臺的報廢機器PDP-7來玩。他同事Brian Kernighan嘲笑Ken Thompson說:“妳寫的系統好遜哦,乾脆叫Unics算了。”(Unics發音與太監的英文eunuches壹樣),後來才改為Unix。

他的同事Dennis Ritchie,發明了壹個新的程式語言C,於是他與Thompson用C把原來用匯編語言寫的Unix重寫壹遍。C的設計原則就是好用,自由與彈性,C與Unix很快地在Bell Labs得到歡迎。1971年Thompson與Ritchie爭取到壹個辦公室自動化系統的專案,Unix開始在Bell Labs中流行。不過Thompson與Ritchie的雄心壯誌還不止於此。

那時的傳統是,壹個操作系統必須完全用匯編語言寫成,始能讓機器發揮最高的效能。Thompson與Ritchie,是頭幾位領悟硬體與編譯器的技術,已經進步到作業系統可以完全用高階語言如C來寫,仍保有不錯的效能。五年後,Unix已經成功地移植到數種機器上。

※譯:Ken Thompson與Dennis Ritchie是唯壹兩位獲得Turing Award(電腦界的諾貝爾獎)的工程師(其他都是學者)。

這當時是壹件不可思議的事!它意味著,如果Unix可以在各種平臺上跑的話,Unix 軟件就能移植到各種機器上。再也用不著為特定的機器寫軟件了,能在Unix上跑最重要,重新發明輪子已經成為過去式了。

除了跨平臺的優點外,Unix與C還有許多顯著的優勢。Unix與C的設計哲學是Keep It Simple, Stupid'。programmer可以輕易掌握整個C的邏輯結構(不像其他之前或以後的程式語言)而不用壹天到晚翻手冊寫程式。而Unix提供許多有用的小工具程式,經過適當的組合(寫成Shell script或Perl script),可以發揮強大的威力。

※註:The C Programming Language是所有程式語言書最薄的壹本,只有兩百多頁哦。作者是Brian Kernighan 與Dennis Ritchie,所以這本C語言的聖經又稱`K&R'。

※註:`Keep It Simple, Stupid' 簡稱KISS,今日Unix已不follow這個原則,幾乎所有Unix 都是要灌壹堆有的沒的utilities,唯壹例外是MINIX。

C與Unix的應用範圍之廣,出乎原設計者之意料,很多領域的研究要用到電腦時,他們是最佳拍檔。盡管缺乏壹個正式支援的機構,它們仍在AT&T內部中瘋狂的散播。到了1980年,已蔓延到大學與研究機構,還有數以千計的hacker想把Unix裝在家裏的機器上。

當時跑Unix的主力機器是PDP-11、VAX系列的機器。不過由於UNIX的高移植性,它幾乎可安裝在所有的電腦機型上。壹旦新型機器上的UNIX安裝好,把軟件的C原始碼抓來重新編譯就壹切OK了,誰還要用匯編語言來開發軟件?有壹套專為UNIX設計的網絡——UUCP:壹種低速、不穩但成本很低廉的網絡。兩臺UNIX機器用條電話線連起來,就可以使用互傳電子郵件。UUCP是內建在UNIX系統中的,不用另外安裝。於是UNIX站臺連成了專屬的壹套網絡,形成其Hacker文化。在1980第壹個USENET站臺成立之後,組成了壹個特大號的分散式布告欄系統,吸引而來的人數很快地超過了ARPANET。

少數UNIX站臺有連上ARPANET。PDP-10與UNIX的Hacker文化開始交流,不過壹開始不怎麽愉快就是了。PDP-10的Hacker們覺得UNIX的擁護者都是些什麽也不懂的新手,比起他們那復雜華麗,令人愛不釋手的LISP與ITS,C與UNIX簡直原始的令人好笑。『壹群穿獸皮拿石斧的野蠻人』他們咕噥著。

在這當時,又有另壹股新潮流風行起來。第壹部PC出現在1975年;蘋果電腦在1977年成立,以飛快的速度成長。微電腦的潛力,立刻吸引了另壹批年輕的 Hackers。他們最愛的程式語言是BASIC,由於它過於簡陋,PDP-10 的死忠派與UNIX迷們根本不屑用它,更看不起使用它的人。

※譯:這群Hacker中有壹位大家壹定認識,他的名字叫Bill Gates,最初就是他在8080上發展BASIC compiler的。

古老時代的終結

1980年同時有三個Hacker文化在發展,盡管彼此偶有接觸與交流,但還是各玩各的。ARPANET/PDP-10文化,玩的是LISP、MACRO、TOPS-10與ITS。UNIX與C的擁護者用電話線把他們的PDP-11與VAX機器串起來玩。還有另壹群散亂無秩序的微電腦迷,致力於將電腦科技平民化。

三者中ITS文化(也就是以MIT AI LAB為中心的Hacker文化)可說在此時達到全盛時期,但烏雲逐漸籠罩這個實驗室。ITS賴以維生的PDP-10逐漸過時,開始有人離開實驗室去外面開公司,將人工智慧的科技商業化。MIT AI Lab 的高手擋不住新公司的高薪挖角而紛紛出走,SAIL與CMU也遭遇到同樣的問題。

※譯:這個情況在GNU宣言中有詳細的描述,請參閱:(特別感謝由AKA的chuhaibo翻成中文)piler等程式發展工具,很少有source 在網絡上流傳,也因此無法形成合作開發軟件的風氣。Hacker文化的主力,是散布在Internet各地,幾乎可說是玩UNIX的文化。他們玩電腦才不在乎什麽售後服務之類,他們要的是更好的工具、更多的上網時間、還有壹臺便宜32-bitPC。

機器有了,可以上網了,但軟件去哪找?商業的UNIX貴的要命,壹套要好幾千大洋($)。90年代早期,開始有公司將AT&T與BSDUNIX移植到PC上出售。成功與否不論,價格並沒有降下來,更要緊的是沒有附原始碼,妳根本不能也不準修改它,以符合自己的需要或拿去分享給別人。傳統的商業軟件並沒有給Hacker們真正想要的。

即使是FreeSoftwareFoundation(FSF)也沒有寫出Hacker想要的操作系統,RMS承諾的GNU操作系統——HURD 說了好久了,到1996年都沒看到影子(雖然1990年開始,FSF的軟件已經可以在所有的UNIX平臺執行)。

早期的免費Unix

在這空窗期中,1992年壹位芬蘭HelsinkiUniversity的學生--LinusTorvalds開始在壹臺386PC上發展壹個自由軟件的UNIX kernel,使用FSF的程式開發工具。

他很快的寫好簡單的版本,丟到網絡上分享給大家,吸引了非常多的Hacker來幫忙壹起發展Linux-壹個功能完整的UNIX,完全免費且附上全部的原始碼。Linux最大的特色,不是功能上的先進而是全新的軟件開發模式。直到Linux的成功前,人人都認為像操作系統這麽復雜的軟件,非得要靠壹個開發團隊密切合作,互相協調與分工才有可能寫的出來。商業軟件公司與80年代的FreeSoftwareFoundation所采用都是這種發展模式。

Linux則迥異於前者。壹開始它就是壹大群Hacker在網絡上壹起塗塗抹抹出來的。沒有嚴格品質控制與高層決策發展方針,靠的是每周發表新版供大家下載測試,測試者再把bug與patch貼到網絡上改進下壹版。壹種全新的物競天擇、去蕪存菁的快速發展模式。令大夥傻眼的是,東修西改出來的Linux,跑的順極了。

1993年底,Linux發展趨於成熟穩定,能與商業的UNIX壹分高下,漸漸有商業應用軟件移植到Linux上。不過小型UNIX廠商也因為Linux的出現而關門大吉——因為再沒有人要買他們的東西。幸存者都是靠提供BSD為基礎的UNIX 的完整原始碼,有Hacker加入發展才能繼續生存。

Hacker文化,壹次次被人預測即將毀滅,卻在商業軟件充斥的世界中,披荊斬棘,篳路藍縷,開創出另壹番自己的天地。

網絡大爆炸時代

Linux能快速成長的來自令壹個事實:Internet大受歡迎,90年代早期ISP如雨後春筍般的冒出來,World-Wide-Web的出現,使得Internet成長的速度,快到有令人窒息的感覺。

BSD專案在1994正式宣布結束,Hacker們用的主要是免費的UNIX(Linux與壹些4.4BSD的衍生版本)。而LinuxCD-ROM銷路非常好(好到像賣煎餅般)。近幾年來Hacker們主要活躍在Linux與Internet發展上。World-Wide-Web讓Internet成為世界最大的傳輸媒體,很多80年代與90年代早期的Hacker們現在都在經營ISP。

Internet的盛行,Hacker文化受到重視並發揮其政治影響力。94、95年美國政府打算把壹些較安全、難解的編碼學加以監控,不容許外流與使用。這個稱為Clipper proposal的專案引起了Hacker們的群起反對與強烈抗議而半途夭折。96年Hacker又發起了另壹項抗議運動對付那取名不當的"Communications DecencyAct",誓言維護Internet上的言論自由。

電腦與Internet在21世紀將是大家不可或缺的生活用品,現代孩子在使用Internet科技遲早會接觸到Hacker文化。它的故事傳奇與哲學,將吸引更多人投入。未來對Hacker們是充滿光明的。