一個(gè)黑客所需的基本技能

1、黑客的精神態(tài)度是很重要的,但技術(shù)則更是重要。黑客的態(tài)度雖然是無(wú)可取代,隨著新科技的發(fā)明和舊技術(shù)的取代,這些工具隨時(shí)間在慢慢的改變。例如:以往總是會(huì)學(xué)會(huì)用機(jī)器碼寫程序,直到最近我們開始使用HTML。不過(guò),在1996年末,當(dāng)然,這是基礎(chǔ)的hacking技能。在1997年,理所當(dāng)然的,你必須學(xué)會(huì)C。 但,如果你只是學(xué)一種語(yǔ)言,那么你不能算是一位黑客,了不起只能算是一個(gè)programmer。除此,你還必須學(xué)會(huì)學(xué)會(huì)以獨(dú)立于任何程序語(yǔ)言之上的概括性觀念來(lái)思考一件程序設(shè)計(jì)上的問(wèn)題。要成為一位真正的黑客,你必須要能在幾天之內(nèi)將manual內(nèi)容和你目前己經(jīng)知道的關(guān)連起學(xué)會(huì)一種新的語(yǔ)言。也就是說(shuō),你必會(huì)學(xué)還了C之外的東西,你至少還要會(huì)LISP或Perl(Java也正在努力的擠上這個(gè)名單; 譯者注: 我很懷疑這份名單)。除了幾個(gè)重要的hacking常用語(yǔ)言之外,這些語(yǔ)言提供你一些不同的程序設(shè)計(jì)途徑,并且讓你在好的方法中學(xué)習(xí)。
程序設(shè)計(jì)是一種復(fù)雜的技術(shù),我沒辨法在這提供完整的學(xué)習(xí)步驟。但是我能告訴你一些在書本上和課堂上所沒有的東西(有很多,幾乎全部最好的黑客們都是自習(xí)而來(lái)的)。(a) 讀別人的程序碼;(b)寫程序,這兩項(xiàng)是不錯(cuò)的方法。學(xué)習(xí)寫程序就像在學(xué)習(xí)寫一種良好的自然語(yǔ)言,最好的方法是去看一些專家們所寫的東西,然后寫一些你自己的東西,然后讀更多,再寫更多。然后一直持續(xù),一直到你發(fā)展出一種屬于自己的風(fēng)格和特色。要找到好的程序碼來(lái)看是很一件很困難的事,因?yàn)椋瑢?duì)菜鳥黑客們而言,適于供他們閱讀和努力的大型程序的source數(shù)量很少。但這事己有了戲劇性的變化了; 現(xiàn)在免費(fèi)的供應(yīng)的軟件、程序設(shè)計(jì)工具和操作系統(tǒng)(大都公開提供 source,而且全都是由黑客們寫成的)到處可看。進(jìn)入下一個(gè)主題。
?。?、取得一個(gè)免費(fèi)的 UNIX,并學(xué)習(xí)使用和維護(hù)。我先假設(shè)你己經(jīng)有一部個(gè)人電腦或者是可以使用任何一部(現(xiàn)在的小孩子真幸福,可如此輕易的擁有 :-))。 取得黑客技巧的第一個(gè)步驟是取得一份Linux 或者一份免費(fèi)的 BSD-Unix,并將它安裝在自己的機(jī)器,并使之順利的運(yùn)作。沒錯(cuò),在這個(gè)世界上除了Unix之外,還有其它的操作系統(tǒng)。但是他們只提供bianry,你不能看到他們的程序碼,你也不能修改他們。想要在DOS或Windows或MacOS開始hacking,無(wú)疑就是要你綁著枷鎖跳舞一樣。
除此之外,Unix是Internet上的操作系統(tǒng)。當(dāng)你在不懂Unix的情況下學(xué)習(xí)使用Internet時(shí),你沒辨法在不懂Unix的情況下成為Internet的黑客。因?yàn)檫@個(gè)原故,現(xiàn)在的黑客文化還是很牢固的以Unix為中心。(這并不完全是正確的,而且有些活在舊時(shí)代的黑客甚至也不喜歡這種情形,但是Unix和Internet之間的共生共成己經(jīng)到了牢不可破的地步,即使是Microsoft的大塊肌肉也沒能在上面留下明顯的傷痕。) 因些,把Unix裝起來(lái)吧! (我自己是喜歡Linux,但是還有其它的東東可用。) 學(xué)習(xí)它,讓它運(yùn)作起來(lái),讓它陪你努力精進(jìn)。 用他向整個(gè)Internet喊話??闯绦虼a,改程序。
有一天你成為一位高竿的黑客,你回頭往后看時(shí)會(huì)發(fā)現(xiàn),你得到比Microsoft操作系統(tǒng)所能提供的還要好的程序設(shè)計(jì)工具(包括 C,Lisp和 Perl)。而且得到快樂(lè),并學(xué)到比共生共成己經(jīng)到了牢不可破的地步,即使是Microsoft的大塊肌肉也沒能在上面留下明顯的傷痕。) 因些,把Unix裝起來(lái)吧! (我自己是喜歡Linux,但是還有其它的東東可用。) 學(xué)習(xí)它,讓它運(yùn)作起來(lái),讓它陪你努力精進(jìn)。用他向整個(gè)Internet喊話。 看程序碼,改程序。有一天你成為一位高竿的黑客,你回頭往后看時(shí)會(huì)發(fā)現(xiàn),你得到比Microsoft操作系統(tǒng)所能提供的還要好的程序設(shè)計(jì)工具(包括 C,Lisp和 Perl)。而且得到快樂(lè),并
學(xué)到比你想像中的還要多的知識(shí)。關(guān)于學(xué)習(xí)Unix,在Loginataka有更多的資料。(http://www.ccil.org/~esr/faqs/loginataka。)
看一下Linux distribution的目錄或 Linux CD,并把自己交付給它。
3、學(xué)習(xí)使用World Wide Web并學(xué)會(huì)寫 HTML。
在黑客文化創(chuàng)造出來(lái)的東西,大多在他們的活動(dòng)范圍外被使用著,如,在工廠和辨公室或大學(xué)被漠漠的使用著。但Web是一個(gè)很大的例外,這個(gè)黑客眼中的大玩具甚至還被政客們接受,并巧巧的在改變這個(gè)世界。因此(還有很多好的理由),你必須學(xué)習(xí)Web。并不只是學(xué)習(xí)使用browser(這太容易了)而己,還要學(xué)會(huì)寫HTML這個(gè)Web的標(biāo)簽語(yǔ)言。如果你不知道如何設(shè)計(jì)程序,寫HTML也可以給一些習(xí)慣上的幫助。嗯!! 建立home page吧! 不過(guò),有一個(gè)home page 并沒任何特別之處能讓你成為一位黑客。Web上到處都是home page,而且大部份都沒什么重點(diǎn),沒什么內(nèi)容的爛泥 -- 很好看的爛泥巴,但是看起來(lái)都一樣,差不多。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
你該學(xué)什么程序語(yǔ)言
程序語(yǔ)言可分為5類
1、web page script languages
就是網(wǎng)頁(yè)代碼,比如Html、javascript、Css、Asp、Php、Xml都應(yīng)該屬于此類(照蔡的意思,Html不應(yīng)該屬于anguages的,可能他覺得太簡(jiǎn)單了吧,不過(guò)我覺得Html也應(yīng)該算的,大家愛聽誰(shuí)的就聽誰(shuí)的好了,這個(gè)不重要)
2、Interpreted Languages(解釋型語(yǔ)言)
包括Perl、Python、REBOL、Ruby等(后面三個(gè)聽豆沒聽過(guò)),也常被稱作Script語(yǔ)言,通常被用于和底下的操作系統(tǒng)溝通。照蔡的意思,每個(gè)人至少應(yīng)該學(xué)會(huì)一套這類的語(yǔ)言。這類語(yǔ)言的缺點(diǎn)是效率差、源代碼外露——所以不適合用來(lái)開發(fā)軟件產(chǎn)品,一般用于網(wǎng)頁(yè)服務(wù)器。
3、Hybrid Laguages(混合型語(yǔ)言)
代表是JAVA和C#。介于解釋型和編譯型之間。蔡認(rèn)為C#是.NET最重要的語(yǔ)言,值得期待其后續(xù)發(fā)展;至于JAVA,蔡叫看他的《Sleepless in Java》——我倒!
4、COMPILING Languages(編譯型語(yǔ)言)
C/C++,JAVA都是編譯型語(yǔ)言。蔡說(shuō)C++很復(fù)雜,要成為高手沒三五年是不行的(就憑這句話,我決定向JAVA投降),雖然如此,但真正要成為高手的都應(yīng)該懂C/C++。
關(guān)于Delphi,蔡說(shuō)如果想要跨Linux和Windows平臺(tái)的語(yǔ)言,則Delphi似乎是最好的選擇。
5、Assembly Languages(匯編語(yǔ)言)
匯編語(yǔ)言是最接近于硬件的語(yǔ)言,不過(guò)現(xiàn)在幾乎沒多少人用了。
程序語(yǔ)言學(xué)習(xí)順序建議
如果完全沒有程序經(jīng)驗(yàn),可照這個(gè)順序:javascript——解釋型語(yǔ)言——混合型語(yǔ)言——編譯型語(yǔ)言——匯編(如果需要的話)
用業(yè)界流行一句話做結(jié)尾“真正的程序員用C++,聰明的程序員用Delphi”,那么,什么樣的程序員用JAVA呢?
虛懷若谷題外話
看在我這么晚了還這么辛苦的敲字的面子上,看到這篇帖子的朋友給點(diǎn)掌聲吧,雖然沒什么自己的思想。
另外,本文完全據(jù)蔡學(xué)鏞先生同名文章精簡(jiǎn),所以如果這篇文章給你的程序員生涯有什么不好的作用,那我不介意你去扁他。當(dāng)然如果這篇文章對(duì)你有什么積極影響,我很高興你能請(qǐng)我吃大餐。
如果您想學(xué)習(xí)編程,卻又不知從何入手,那么您不妨看看下面的幾種學(xué)習(xí)方案,可能會(huì)給您一些啟示吧!
方案一 Basic語(yǔ)言 & Visual Basic
優(yōu)點(diǎn)
(1)Basic 簡(jiǎn)單易學(xué),很容易上手。
?。?)Visual Basic 提供了強(qiáng)大的可視化編程能力,可以讓你輕松地做出漂亮的程序。
?。?)眾多的控件讓編程變得象壘積木一樣簡(jiǎn)單。
(4)Visual Basic 的全部漢化讓我們這些見了English就頭大的人喜不自禁。
缺點(diǎn)
?。?)Visual Basic 不是真正的面向?qū)ο蟮拈_發(fā)文具。
?。?)Visual Basic 的數(shù)據(jù)類型太少,而且不支持指針,這使得它的表達(dá)能力很有限。
?。?)Visual Basic 不是真正的編譯型語(yǔ)言,它產(chǎn)生的最終代碼不是可執(zhí)行的,是一種偽代碼。它需要一個(gè)動(dòng)態(tài)鏈接庫(kù)去解釋執(zhí)行,這使得Visual Basic 的編譯速度大大變慢。
綜述:方案一適合初涉編程的朋友,它對(duì)學(xué)習(xí)者的要求不高,幾乎每個(gè)人都可以在一個(gè)比較短的時(shí)間里學(xué)會(huì)vB編程,并用VB 做出自己的作品。對(duì)于那些把編程當(dāng)做游戲的朋友來(lái)說(shuō),VB 是您最佳的選擇。
方案二 Pascal語(yǔ)言 & Delphi
優(yōu)點(diǎn)
?。?)Pascal語(yǔ)言結(jié)構(gòu)嚴(yán)謹(jǐn),可以很好地培養(yǎng)一個(gè)人的編程思想。
?。?)Delphi是一門真正的面向?qū)ο蟮拈_發(fā)工具,并且是完全的可視化。
(3)Delphi使用了真編譯,可以讓你的代碼編譯成為可執(zhí)行的文件,而且編譯速度非??臁?br /> ?。?)Delphi具有強(qiáng)大的數(shù)據(jù)庫(kù)開發(fā)能力,可以讓你輕松地開發(fā)數(shù)據(jù)庫(kù)。
缺點(diǎn)
Delphi幾乎可以說(shuō)是完美的,只是Pascal語(yǔ)言的過(guò)于嚴(yán)謹(jǐn)讓人感覺有點(diǎn)煩。
綜述: 方案二比較適合那些具有一定編程基礎(chǔ)并且學(xué)過(guò)Pascal語(yǔ)言的朋友。
方案三 C語(yǔ)言 & Visual C++
優(yōu)點(diǎn)
?。?)C語(yǔ)言靈活性好,效率高,可以接觸到軟件開發(fā)比較底層的東西。
?。?)微軟的MFC庫(kù)博大精深,學(xué)會(huì)它可以讓隨心所欲地進(jìn)行編程。
?。?)VC是微軟制作的產(chǎn)品,與操作系統(tǒng)的結(jié)合更加緊密。
缺點(diǎn)
對(duì)使用者的要求比較高,既要具備豐富的C語(yǔ)言編程經(jīng)驗(yàn),又要具有一定的WINDOWS編程基礎(chǔ),它的過(guò)于專業(yè)使得一般的編程愛好者學(xué)習(xí)起來(lái)會(huì)有不小的困難。
綜述: VC是程序員用的東西。如果你是一個(gè)永不滿足的人,而且可以在編程上投入很大的精力和時(shí)間,那么學(xué)習(xí)VC你一定不會(huì)后悔的。
方案四 C++語(yǔ)言 & C++ Builder
優(yōu)點(diǎn)
(1)C++語(yǔ)言的優(yōu)點(diǎn)全部得以繼承。
?。?)完全的可是化。
?。?)極強(qiáng)的兼容性,支持OWL、VCL和MFC三大類庫(kù)。
?。?)編譯速度非???。
缺點(diǎn)
由于推出的時(shí)間太短,關(guān)于它的各種資料還不太多。
綜述:我認(rèn)為C++ Builder 是最好的編程工具。它既保持了C++語(yǔ)言編程的優(yōu)點(diǎn),又做到了完全的可視化。
方案五 SQL語(yǔ)言 & Power Builder
對(duì)于一些傳統(tǒng)的數(shù)據(jù)開發(fā)人員來(lái)說(shuō),F(xiàn)oxpro系列也許讓他們感到更加熟悉。但是對(duì)于初學(xué)者來(lái)說(shuō),PowerBuilder也許是最好的數(shù)據(jù)庫(kù)開發(fā)工具。各種各樣的控件,功能強(qiáng)大的PowerBuilder語(yǔ)言都會(huì)幫助你開發(fā)出自己的數(shù)據(jù)庫(kù)應(yīng)用程序。
補(bǔ)充:關(guān)于網(wǎng)頁(yè)后臺(tái)語(yǔ)言和其他語(yǔ)言的關(guān)系,一般認(rèn)為:
C語(yǔ)言學(xué)的好,那么學(xué)習(xí)PHP會(huì)有事半功倍的效果
VC學(xué)的好,那么學(xué)習(xí)ASP會(huì)有事半功倍的效果
JAVA學(xué)的好,那么學(xué)習(xí)JSP、JAVASCRIPT會(huì)有事半功倍的效果
關(guān)于網(wǎng)頁(yè)后臺(tái)語(yǔ)言和數(shù)據(jù)庫(kù),通常來(lái)說(shuō):
PHP與MYSQL是黃金搭檔
ASP小型網(wǎng)站用ACCESS,大型用SQL
JSP我就不知道了
關(guān)于電子商務(wù)流行的語(yǔ)言,目前
當(dāng)當(dāng)、卓越、6688、igo5、雅寶使用的是asp語(yǔ)言
易趣、淘寶使用的是php語(yǔ)言
貝塔斯曼使用的是jsp語(yǔ)言
4、至少學(xué)會(huì)以下的其中兩種:
一、網(wǎng)站服務(wù)器程序ASP、PHP、CGI、JSP
我個(gè)人認(rèn)為CGI是最難學(xué)的其中一種。
二、程序語(yǔ)言:C語(yǔ)言、C++、VB、JAVA、PERL、DELPHI、匯編語(yǔ)言
不過(guò)我認(rèn)為C語(yǔ)言的通用性最好,可以跨平臺(tái)(操作系統(tǒng))使用。
還要試著自己寫程序、開發(fā)軟件等工作。
三、數(shù)據(jù)庫(kù)管理軟件:MYSQL、SQL、FOXPRO……等。
四、幾種常用的操作系統(tǒng):WIN98、WIN2000、WINNT、WINXP、UNIX、LINUX、要是能學(xué)到UNIX那是最好不過(guò)的了。最最基本的WIN2K、WINNT也要學(xué)會(huì)吧。
如果以上的你都會(huì)了,那么你已經(jīng)是個(gè)高手了。
相關(guān)文章
封UDP的服務(wù)器真的打不了么?封UDP、封海外服務(wù)器
很多游戲服務(wù)器租用的時(shí)候會(huì)出現(xiàn)一些封UDP的字眼,網(wǎng)上一些文章也說(shuō)UDP協(xié)議不可靠!為什么要封UDP呢?既然不可靠,為什么有些人還要使用它呢?今天與你們分享一下UDP,希望2024-05-07魔獸世界服務(wù)器被DDoS攻擊怎么辦?DDoS攻擊防御方法
魔獸世界服務(wù)器被攻擊在目前來(lái)說(shuō)也是比較常見的,同行競(jìng)爭(zhēng)激烈,在官服開放時(shí)也遇到過(guò)DDOS攻擊,要是飛飛沒記錯(cuò)是在22年9月14日,從剛開始的身份驗(yàn)證服務(wù)器出現(xiàn)問(wèn)題,到確2023-07-17分享五大免費(fèi)企業(yè)網(wǎng)絡(luò)入侵檢測(cè)(IDS)工具
這篇文章主要分享一下五大免費(fèi)企業(yè)網(wǎng)絡(luò)入侵檢測(cè)(IDS)工具,當(dāng)前企業(yè)對(duì)于網(wǎng)絡(luò)安全越來(lái)越重視,那么后期可能就需要大家多多關(guān)注一些安全工具的使用于檢測(cè)2019-12-01網(wǎng)絡(luò)安全基礎(chǔ)之網(wǎng)絡(luò)協(xié)議與安全威脅的關(guān)系介紹
網(wǎng)絡(luò)協(xié)議是什么呢?網(wǎng)絡(luò)協(xié)議是網(wǎng)絡(luò)中計(jì)算機(jī)或設(shè)備之間進(jìn)行通信的一系列規(guī)則集合。本文中小編介紹的是網(wǎng)絡(luò)協(xié)議和安全威脅的關(guān)系,需要的朋友不妨閱讀本文了解一下2019-04-02DDoS攻擊原理是什么?DDoS攻擊原理及防護(hù)措施介紹
DDoS攻擊是由DoS攻擊轉(zhuǎn)化的,這項(xiàng)攻擊的原理以及表現(xiàn)形式是怎樣的呢?要如何的進(jìn)行防御呢?本文中將會(huì)有詳細(xì)的介紹,需要的朋友不妨閱讀本文進(jìn)行參考2019-01-15基于Web攻擊的方式發(fā)現(xiàn)并攻擊物聯(lián)網(wǎng)設(shè)備介紹
本文中介紹的是基于Web攻擊的方式發(fā)現(xiàn)并攻擊物聯(lián)網(wǎng)設(shè)備,感興趣的朋友不妨閱讀本文進(jìn)行了解2019-01-11為何黑客要挾制路由器DNS 用戶該怎樣實(shí)時(shí)發(fā)覺和防備方法
起首說(shuō)說(shuō)挾制路由器是什么意思,路由器挾制平日指的是,開啟了無(wú)線網(wǎng)絡(luò)功效的無(wú)線路由器,攻擊者經(jīng)由過(guò)程破解無(wú)線暗碼銜接上無(wú)線網(wǎng)后,再登錄路由治理界面來(lái)節(jié)制全部無(wú)線網(wǎng)2018-05-16大勢(shì)至共享文件監(jiān)控軟件、共享文件權(quán)限管理軟件主控端與客戶端的連接設(shè)
這篇文章主要介紹了大勢(shì)至共享文件監(jiān)控軟件、共享文件權(quán)限管理軟件主控端與客戶端的連接設(shè)置方法詳解,,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,下面就來(lái)和小編一起看看2018-01-25詳細(xì)介紹sd卡加密軟件的選擇以及給sd卡設(shè)置密碼、給sd卡加密
這篇文章主要介紹了詳細(xì)介紹sd卡加密軟件的選擇以及給sd卡設(shè)置密碼、給sd卡加密,如何保護(hù)sd卡文件的安全,如何給SD卡設(shè)置密碼、如何給SD卡加密,下面就跟小編一起來(lái)看看吧2018-01-19server2008共享設(shè)置、服務(wù)器共享文件設(shè)置、服務(wù)器設(shè)置共享文件夾的方法
這篇文章主要介紹了server2008共享設(shè)置、服務(wù)器共享文件設(shè)置、服務(wù)器設(shè)置共享文件夾的方法詳細(xì)介紹,保護(hù)服務(wù)器共享文件設(shè)置訪問(wèn)權(quán)限,讓每個(gè)部門只訪問(wèn)自己的共享文件等,2018-01-19