作业帮 > 体裁作文 > 教育资讯

怎么成为一个黑客

来源:学生作业帮助网 编辑:作业帮 时间:2024/09/25 15:27:17 体裁作文
怎么成为一个黑客体裁作文

篇一:新人如何成为一名黑客

基础:

如何去学习

·要有学习目标

·要有学习计划

·要有正确的心态

·有很强的自学能力

学习目标

·1.明确自己的发展方向(你现在或者将来要做什么,程序员?安全专家?网络黑客等)

·2.自己目前的水平和能力有多高

·能简单操作windows2000

·能简单配置windows2000的一些服务

·能熟练的配置Windows2000的各种服务

·能熟练配置win2000和各种网络设备联网

·能简单操作Linux,Unix,Hp-unix, Solaris中的一种或者多种操作系统

·能配置cicso,huawei,3com,朗迅等网络设备 ·会简单编写C/C++,Delphi,Java,PB,VB,Perl ·能简单编写Asp,Php,Cgi和script,shell脚本

·3.必须学会不相信态度,尊重各种各样的能力 ·不要为那些装模做样的人浪费时间

·尊重别人的能力,

·会享受提高自己能力的乐趣.

·在知道了自己的水平和能力之后就要开始自己的目标了

·--------安全专家

·--------黑客

·--------高级程序员

·黑客是建设网络,不是破坏网络, 破坏者是骇客; ·黑客有入侵的技术,但是他们是维护网络的,所以和安全专家是差不多的;

·因为懂得如何入侵才知道如何维护

·因为懂得如何维护才更要了解如何入侵

·这是 黑客与安全专家的联系

·但,他们都是在会编程的基础上成长的!

·下面我们开始我们的学习计划!

学习计划

有了学习计划才能更有效的学习

安全学习计划

不奢求对win98有多么精通,我们也不讲解win98如何应用,如何精通,我们的起步是win2000 s

erver,这是我们培训的最低标准,你对英语有一定的了解也是必不可少

最基础

·a.会装win2000,知道在安装的时候有两种分区格式,NTFS与FAT32 及他们的区别,知道win2

000可以在安装的时候分区,格式化硬盘, 可以定制安装,可以定制自己需要安装的一些组件

,如果有网络适配器,可以直接加入域中 学习点:NTFS和FAT32分区的不同 各个组件的作用

域的定义

·b.知道如何开,关机 知道注销的用处

·c.知道win2000下面各主要目录的作用 Documents and Settings,WINNT,system32 Progra

m Files

·d.知道管理工具里面各个组件的定义

·e.学会应用命令提示符cmd(dos)

·f.知道计算机管理里面的各个选项的不通

·g.知道win2000强大的网络管理功能

·h.能非常熟练的操作win2000

·i.知道IP地址,子网掩码,网关和MAC的区别

进阶

·A.配置IIS,知道各个选项的作用

·B.配置DNS,DHCP

·C.配置主控制域,辅助域

·D.配置DFS

·E.配置路由和远程访问

·F.配置安全策略IPSEC

·G.配置service(服务)

·H.配置磁盘管理,磁盘分额

·i. 配置RAID(0,1,0+1,5)

·J.路由器的安装与简单配置

·K.交换机的安装与简单配置

·L.常见的VPN,VLAN,NAT配置

·M.配置常见的企业级防火墙

·N.配置常见的企业级防病毒软件

高级

·之前我们学到的是任何一个想成为网络安全专家和黑客基本知识中的一部分

·你作到了吗??

·如果你做到了,足以找到一份很不错的工作!

配置负载均衡

·配置WIN2000+IIS+EXCHANGE+MSSQL+SERVER-U+负载均衡+ASP(PHP.CGI)+CHECK PIONT(ISA

SERVER) ·

·配置三层交换网络 ·

·配置各种复杂的网络环境

·能策划一个非常完整的网络方案 ·

·能独自组建一个大型的企业级网络 ·

·能迅速解决网络中出现的各种疑难问题

结束

·在你上面的都学好了,你已经是一个高级人才了,也是我们VIP培训的目标!

·可以找到一份非常好的工作

篇二:如何成为一个黑客

编者:关于黑客是怎样炼成的,网上有了n个版本了。不过多数是哗众取宠。

看看这个吧,是我在网上所能看到的最详细的教程了.相信对你一定会有好处的。

基础:

如何去学习

·要有学习目标

·要有学习计划

·要有正确的心态

·有很强的自学能力

学习目标

·1.明确自己的发展方向(你现在或者将来要做什么,程序员?安全专家?网络黑客等)

·2.自己目前的水平和能力有多高

·能简单操作windows2000

·能简单配置windows2000的一些服务

·能熟练的配置Windows2000的各种服务

·能熟练配置win2000和各种网络设备联网

·能简单操作Linux,Unix,Hp-unix, Solaris中的一种或者多种操作系统

·能配置cicso,huawei,3com,朗迅等网络设备

·会简单编写C/C++,Delphi,Java,PB,VB,Perl

·能简单编写Asp,Php,Cgi和script,shell脚本

·3.必须学会不相信态度,尊重各种各样的能力

·不要为那些装模做样的人浪费时间

·尊重别人的能力,

·会享受提高自己能力的乐趣.

·在知道了自己的水平和能力之后就要开始自己的目标了

·--------安全专家

·--------黑客

·--------高级程序员

·黑客是建设网络,不是破坏网络, 破坏者是骇客;

·黑客有入侵的技术,但是他们是维护网络的,所以和安全专家是差不多的;

·因为懂得如何入侵才知道如何维护

·因为懂得如何维护才更要了解如何入侵

·这是 黑客与安全专家的联系

·但,他们都是在会编程的基础上成长的!

·下面我们开始我们的学习计划!

学习计划

有了学习计划才能更有效的学习

安全学习计划

不奢求对win98有多么精通,我们也不讲解win98如何应用,如何精通,我们的起步是win2000 s

erver,这是我们培训的最低标准,你对英语有一定的了解也是必不可少

最基础

·a.会装win2000,知道在安装的时候有两种分区格式,NTFS与FAT32 及他们的区别,知道win2

000可以在安装的时候分区,格式化硬盘, 可以定制安装,可以定制自己需要安装的一些组件 ,如果有网络适配器,可以直接加入域中 学习点:NTFS和FAT32分区的不同 各个组件的作用 域的定义

·b.知道如何开,关机 知道注销的用处

·c.知道win2000下面各主要目录的作用 Documents and Settings,WINNT,system32 Progra

m Files

·d.知道管理工具里面各个组件的定义

·e.学会应用命令提示符cmd(dos)

·f.知道计算机管理里面的各个选项的不通

·g.知道win2000强大的网络管理功能

·h.能非常熟练的操作win2000

·i.知道IP地址,子网掩码,网关和MAC的区别

进阶

·A.配置IIS,知道各个选项的作用

·B.配置DNS,DHCP

·C.配置主控制域,辅助域

·D.配置DFS

·E.配置路由和远程访问

