要成为网络高手,要具备那些知识?

来源:百度知道 编辑:UC知道 时间:2024/06/03 11:00:50
比方说什么样的语言?网络协议要不要精通什么的。

编程语言
一些最近我经常被问的问题中最常听的问题就是 我认为什么编程语言应该学:
我想这要根据一些具体情况。----大致上是你准备花费多少时间在上面,你想让这个语言有多么有用。一个程序要多长时间完成。和这个程序能完成多么复杂的事情。
以下有几个选项(排列没有什么意义)。

Visual Basic.
- 非常容易学习的语言。很多这方面的书,公开的免费原代码也很多。你应该可以很快的使用他。但是这个语言有一个限度。他并不是象 比如 c++ 一样强大。你需要在WINDOWS 下运行他。需要一个VB 的编程环境(不论盗版还是正版的 ,反正他不是免费的)。想用VB 来编攻击代码,或补丁是十分困难的。
C++
- 也许是最强大的语言.在所有的操作系统里都有.在网上有上吨的原代码和书是免费的。包括编程环境。比VB 要复杂一点。也许要掌握他花费的时间要比VB 要多一点。简单的东西容易学,干复杂的活的东西理解起来也要复杂一点。你自己衡量。
Assembly
- 最复杂的,也是最难学习的语言,如果你把他当作第一个你要学习的语言,那么将会难的你头要爆裂。但是,你先学了汇编,其余的还不是小菜 ;) 有一些书,这方面的教材有减少的趋势。但是汇编知识对某些方面来说是致关紧要的。比如:缓冲逸出。攻击。很多这类的免费软件。但从这个语言开始是十分*困难*。
Perl
- 一个很不错的语言. 他象VB 一样容易.学习他相应的容易一些.他也象VB一样有限制,但是他在多数操作平台都能运行.(UNIX . 和WIN ).所以这是他的优势.很多这方面的书. (O'Reilly 'Camel' books), 而且这个语言是完全免费的.你可以使用他来作一些普通的攻击工具. 他主要是作用于一些文本的技巧攻击.不适合做二进制程序.
我想这是所有你想知道的. 有把握的说 C/C++是最佳选择.

推荐的书
另外一个问题是我推荐去读什么书:
我个人手边总是有以下的几本书做参考:
Applied Cryptography (Bruce Scheiner)
Linux App