·F.配置安全策略IPSEC

·G.配置service(服务)

·H.配置磁盘管理,磁盘分额

·i. 配置RAID(0,1,0+1,5)

·J.路由器的安装与简单配置

·K.交换机的安装与简单配置

·L.常见的VPN,VLAN,NAT配置

·M.配置常见的企业级防火墙

·N.配置常见的企业级防病毒软件

高级

·之前我们学到的是任何一个想成为网络安全专家和黑客基本知识中的一部分 ·你作到了吗??

·如果你做到了,足以找到一份很不错的工作!

配置负载均衡

·配置WIN2000+IIS+EXCHANGE+MSSQL+SERVER-U+负+ASP(PHP.CGI)+CHECK PIONT(ISA

SERVER) ·

·配置三层交换网络 ·

·配置各种复杂的网络环境

·能策划一个非常完整的网络方案 ·

·能独自组建一个大型的企业级网络 ·

·能迅速解决网络中出现的各种疑难问题

结束

·在你上面的都学好了,你已经是一个高级人才了,也是我们VIP培训的目标! ·可以找到一份非常好的工作

·不会再因为给女朋友买不起玫瑰而发愁了!

安全:

导读 载均衡

·防火墙系统(FIREWALL)

·入侵检测(IDS)

·身份验证(CA)

·网站监控和恢复(WEBSITE)

·安全电子商务(E-BUSINESS)

·安全电子邮件(E-MAIL)

·安全办公自动化(OA)

·Internet访问和监控(A&C)

·病毒防范(VIRUS)

·虚拟局域网(VPN)

系统安全服务

·系统安全管理

·系统安全评估

·系统安全加固

·系统安全维护

·安全技能学习

系统安全管理

·信息系统安全策略

·信息系统管理员安全手册

·信息系统用户安全手册

·紧急事件处理流程

系统安全评估

1、系统整体安全分析

· 分析用户的网络拓扑结构,以找出其结构性及网络 配置上存在的安全隐患。 · 通过考察用户信息设备的放置场地,以使得设备物理上是安全的。

· 分析用户信息系统的管理、使用流程,以使得系统 能够安全地管理、安全地使用

2、主机系统安全检测

· 通过对主机进行安全扫描,以发现系统的常见的安全漏洞。

· 对于特定的系统,采用特别的工具进行安全扫描。

· 根据经验,对系统存在的漏洞进行综合分析。

· 指出各个安全漏洞产生的原因以及会造成的危险。 · 给出修复安全漏洞的建议

3、网络设备安全检测

· 通过对网络进行安全扫描,以发现网络设备的安全漏洞。 · 根据经验,对网络设备存在的漏洞进行综合析。 · 给出网络设备安全漏洞报告。

· 指出各个安全漏洞产生的原因以及会造成的险。 · 给出修复安全漏洞的建议。

安全系统加固

·为用户系统打最新安全补丁程序。

·为用户修复系统、网络中的安全漏洞。

·为用户去掉不必要的服务和应用系统。

·为用户系统设置用户权限访问策略。

·为用户系统设置文件和目录访问策略。

·针对用户系统应用进行相应的安全处理。

安全系统维护

·防火墙系统维护,安全日志分析

·IDS系统维护,安全日志分析

·VPN系统维护,安全日志分析

·认证系统维护,安全日志分析

·服务器、主机系统,安全日志分析

·其它各类安全设施维护及日志分析

安全技能培训

·网络安全基础知识

·网络攻击手段演示和防范措施

·防火墙的原理和使用

·VPN的原理和使用

·漏洞扫描工具的原理和使用

篇三:如何让自己成为一名黑客高手全集

如何让自己成为一名黑客高手全集

什么是黑客在日本出版的《新黑客字典》中,对黑客是这样定义的:“喜欢探索软件程序并从中增长了其个人才干的人。他们不像绝大多数电脑使用者那样,只规规矩矩地了解别人指定的狭小的一部分知识”。在Open Source(开放源代码)旗手ERIC。S。RAYMOND的《The New Hacker"s Dictionary》一文中,对“Hacker”的解释包括了下面几类人:

一:那些喜欢发掘程序系统内部实现细节的人,在这种发掘过程中,他们延伸并扩展着自己的能力,这和只满足于学习有限知识的人是截然不同的

二:那些狂热地沉浸在编程乐趣的人,而且,他们不仅仅是在理论上谈及编程

三:一个高超的程序设计专家

四:一个喜欢智力挑战的,并创造性地突破各种环境限制的人

五:一个恶意的爱管闲事的家伙,他试图在网络上逡巡溜达的同时发现一些敏感的信息对最后一类人,ERIC。S。RAYMOND赋予其更恰当的一个称谓,那就是“Cra

cker”,有就是我们常说的“骇客”,指那些乐于破坏的家伙。当他们在给这个社会制造着麻烦和噱头的同时,就只能被冠以“骇客”之名。正是因为“骇客”的存在,纯正而古老的黑客精神才愈来愈被人曲解,但在真正崇尚黑客精神的一类人眼里,“骇客”与“黑客”是如此的泾渭分明,不可混淆!更有甚者,有些黑客们说:在黑客界,斗争只存在于“黑客”和“骇客”之间!

黑客群体有自己特有的一套行为准则(the hacker ethic)美国学者史蒂夫。利维在其著名的《黑客电脑史》中所指出的黑客道德准则(the hacker ethic)就是对其最深刻的表述:

(1),通往电脑的路不止一条

(2),所有的信息都应当是免费共享的

(3),一定要打破电脑集权

(4),在电脑上创造的是艺术和美

(5),计算机将使生活更加美好

可以看出,“黑客道德准则”正是这个独特的文化群体一直心照不宣地遵循着的“江湖规矩”,以这种“江湖规矩”作为参照,黑客们的行为特征也就清晰地呈现给我们了! 一,热衷挑战

黑客们多数都有很高的智慧,至少在某些方面表现突出。他们喜欢挑战自己的能力,编写高难度程序,破译电脑密码给他们带来了神气的魔力,认为运用自己的智慧和电脑技术去突破某些著名的防卫措施森严的站点是一件极、富刺激性和挑战性的冒险活动。

二,崇尚自由

黑客文化首先给人的突出感觉就是一种自由不羁的的精神。黑客如同夜行的蝙蝠侠,任意穿梭在网络空间中。黑客在电脑虚拟世界发挥着自己的极致的自由。

他们随意登录在世界各地的网站,完成着现实生活中无法企及的冒险旅程,实现着个人生命的虚拟体验。正是这种对自由的体验,使黑客如同吸毒上瘾一样,对网络入侵乐此不疲 三,主张信息共享

黑客们认为所有的信息都应当是免费的和公开的,认为计算机应该是大众的工具,而不应该只为有钱人私有。信息应该是不受限制的,它属于每个人,拥有知识或信息是每个人的天赋权利

四,反叛精神

黑客文化带有某种反叛世界的倾向,黑客们蔑视传统,反抗权威,痛恨集权,其行为模式以深深烙上了无政府主义的印记。互联网的一个显著特点是平等和共享,对于在网络中存在的许多禁区,黑客们认为是有违网络特征的,他们希望建立一个没有权威,没有既定程序的社会,所以他们一般都喜欢与传统,权威和集权做永无休止的斗争

五,破坏心理

黑客们要在网络空间来去自如,蔑视权威,就必然夹带着某些破坏行动。只有突破计算机和网络的防护措施才能随意登录站点,只有颠覆权威设置的程序才能表示反抗权威,也只有摧毁网络秩序才能达至人人平等的信息共享目标。当然,由于心理动机不同,不同黑客行为的破坏程度也是有所区别的!

这样一种独特的黑客文化,必然孕育出黑客群体所读有的文化态度!

(1)这个世界不断涌现出许多迷人的问题等待人们去解决

(2)一个问题不应该重复地解决两次

(3)无聊而乏味的工作是可恶的

(4)自由是美好的,黑客们需要的是自由协作和信息共享,而不是专制和所谓的权威

(5)态度并不能成为能力的替代品,想成为黑客,只有态度是不够的,更重要的是,还在于努力工作,倾心奉献,钻研和实践!

言语

我写这个并不是因为我已经厌倦了一遍又一遍地回答同样的问题,而是考虑到这确实是一个有意义的问题,其实很多人(90%)确实需要问这个问题而没有问!

我被问了很多次有关安全领域的问题,比如,什么编程语言你最推崇?应该读什么书作为开始?总而言之,就是如何安全领域内成为一个有影响的人。既然我的答案和一般的答案有所不同,我打算把我的看法说出来!

-------------------------------------------

从哪里开始?

-------------------------------------------

我的观点可能和一般的看法不同,如果你刚刚起步,我建议你不要从Bugtrap,

Technotronic,Rootshell等站点开始。没错!不要从那里开始(尽管它们是很好的站点,而且我的意思并不是说不要去访问这些站点)原因非常简单。如果你认为你通晓“安全”,就是知道最新的漏洞,到头来你将会发现自己一无所获

我同意,知道什么地方有漏洞是十分必要的,但是这些并不能够为你的高手之路打下坚实的基础。

比如,你知道RDS是最新的漏洞,知道如何下载并使用对这个漏洞进行利用的Script工具,知道如何修补这个漏洞(也许,很多人只知道如何攻击,并不知道如何防范),可是,3个月后,补丁漫天飞舞,这个漏洞已经不存在了。。。。。现在你的那些知识还有什么用?而且你可能根本没有理解对漏洞的分析!

你应该学习的知识是什么?是分析?还是攻击手段?

这是我想要再次强调的,人们可能没有注意,已经有很多人认为他们只要知道最新的漏洞就是安全专家,NO!所有他们知道的只不过是“漏洞”,而不是“安全”

例如,你知道有关于phf的漏洞,showcode.asp的漏洞,但是你知道它们为什么会成为GGI漏洞的吗?

你知道如何编一个安全的 通用网关程序吗?你会根据一个GGI的状态来判断它有可能有哪些漏洞或哪方面的漏洞吗?或者,你是不是只知道这些GGI有漏洞呢?

所以,我建议你不要从漏洞开始,就当它们不存在(你知道我的意思),你真正需要做的是从一个普通用户开始。

---------------------------------------------

做一个用户

---------------------------------------------

我的意思是你至少要有一些基本的常规的知识。例如:你如果要从事Web Hacking,你是否连浏览器都不会用?你会打开Netscape,打开IE?很好!你会输入姓名,你知道HTML是网页,很好,你要一直这样下去,变成一个熟练的用户。你会区别ASP和GGI是动态的,什么是PHP?什么是转向,COOKIES,SSL?你要知道任何一个普通用户可能接触到的关于Web事物。不是进攻漏洞,仅仅是使用。没有这些基础(也许是枯燥的)知识你不可能成为高手,这里没有什么简捷好!现在你知道这里的一切了,你用过了。在你Hack Unix之前至少要知道如何Login,Logout,如何使用Shell命令,如何使用一般的常用程序(MAIL,FTP,WEB,LYNX等)。

要成为一个管理员,你需要掌握如下基本的操作

------------------------------------------------

成为一个管理员

------------------------------------------------

现在你已经超过了一个普通用户的领域了,进入更复杂的领域,你要掌握更多的知识。例如:Web服务器的类型,与其他的服务器有什么区别?如何去配置它,像这样的知识,你知道得越多句意味着你更了解它是如何工作的?它是干什么的?你理解HTTP协议吗?你的

HTTP1.0和HTTP1.1之间的区别吗?WEBDAV是什么?知道HTTP1.1虚拟主机有助于建立你的Web服务器吗?

你需要了解操作系统,例如你从来没有配置过NT,你怎么可能去攻击一个NT服务器呢?你从来没有用过Rdisk,用户管理器,却期望Crack一个管理员的密码,得到用户权限?你想使用RDS,而你在NT下的操作一直用的是图形界面?你需要从管理员提升到一个“超级管理员”,这不是指你有一个超级用户的权限,而是你的知识要贯穿你的所有领域。很好!你会在图形界面下填加用户,在命令行你也能做到吗?而且,system32里的那些。exe文件都是干什么的?你知道为什么USERNETCTL必须要有超级用户权限?你是不是从来没有接触过USERNETCTL?不要以为知道如何做到就行了,要尽可能知道得更多,成为一名技术上的领导者,但是。。。

-------------------------------------------------

你不可能知道所有的事情

-------------------------------------------------

这是我们不得不面队的事实。如果你认为你可以知道所有的事情,你在自欺欺人。你需要做的是选择一个领域,一个你最感兴趣的一个领域,并进一步学习更多的知识。

要想成为一名熟练的用户,成为一个管理员,成为一名技术上的领导者,直至成为某一个领域中最优秀的人,不是仅仅学习如何使用Web浏览器,怎样写GGI就行了,你知道HTTP和WEB服务器的原理吗?知道

当服务器不正常工作时应该怎样使它工作吗?当你在这个领域内有一定经验时,自然就知道怎样攻击和防御了!

这其实是很简单的道理,如果你知道所有的 关于这方面的知识。那么,你就可以知道安全隐患在哪里?面对所有的漏洞时(新的,旧的,将来的)你自己就能够发现未知的漏洞(你这时已经是一个黑客高手了)

你找漏洞可以,但你必须首先了解漏洞的来源。所以,放下你手中的Whisker的拷贝,去学习GGI到底是干什么的?它们是怎么使通过HTTP的Web服务器有漏洞的?很快你就会知道到底Whisker是干什么的了!

编程语言

在所有最近被提及的问题中,最唱听到的就是:“你认为应该学习什么编程语言”

我想,这要看具体情况了,如你花费多少时间来学习?你想用这种语言来做什么事?想用多长时间来完成一个程序?这个程序将完成多复杂的任务?

以下有几个选项:

*Visual Basic

一种非常容易学习的语言,有很多关于这方面的书,公开的免费源代码也很多,你应该能够很快地使用它。但是这个语言有一定的局限。它并不像C++那样强大,你需要在Windows下运行它,需要有一个VB的编程环境。想用VB来编写攻击代码或补丁是十分困难的 *C++

也许是最强大的语言了。在所有的操作系统里都存在。在网上有成吨的源代码和书是免费的,包括编程环境。它比VB复杂,掌握它需要花费的时间也比掌握VB长。简单的东西容易学,功能强大的东西理解起来也要困难一些,这需要你自己衡量

*Assembly

也许是最复杂的语言,也是最难学的语言。如果你把它当作自己的初入门语言。那么将会难的你的头要爆裂。但是,先学会了汇编,其余的编程语言也就变得容易多了。市场上的汇编书籍有减少的趋势。不过,汇编知识在某些方面至关重要,比如缓冲溢出攻击。 *perl

一种很不错的语言。它像VB一样容易学习,也像VB一样有局限性。但是它在多数操作平台上都能运行(unix和windows,所以这是它的优势。有很多这方面的书籍而且是完全免费的。你可以用它来制作一些普通的攻击工具,它主要用于一些文本方式的攻击技巧,并不适合制作二进制程序我想,这是你所有想知道的,有把握的说,C/C++是最佳选择。

-----------------------------------------

推荐的书

-----------------------------------------

另外一个问题是我推荐去读什么书。

我个人手边有以下的几本书作为参考。

Applied Cryptography (Btuce Scheiner)

Linux Application Development (mike johnson and troan)

windows assembly language and systems programming(barry kauler)

perl cookbook (tom chirstiansen and nathan torkington)(o"reilly)

linux programmer"s reference (richard petersen)(osborne)

all the o"reilly "pocket reference"books,which include vi.emacs.python. perl.pl/sql。nt.javascript.sendmail.tcl/tk.perl/tk

我总是在这些书的一些基本规则里思考。

我的心得是,大部分o"reilly的书都非常耐读,找一个你感兴趣的领域专心去钻研吧!

篇四:如何成为一名黑客(附FAQ)

黑客白皮书:如何成为一名黑客(附FAQ)

作为Jargon File的编辑和一些其他有名的类似性质文章的作者,我经常收到充满热情的网络新手的email提问(确实如此) “我如何才能成为一名出色的黑客?”非常奇怪的是似乎没有任何的FAQ或者Web形式的文档来说明这个十分重要的问题,因此我写了一份。

如果你现在读的是这份文档的离线拷贝,那么请注意当前最新版本(英文版)在

http://www.tuxedo.org/~esr/faqs/hacker-howto.html可以得到。

注意:在这份文档最后有 FAQ(常问问题解答)。请在向我提出任何关于这份文档的疑问之前读两遍。

目前这份文档有很多翻译版本: 保加利亚语, 简体中文, 繁体中文, 丹麦语, 荷兰语, 法语, 德语, 匈牙利语, 印尼语, 日语, 朝鲜语, 葡萄牙语, 俄语及 瑞典语。注意由于这份文档时有修正,所以以上翻译版本可能有不同程度的过时。 --------------------------------------------------------------------------------

什么是黑客?

Jargon File 包含了一大堆关于“hacker”这个词的定义,大部分与技术高超和热衷解决问题及超越极限有关。但如果你只想知道如何 成为 一名黑客,那么只有两件事情确实相关。

这可以追溯到几十年前第一台分时小型电脑诞生, ARPAnet 实验也刚展开的年代,那时有一个由程序设计专家和网络名人所组成的, 具有分享特点的文化社群。这种文化的成员创造了 “hacker” 这个名词。黑客们建立了 Internet。黑客们发明出了现在使用的 UNIX 操作系统。黑客们使 Usenet 运作起来, 黑客们让 WWW 运转起来。如果你是这个文化的一部分,如果你对这种文化有所贡献,而且这个社群的其它成员也认识你并称你为 hacker, 那么你就是一位黑客。

黑客精神并不仅仅局限在软件的黑客文化中。有人用黑客态度对待其它事情,如电子学和音乐—— 事实上,你可以在任何最高级别的科学和艺术活动中发现它。精于软件的黑客赞赏这些在其他领域的同类并把他们也称作黑客—— 有人宣称黑客天性是绝对独立于他们工作的特定领域的。 但在这份文档中,我们将注意力集中在软件黑客的技术和态度,以及发明了“黑客”一词的以共享为特征的文化传统之上。

有一群人大声嚷嚷着自己是黑客,但他们不是。他们(主要是正值青春的少年)是一些蓄意破坏计算机和电话系统的人。真正的黑客把这些人叫做“骇客”(cracker),并不屑与之为伍。多数真正的黑客认为骇客们又懒又不负责任,还没什么大本事。专门以破坏别人安全为目的的行为并不能使你成为一名黑客, 正如用铁丝偷开走汽车并不能使你成为一个汽车工程师。不幸的是,很多记者和作家往往错把“骇客”当成黑客;这种做法一直使真正的黑客感到恼火。

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

如果你想成为一名黑客,请接着读下去。如果你想做一个骇客,去读 alt.2600 新闻组,并在意识到你并不像自己想象的那么聪明后去坐五到十次监狱。关于骇客,我只想说这么多。

--------------------------------------------------------------------------------

黑客应有的态度

黑客们解决问题,建设事物,同时他们崇尚自由和无私的双向帮助。要被他人承认是一名黑客,你的行为得体现出你好像具备了这种态度一般。而要想做得好象你具备这种态度一般,你就得切切实实坚持它。

但是如果你认为培养黑客态度只是一条在黑客文化圈中得到承认的路子,那就大错特错了。成为具备这些特质的这种人对 你自己非常重要——有助于你学习,及给你提供源源不断的动力。同所有创造性的艺术一样,成为大师的最有效方法就是模仿大师的精神—— 不仅从智力上,也要从感情上进行模仿。

或许, 下面这首现代的禅诗很好的阐述了这个意思:

To follow the path:(沿着这样一条道路:)

look to the master,(寻找大师,)

follow the master,(跟随大师,)

walk with the master,(与大师通行,)

see through the master,(洞察大师,)

become the master.(成为大师。)

嗯,如果你想成为一名黑客,反复读下面的事情直至你相信它们:

--------------------------------------------------------------------------------

1

1. 世界充满了待解决的迷人问题。

做一名黑客会有很多乐趣,但却是要费很多气力方能得到的乐趣。 这些努力需要动力。成功的运动员从锻炼身体、超越自我极限的愉悦中得到动力。同样,做黑客,你得能从解决问题,磨练技术及锻炼智力中得到基本的乐趣。

如果你还不是天生的这类人又想做黑客,你就要设法成为这样的人。否则你会发现,你的黑客热情会被其他分心的事物吞噬掉——如金钱、性和社会上的虚名。

(同样你必须对你自己的学习能力建立信心——相信尽管当你对某问题近乎一无所知,但只要你一点一点地试验、学习,最终会掌握并解决它。)

--------------------------------------------------------------------------------

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

聪明的脑袋是宝贵的有限的资源。当世界还充满非常多有待解决的有趣的新问题时,它们不应该被浪费在重新发明轮子这类事情上。

作为一名黑客,你必须相信其他黑客的思考时间是宝贵的——因此共享信息,解决问题并发布结果给其他黑客几乎是一种道义,这样其他人就可以去解决 新问题而不是不断地忙于对付旧问题。

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

--------------------------------------------------------------------------------

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

黑客(泛指具有创造力的人们)应该从来不会被愚蠢的重复性劳动所困扰,因为当这种事情发生时就意味着他们没有在做只有他们才能做的事情—— 解决新问题。这样的浪费伤害每一个人。因此,无聊和乏味的工作不仅仅是令人不舒服而已,而且是罪恶。 作为一个黑客,你必须坚信这点并尽可能多地将乏味的工作自动化,不仅为你自己,也为了其他人(尤其是其他黑客们)。 (对此有一个明显的例外。黑客有时也做一些在他人看来是重复性或枯燥的工作以进行“脑力休息”,或是为了获得某种技能,或是获得一些除此以外无法获得的特别经验。但这是自愿的——有脑子的人不应该被迫做无聊的活儿。)

--------------------------------------------------------------------------------

4. 自由万岁。

黑客们是天生的反独裁主义者。任何能向你发命令的人能够迫使你停止解决令你着迷的问题,同时,按照独裁者的一般思路,他通常会给出一些极端愚昧的理由。因此,不论何处,任何独裁主义的作法,只要它压迫你和其他黑客,你就要和它斗到底。 (这并非向所有权威挑战。儿童需要监护,罪犯要被看管起来。 如果服从命令得到某种东西比起用其他方式得到它更节约时间,黑客可以同意接受某种形式的权威。但这是一个有限度的,有意的交易;那种权威想要的个人服从不是你应该同意给予的。) 权威喜欢审查和保密。他们不信任自愿的合作和信息的共享—— 他们只喜欢由他们控制的所谓“合作”。因此,作为一个黑客,你得对审查、保密,以及使用武力或欺骗去压迫有行为能力的人们的做法有一种本能的敌意。同时你要有为此信念斗争的意愿。 --------------------------------------------------------------------------------

5. 态度不能替代能力。

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

因此,你必须学会怀疑,并尊重各种各样的能力。黑客们不会为那些装模做样的人浪费时间,但他们却非常尊重能力—— 尤其是从事黑客工作的能力,不过任何能力总归是好的。具备很少人能具备的那些方面的能力尤其好,其中具备涉及脑力、技巧和专注方面能力的当然最好。

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

--------------------------------------------------------------------------------

黑客的基本技能

黑客态度重要,但技术更加重要。态度无法替代技术,在你被别的黑客称为黑客之前,有一些基本的技术你必须掌握。

这些基本技术随着新技术的出现和老技术的过时也随时间在缓慢改变。例如,过去内容包括使用机器语言编程,而直到最近才包括了HTML。总的来说现在主要包括以下技术:

--------------------------------------------------------------------------------

1. 学习如何编程。

这当然是最基本的黑客技能。如果你还不会任何编程语言,我建议你从Python开始。它设计清晰,文档齐全,合适初学者入门。 2

它是一门很好的入门语言,并且不仅仅只是个玩具;它非常强大、灵活,也适合做大型项目。我有一篇 Python评价详细说明这点。好的 教程 可以在Python网站得到。(译者:比较好的中文Python站点可能是http://pythonrecord.51.net。) Java也是好的入门语言。它比Python难得多,但是生成的代码速度也快得多。它同时也是一种优秀的计算机语言,不止是用来入门。

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

如果要做一些重要的编程工作,你将不得不学习C语言,Unix的核心语言。 C++与C非常其他类似;如果你了解其中一种,学习另一种应该不难。但这两种都不适合编程入门者学习。而且事实上,你越避免用C编程,你的工作效率会越高。

C非常有效率,节约你的机器资源。不幸的是,C的高效是通过你手动做很多底层的管理(如内存)来达到的。底层代码都是复杂极易出现bug的,会使你花极多的时间调试。如今的机器速度如此之快,这通常是得不偿失——比较明智的做法是使用一种运行较慢、较低效率,但大幅节省你的时间的语言。因此,选择Python。

其他对黑客而言比较重要的语言包括 Perl和 LISP。 Perl实用,值得一学;它被广泛用于动态网页和系统管理,因此即便你从不用Perl写程序,至少也应该学会看。许多人使用Perl的理由和我建议你使用Python的理由一样,都是为了避免用C完成那些不需要C高效率的工作。你会需要理解那些工作的代码的。

LISP值得学习的理由不同——最终掌握了它时你会得到丰富的启迪和经验。这些经验会使你在以后的日子里成为一个更好的程序员,即使你实际上很少使用LISP本身。

当然,实际上你最好五种都会(Python,Java,C/C++,Perl和LISP)。除了是最重要的黑客语言外,它们还代表了截然不同的编程思路和方法,每种都会让你受益非浅。

这里我无法给你完完全全的指导教会你如何编程——这是个复杂的技能。但我可以告诉你,书本和上课也不能作到(最好的黑客中,有许多,也许 几乎都是自学成材的)。你可以从书本上学到语言的特点——只是一些皮毛,但要使书面知识成为自身技能只能通过实践和虚心向他人学习。因此要作到 (一)读代码及(二)写代码。

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

过去找到适合阅读的好的代码是困难的,因为几乎没有大型程序的源代码能让新手练手。这种状况已经戏剧性地发生变化;开放源代码软件,编程工具和操作系统(全都由黑客写成)现在已经随处可见。让我们在下一个话题中继续讨论……

--------------------------------------------------------------------------------

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

我假设你已经拥有或者能使用一台个人电脑(今天的孩子们真幸福 :-) )。新手们能够朝学习黑客技能迈出的最基本的一步就是得到一份Linux或BSD-Unix的一种,安装在个人电脑上,并运行它。

没错,这世界上除了Unix还有其他操作系统。但它们都是以二进制形式发布的——你无法读到它的源代码,也不可能修改它。尝试在运行DOS或Windows或MacOS的机器上学习黑客技术,就象是带着脚镣学跳舞。

除此之外,Unix还是Internet的操作系统。你可以学会上网却不知道Unix,但你不了解Unix就无法成为一名Internet黑客。因此,今天的黑客文化在很大程度上是以Unix为中心的。(这点并不总是真的,一些很早的黑客对此一直很不高兴,但Unix和Internet之间的联系已是如此之强,甚至连Microsoft也无可奈何。)

所以, 安装一套UNIX——我个人喜爱LINUX但还有其他种类的(是的,你可以同时安装Linux及DOS/Windows在同一电脑上)。学习它,使用它,配置它。用它在Internet上冲浪。阅读它的源代码。修改它的源代码。你会得到比在Microsoft操作系统上更好的编程工具(包括C,LISP,Python及Perl)。你会觉得乐趣无穷,学到在你成为大师之前意识不到的更多的知识。 想知道更多关于学习Unix的信息,访问 The Loginataka。

想知道如何得到一份Linux,访问 我在哪里可以获得Linux。(译者:对于中文读者来讲,最简单的方式未过于前往附近的D版/正版光盘店。)

你可以在 www.bsd.org找到BSD Unix的求助及其他资源。

我有写一篇关于 Unix和Internet基础的入门文章。

(注:如果你是一个新手,我不推荐自己独立安装Linux或者BSD。安装Linux的话,寻求本地Linux用户组的帮助;或联系 Open Projects Network。 LISC维护着一些 IRC频道,在那里你可以获得帮助。)

--------------------------------------------------------------------------------

3

3. 学会如何使用WWW和写HTML

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

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

但仅仅拥有一个主页不能使你成为一名黑客。 Web里充满了各种网页。大多数是毫无意义的,零信息量垃圾——界面时髦的垃圾,注意,垃圾的水准都类似(更多信息访问 The HTML Hell Page)。

要想有价值,你的网页必须有内容—— 它必须有趣或对其它黑客有帮助。这是下一个话题所涉及的……

--------------------------------------------------------------------------------

4. 如果你不懂实用性的英语,学习吧。

作为一个美国人和一个以英语为母语的人,我以前很不情愿提到这点,免得成为一种文化上的帝国主义。但相当多以其他语言为母语的人一直劝我指出这一点,那就是英语是黑客文化和Internet的工作语言,你需要懂得以便在黑客社区顺利工作。

这一点千真万确。大概1991年的时候我就了解到许多黑客在技术讨论中使用英语,甚至当他们的母语都相同,英语对他们而言只是第二语言的时候;据我知道的报导,当前英语有着比其他语言丰富得多的技术词汇,因此是一个对于工作来说相当好的工具。基于类似的原因,英文技术书籍的翻译通常不令人满意(如果有翻译的话)。

Linus Torvalds,一个芬兰人,用英语注释他的代码(很明显这对他来说不是凑巧)。他流利的英语成为他能够管理全球范围的Linux开发人员社区的重要因素。这是一个值得学习的例子。

--------------------------------------------------------------------------------

黑客文化中的地位

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

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

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

要获得其他黑客的尊敬,基本上有五种事情你可以干:

--------------------------------------------------------------------------------

(来自:WwW.smhaida.Com 海达 范文 网:怎么成为一个黑客)

1. 写开放源代码软件

第一个(也是最集中的和传统的)是写些被其他黑客认为有趣或有用的程序,并把程序源代码提供给整个黑客文化使用。

(过去我们称之为“free software (自由软件)”,但这却使很多不知 free 的精确含义的人感到困惑。现在我们很多人,根据搜索引擎网页内容分析至少有2:1的比率,使用“ open-source”software(开放源代码软件)这个词)。

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

--------------------------------------------------------------------------------

2. 帮助测试并调试开放源代码软件

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

如果你是个新手,试着找一个你感兴趣的正在开发的程序,做一个好的beta测试员。你会自然地从帮着测试,进步到帮着抓臭虫,到最后帮着改程序。你会从中学到很多,并且与未来会帮你的人结下友谊。

--------------------------------------------------------------------------------

3. 公布有用的信息

另一个好事是收集整理有用有趣的信息做成网页或文档如FAQ列表,且让他们容易获得。

主要技术FAQ的维护者受到几乎同其他开放源代码的作者一样多的尊敬。

4

--------------------------------------------------------------------------------

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

黑客文化(还有Internet的工程方面的发展,就此而言)是靠自愿者运转的。要使Internet能正常工作,就要有大量枯燥的工作不得不去完成——管理mail list,新闻组,维护大型软件库,开发RFC和其它技术标准等等。

做这类事情的人会得到很多尊敬,因为每人都知道这些事情是十分花时间又不象编程那样好玩。做这些事情需要奉献精神。 --------------------------------------------------------------------------------

5. 为黑客文化本身服务

最后,你可以为这个文化本身做宣传(例如,象我这样,写一个“如何成为黑客”的正面的教程 :-) )(译者:不知道Barret把它翻成中文算不算?)。这并非一定要在你已经在这个圈子呆了很久,因以上四点中的某点而出名,有一定声誉后才能去做。 黑客文化没有领袖。精确地说,它确实有些文化英雄、部落长者、历史学家和发言人。若你在这圈内呆的够长,你或许成为其中之一。记住:黑客们不相信他们的部落长者的自夸的炫耀,因此大举追求这种名誉是危险的。与其奋力追求,不如先摆正自己的位置等它自己到你的手中——那时则要做到谦虚和优雅。

--------------------------------------------------------------------------------

黑客和书呆子(Nerd)的联系

同流行的迷思相反,做一名黑客并不一定要你是个书呆子。但它确实有帮助,而且许多黑客事实上是书呆子。做一个深居简出的人有助于你集中精力进行十分重要的事情,如思考和编程。

因此,很多黑客都愿意接受“书呆子”这个外号,更有甚者使用更尖刻的“geek(怪人)”一词并引以为豪—— 这是一种宣布他们独立于主流社会的声明方式。访问 The Geek Page 参加更多的讨论。

如果你能集中足够的精力做好黑客工作同时还能有正常的生活,这很好。现在作到这一点比我在1970年代是新手的时候要容易的多;如今主流文化对技术怪人要友善的多。甚至有越来越多的人意识到黑客通常是很好的恋人和配偶的材料。

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

--------------------------------------------------------------------------------

风格的意义

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

学会流畅地用母语写作。尽管程序员不能写好文章的错误看法相当普遍,但是有令人惊讶数目的黑客(包括所有我知道的最棒的)都是不错的作家。

阅读科幻小说。参加科幻小说讨论会。(一个碰到黑客和未来会成为黑客的人的好方法)

学禅,并且/或者练功习武。(精神修炼看来是惊人相似。)

练就能分析音乐的听觉,学会鉴赏特别的音乐。学会玩某种乐器,或唱歌。

提高对双关语、文字游戏的鉴赏能力。

这些事情,你已经做的越多,你就越是天生做黑客的材料。至于为什么偏偏是这些事情,原因并不完全清楚,但它们都涉及用到左-右脑能力的综合,这似乎是关键所在(黑客们既需要清晰的逻辑思维,有时又需要偏离逻辑跳出问题的表象)。 最后,还有一些不要去做的事情。

不要使用愚蠢的,哗众取宠的ID或昵称。

不要卷入Usenet(或其他地方的论坛)的骂战。

不要自称为“cyberpunk(网络叛客)”,也不要浪费时间和那些人打交道。

不要让你寄出的Email或张贴的帖子充满错误的拼写和乱七八糟的语法。

做以上的事情,只会招来嘲笑。黑客们个个记忆超群—— 你将需要数年的时间让他们忘记你犯下的错误。

网名的问题值得深思。将身份隐藏在虚假的名字后是骇客、解密者、d00dz 及其他低等生物幼稚愚蠢的行为特点。黑客不会做这些事;他们对他们所作的感到骄傲,而且乐于人们将作品与他们的 真名相联系。因此, 若你现在用假名,放弃它。在黑客文化里它会令你你失败的。

--------------------------------------------------------------------------------

其它资源

Peter Seebach 维护着一个非常好的 Hacker FAQ,专给那些不懂如何与黑客打交道的经理看的。如果Peter的站点不能访问,下面这个 Excite搜索应该有一份拷贝。

我也著有 黑客文化简史。

5

篇五:如何成为一名黑客

如何成为一名黑客

原著:Eric S. Raymond (esr@thyrsus.com)

翻译:SilentScreamer

为什么写这个文档

作为一个行话档案的编辑,我经常收到许多热心的网络新手的电子邮件,询问“我怎么样学习才能成为一个黑客?”奇怪的是,对于这个重要的问题,好象找不到任何FAQs和Web文件,所以我写了这个文档。如果你正在离线看这个文档的拷贝,现在的版本在以下地址: http://www.tuxedo.org/~esr/faqs/hacker-howto.html

什么是黑客?

行话档案里包含很多关于术语“黑客”的解说,大多数黑客技术熟练、乐于解决问题和克服限制。如果你想知道怎样成为一名黑客,只有两点是真正有关的。

这是一个共享文化的团体,是编程专家和网络天才的社会,追溯它的历史可以回到几十年前第一个分时小型机和最早的ARPA网实验,这个团体的成员发明的术语“黑客”。黑客建立了Internet。黑客做了今天的UNIX操作系统。黑客运转了Usenet,黑客做了互联网的工作。如果你是这个团体的一部分,如果你为它和其他黑客做出了贡献,他们叫你黑客,那么你就是一名黑客。

黑客的心智没有被限制到这个软件黑客文化。一些人用黑客态度对待其他的事情,象电子和音乐--实际上,你可以在任何最高级的科学或艺术中发现这种精神。软件黑客认同这些别的领域类似的精神,也把他们叫做黑客——一些人声称黑客界真正独立于他们工作的特殊媒体。但在这个文档的余下部分,我们讨论软件黑客的技巧和态度,以及共享文化的传统。

另外一些人称自己为黑客,但他们不是。这些人(主要是处于青春期的男性)闯入计算机系统、盗用电话系统。真正的黑客叫这些人是“Cracker”,希望自己和他们一点关系也没有。真正的黑客通常认为CRACKER很懒,不负责任,不够明智。不幸的是,许多新闻记者和作者被愚弄了,用单词“黑客”来描述“Cracker”,这激怒了真正的黑客。

基本的不同之处在于:黑客建立,Cracker破坏

如果你想成为一名黑客,请继续阅读。如果你想成为一个Cracker客,去阅读 alt.2600 新闻组。

黑客的态度

黑客解决问题建立事物,他们信仰自由和自愿的相互帮助。为了成为一个被接受的黑客,你的行为举止必须表现出你有这种态度。为了表现出这种态度,你必须真正相信这种态度。

如果你认为培养黑客态度只是一种在这个团体中获得接受的一种方法,你将无法达到顶点。

要成为一个信任这些态度的人,这对你很重要——这有助于你学习和保持你的激情。作为所有创新艺术,成为大师最有效的途径是模仿大师的心智——不仅是智力上的,还有情绪上的。

所以,如果你想成为一名黑客,重复下列事情直到你相信他们:

1、 世界上充满了迷人的问题,等待着被解决。

成为一个黑客有许多乐趣,但这些乐趣要花费很多努力。努力取决于动机。成功的运动员因身体表演的喜悦而,因冲破他们自己身体以前的限制而获得动机。类似的,成为一名黑客,你必须通过解决问题获得基本技巧,使你的技巧纯熟,锻炼你的智力。

如果你不是这种人,感觉这种方法不自然,为了成为黑客,你将需要它。否则,你将发觉你的黑客能量被分心了,例如性、金钱和社会认同。

(你也必须培养一种对自己学习能力的信心——一种信念,即使你也许不知道所有你要解决的问题,如果你抓住一点,从那里开始学习,你将学的足够多来解决下面一点——等等,直到你完成。)

2、 没有人解决一个问题两次。

创新的大脑是有价值的,有限的资源。他们不应该被浪费在重新发明车轮,还有很多迷人的新问题在那里等着解决。

为了举止象一个黑客,你必须相信其他黑客的思考时间是宝贵的——所以共享信息差不多是你道德上的义务,解决问题给出解答方法,以便其他黑客能解决新的问题,不必永远忙着旧的问题。

(你不必相信你有义务放弃你所有的创新产品,虽然黑客的所作所为是得到其他黑客的尊敬。卖出一些来维持你的吃饭、房租和电脑,这和黑客的价值是相容的。用你的黑客技巧维持一个家庭甚至发财至富也是相容的,只要你在做这些事的时候不要忘了你是一名黑客。)

3、 厌倦和苦工是罪恶

黑客(和普通的有创造力的人)永远也不应该无聊或是做那些愚蠢的重复性的苦工,因为这样做意味着他们不在做只有他们能做的事情--解决新问题。这种浪费伤害所有的人。因此,厌倦和苦工不仅另人不愉快,而且实际上是罪恶。

为了举止象一个黑客,你必须相当相信这一点,尽可能自动远离另人讨厌的小东西,不仅仅为你自己,而且为其他人(特别是其他黑客)。

(这显然有个例外。黑客有时做的事对观察者来说是重复的和另人厌烦的,但是那是头脑清楚的训练,或是为了获得某种技巧,或是有某种你不能用另外的方式获得的特殊经验,出于这种选择--没有人应该被强迫做无聊的事情。)

4、 自由是有益的

黑客自然是反独裁主义者。那些给你命令的任何人能够阻止你解决那些让你着迷的问题——这样做,将通常发现一些令人毛骨悚然的愚蠢的原因。所以无论在哪里发现独裁的姿态,必须与之斗争,以免它窒息你和其他黑客。

(这和与所有权威斗争不一样。儿童需要被指导,罪犯必须被拘禁。一名黑客也许赞同接受某种权威,为了得到比服从命令更多的东西。但那是有限的,有意识的廉价品;那种个人的放弃独裁的需要不在出售中。)

独裁使审查和保密兴旺。他们不信任自愿的合作和信息共享——他们只喜欢他们控制的“合作”。所以,为了举止象一个黑客,你必须对审查、保密、暴力的使用和欺骗培养本能的敌意。而且你必须愿意为这种信仰付出行动。

5、 态度不是能力的替代品。

为了举止象一个黑客,你必须培养一些这样的态度。但是抓住一种单独的态度不能使你成为一个黑客,任何更多更好的东西使你象个冠军运动员或是摇滚明星。成为一名黑客,将取决于智力、练习、贡献和努力的工作。

因此,你必须学会不信任的态度和尊重每一种的能力。黑客不会让装腔做势者浪费他们的时间,但他们崇拜能力——特别是黑客的能力,但其他任何能力都是有益的。需要技巧很少人能精通的能力特别有益,这些能力当中,思想敏锐、手工艺、和思想专注集中是最佳的。

如果你尊敬能力,你将乐于培养自己的能力——努力工作和贡献将变成一种激烈的比赛而不是苦工。至关重要的是你将成为一名黑客。

基本黑客技巧

黑客态度是至关重要的,但技巧更重要。态度不是能力的替代品,任何黑客梦想别人叫你黑客之前,你必须拥有某些基本工具包的技巧。

这些工具包随着时间的过去慢慢的改变,技术建立新的技巧,使旧的工具包淘汰。例如,它以前包括机器语言编程,直到最近包括HTML。但是现在,相当清楚,它包括下列:

1、 学会如何编程

这一点,理所当然,这是基本黑客技巧。如果你不懂任何计算机语言,我建议你从Python开始。它设计干净、很好的文档、对初学者友好。尽管是一个好的第一语言,它不仅是个玩具;它非常强大有力,并且有弹性,很适合大的项目。我更详细的描写了它,在[Pythond的价值]。在Python web sit有一份指南。

java也是一种好的学习编程的语言。它比Python难学,但比Python更快的产生代码。我认为它是极好的第二语言。

如果你仅仅知道一两种语言,知道你没有达到黑客的技巧水平或只不过是个程序员——你需要学会怎样用普通的方法思考编程问题,独立于任何一种语言。为了成为真正的黑客,你需要达到这一点,通过相关的手册在几天内学会一种新的语言。这意味着你应该学会几种不同的语言。

如果你进入严肃认真的编程,你必须学C,UNIX的核心语言。C++和C非常相近;如果你知道一个,很容易学另外一个。然而这两种语言都不适合作为你初学的第一语言。

其他语言对于黑客也特别重要,包括Perl和LISP。Perl值得学,有它实际的原因;它广泛的应用于动态网页和系统管理,所以即使你从来没有写过Perl,你也学会读它。LISP值得学,当你最终掌握它,对你有深远的启迪意义,这种经验使你在以后的日子成为一个更好的程序员,即使你从未实际使用LISP。

最佳的,实际上,学会所有这五种语言(Python, Java, C/C++, Perl和LISP)在最重要的黑客语言之间,他们描绘着非常不同的编程途径,每一种途径你都会觉得有价值。

在这里,我不能给你关于怎样学习编程的全部指导——这是一种复杂的技巧。但是我可以告诉你书本和教材上没有教你的——(许多,也许大多数最好的黑客是自学的)你可以学习语言的特征——一点知识——从书本上,但是,使知识变成生存技巧的心智只能通过练习和做学徒来学会。将要做的就是A)读代码B)写代码。

学会编程就象学会用优美的自然语言写作。最好的方法是读一些熟练人写的材料,写一些自己的东西,读多些,写多一点,再读多些,再多写一些,??

找好的代码阅读过去是困难的,因为很少有为初级黑客阅读和修补的大型源程序可利用。现在戏剧性的改变了;开放资源软件、编程工具和操作系统(全是黑客建立的)现在可被广泛的利用。这将我们引入下一个话题??

2、 获得一种开放资源的UNIX,并且学会使用和运行

假设你有一台PC机,或者可以访问到它(今天,孩子们很容易做到)。任何想学到黑客技巧的新手最重要的一步是获得一份LINUX或BSDUNIX的拷贝,安装到机器上,并且运行它。

是的,世界上除了UNIX还有其他操作系统,但是它们都是通过二进制发布的——你不能读源代码,不能修改它。在DOS上、WIN上或MACOS上学习黑客技术,就象戴着枷锁学习跳舞一样。

除此之外,UNIX是INTERNET的操作系统。你不懂UNIX但可以学会使用INTERNET,然而,你不理解UNIX你就无法成为INTERNET黑客。因此,今天的黑客文化相当明显地以UNIX为中心。(这一点不总是正确的,一些以前的黑客仍对这一点不满,但是UNIX和INTERNET之间紧密的共生关系,即使微软也无可奈何。)

所以,装一个UNIX——我自己喜欢LINUX但有别的方法(是的,你可以在同一台电脑上运行

LINUX和DOS/WINDOWS)。学习它,运行它,修补它,用它上网。阅读它的代码,修改它的代码。你回得到比微软操作系统上提供的更好的编程工具(包括C、Lisp、Python和Perl),当你成为一个高明的黑客后,当你回顾过去,你将得到快乐,你获得了比你当初想象到的更多的知识。

(注意:如果你是新手,我不推荐安装LINUX或BSD作为单独的方案。对于LINUX,找一个本地LINUX用户组寻求帮助;或者)联系Linux Internet Support Co-Operative。在LISC维护的IRC频道,你可得到帮助)。

3、 学会使用WWW,写HTML。

黑客们建立的大多数东西做一些看不见的工作,帮助工厂、办公室和大学运转,和一个非黑客生活没有明显的冲突。WEB例外,大量黑客玩具正改变世界,连政治家都承认。只为这个原因(还有其他别的原因),你必须学会用WEB工作。

这不仅仅意味着学会怎样用浏览器(任何人都会用),而且要学会写HTML——WEB标记语言。如果你不知道怎样编程,写HTML将教你一些有益的习惯。所以,建立一个主页。

但是只有主页,并不足够使你成为一名黑客。WEB上到处是主页。其中大多数是毫无意义的、毫无内容的,象一堆烂泥——看起来很时髦的烂泥,你要留意,但所有的烂泥都一样。

你的主页必须有内容——对于别的黑客它必须有趣并且/或者有用。

黑客文化的状况

象多数没有货币经济的文化一样,黑客主义涉及名声。你正在试图解决一些有趣的问题,但是它们怎样有趣,你的解答是否真的很好,只有技术权威或高手去判断。

因此,当你开始黑客游戏的时候,通过其他黑客考虑你的技巧,学会保持你的分数(这是为什么直到别的黑客一致叫你黑客的时候你才是个真正的黑客)。这个事实是模糊的,根据黑客的形象是孤独的工作;也由于黑客文化的禁忌(现在逐渐衰退但仍有效)反对承认自我或外部的确认,被卷入一个人动机。

特定的,黑客主义被人类学家称做礼物文化。你获得地位和名声,不是通过对别人专横,不是因为你的美丽,不是因为你有别人想要的东西,只是通过送掉某些东西。特别是送掉你的时间,你的创造,和你技巧的结果。

基本上,你做的五种事情可以得到其他黑客的尊敬。

1、 编写开放资源软件

首先(最重要最传统的)是编写一些别的黑客认为有趣或有用的软件,并把软件的源代码给整个黑客文化使用。

体裁作文