百科问答小站 logo
百科问答小站 font logo



国内网络安全行业人才何时饱和,这个行业还有几年的热度? 第1页

  

user avatar   liu-wei-ran-8-34 网友的相关建议: 
      

未邀自答。

本来我都关机、躺下、准备睡觉了,结果手贱点了知乎,看到了这么一个问题,又看到好朋友

@scalers

回答了这个问题,忍不住又把电脑打开,准备花一点时间认真回答一下这个问题。这可能不仅是对问题本身的回答,也是差不多这一年来我对信息安全这个领域的理解和体会吧。

=============================

利益相关:

  • 信息安全方向博士生,主攻Public Key Encryption,主要方向是Predicate Encryption。
  • 1-2年之内就要就业,方向应该就是数据安全了。
  • 这一年认识了不少领域内的前辈和朋友,了解到不少现状。

=============================

0. 总体感受:人才既饱和,又匮乏

现在安全行业的现状基本是:上层人才极度匮乏,下层人才极度饱和。

大概半年多前和一位领域内的人士聊天,对方说了这么一句话:

我们招人要求真的不高啊,只要领域相关,7年以上工作经验就好了。

当时,幼稚的我心想,我靠你逗我呢,这还要求不高?哪儿找安全领域干7年以上的人去?经过半年的折腾,我现在的感觉是:这个要求真的不高,一点都不高,可能太低了…

为什么?因为信息安全这个领域太大了,大到什么程度呢?大到做这个领域的人可能需要把几乎计算机科学的所有领域全理解(注意,不是了解,是理解)以后,才能集大成,然后把这个领域做好。

=============================

1. 数学和计算机理论基础要求

信息安全中最理论的基础是密码学。密码学谁提出来的?图灵提出来的。为什么是他提出的密码学?因为密码学的实现基础是图灵机,或者说是有限自动机原理。密码学的理论基础是抽象代数和信息论。想要比较深入的学习密码学里面的知识,至少要明白计算机领域的归约(Reduction),计算复杂性理论;至少要明白抽象代数里面的群(Group)、环(Ring)、域(Field);至少要了解信息论中信息熵的概念;这些如果不理解的话,安全证明估计就过不去了…

要是追新,看看密码学界的发展,起码说提出一个名字能明白是什么意思,估计得了解了解椭圆曲线(Elliptic Curve),双线性对(Bilinear Pairing)或者多线性对(Multilinear Pairing),格(Lattice)等等。

=============================

2. 编程能力要求

有人说了,我不用学密码学理论,我能看懂论文,把方案实现了就行了啊。因为实现的方案从理论上是否安全,要考察参数的选择。参数选择的话,就得看懂安全性证明了。我个人只是做了Java Pairing-Based Cryptography Library(jPBC)的一些实现,几乎时常会收到很多邮件,询问这个库怎么用,为什么自己实现的不对。多数情况都是因为对根上的东西没理解,导致用起来不对。

有人说了,我也不用看懂论文,我能写最经典的密码学算法,能正确调用就好了。很遗憾,就算是最经典的密码学算法,即使是有经验的开发人员,绝大多数都不能正确实现。仅以RSA为例,请移步我的专栏文章:

RSA有多安全,有多不安全?Black Hat 2014 - The Matasano Crypto Challenges解析 - 第一部分 - 刘学酥的密码学与信息安全专栏 - 知乎专栏

看看里面有多少坑吧。

=============================

3. 计算机相关技术能力要求

有人说了,我不用写密码学算法,我能正确用就行了。提到网络通信,就有计算机网络的相关知识了。我个人感觉计算机网络知识的复杂度现在和操作系统都差不多了。尤其是现在分布式系统,比如分布式计算和分布式存储技术的普及,分布式计算机网络本身就构成了一个比操作系统还要复杂的总系统。做安全的话,没有计算机网络和操作系统的知识几乎只能做点皮毛工作。

提到网络和操作系统,就会想到这本身就需要比较强的编程能力。举个简单的例子,Java优秀的网络通信框架Netty和MINA(感谢

@Edsger Lin

的指正,这里打错了),是不是需要了解一下?HDFS,MapReduce是不是了解一下?要不要看看源代码… 来吧,这相关的资料、书籍,可以放满一个书柜了。

=============================

4. 网络安全技术要求

有人说了,我也不用懂这些,我是做技术的,了解网络知识以后,找漏洞挖漏洞,直接走向人生巅峰!怎么说呢,漏洞这个东西虽然知识本身要求的不深入,但是非常考验广度。比如数据库的了解,网络得了解,各种Web语言得了解,里面有什么坑得了解。而且,很多时候漏洞检测和网络渗透会涉及到语言本身上去。举个例子,Black Hat 2014中有个视频,所在的公司开发了一套漏洞检测工具Ravage(为什么我知道,我听译的…

逆天漏洞检测及渗透生成工具——RAVAGE课程详情

)。这个工具的制作已经深入到JVM的汇编层了。

=============================

5. 文档能力和与人交流的能力

信息安全领域,不光是技术层面的,还有人员层面的。软件开发过程中出现的漏洞,绝大多数都是开发人员没有遵守安全软件开发要求而导致的。同时,各个公司、各个产品的安全架构,安全技术都不太一样。这种时候,为了保证产品的安全特性,就需要文档撰写和阅读能力,以及交流能力了。我和某位领域内人士交流的时候,总听到一种抱怨:我靠,这安全机制不是瞎搞么,这怎么评估,怎么实现?

很遗憾,互联网发展太快了,很多东西都没有模块化体系化,现实就是这样。想要解决这个问题,就需要一群在计算机各个领域内都精通,或者退一步,都了解的人,将各种安全技术和产品抽象,从而提出并设计架构。这样才能提出一种比较通用的方法,从架构上去解决大部分的安全问题。不过这对一个人的要求可是有点高啊。

安全又仅仅是技术问题吗?非也。信息安全中,技术占3成,管理占7成。技术再好,密钥管理不成熟,开发流程不成熟,访问控制机制设计的不成熟,甚至私下交易,从内部泄露用户隐私,也会导致严重的安全问题。这并不是耸人听闻。CSDN密码数据库泄露可能仅仅是冰山一角。要我看,用户的密码早就被泄露光了… 当然现在已经好了很多。这就意味着,管理也是个很困难的问题。说到管理,交流能力也是必不可少的。

=============================

6. 其他能力

信息安全和通信技术是密不可分的。通信技术的发展必然会导致信息安全技术的发展。举例来说,枚举法是最没创意的攻击方法了。但是现在有了高性能计算机,分布式计算机系统,对于几年前的数据,用枚举法可能反而比其他方法更快。另一个例子,量子计算领域现在蓬勃发展,没准几年,十几年或者几十年后量子计算机就普及了。这并不是不可能,想想计算机从刚出现到现在人手几台一共花费了多长时间?那个时候,现有的体制全部推翻重来,作为安全人员就要更新自己的知识库了。当然了,这个例子有点极端,量子计算机真的来了,所有计算机科学相关的从业人员就要洗牌了。

总的来说,信息安全领域要求从业人员随时学习,随时更新知识库。而且这种更新速度是依赖于计算机科学这门学科的发展而来的。2008年DDoS攻击还没影子呢,现在DDoS几乎就是家常便饭了。网络的迅速发展,特别是后面云计算云存储的发展,给安全从业人员又带来了更多的问题。这必须要求从业人员随时更新自己的知识,持之以恒的站在最前沿思考问题。

=============================

7. 有人能做到吗?

  • 密码学精通,可以到安全研究院。比如很多著名密码学家,Gentry,Shoup什么的就在IBM,进行全同态加密的理论研究和具体实现。而且,理解密码学的人学其他方面也比较快。但是需要到领域内快速积累。
  • 编程能力强,计算机相关技术强,就可以不光做安全了。但安全领域绝对欢迎这样的人才。
  • 网络安全技术能力强,可以到任何一家互联网公司做安全。知乎上的几位技术派大牛们,大多是这方面的佼佼者。
  • 文档能力和与人交流的能力强,可以做安全咨询。这是个比较有意思的领域。这个领域更需要广泛了解安全的相关知识。不仅从技术角度,也要从管理角度。

我自己只是在公钥密码学中的一个很小的领域有一点点很小的成绩。因为计算机基础知识不足,接下来的一年我估计要各种补基础知识了,而且估计还补不完。上面说的这些对人才的需求,基本上只要精通一点,就是领域内的佼佼者了。

所以,信息安全领域是一个集大成的领域。而且几乎任何一个分领域对于领域内知识的要求,都高于本身的要求。因为基础不够的话,想做安全就有点痴人说梦了。

=============================

8. 回到主题:会饱和吗?

回到问题上面来,安全人才会达到饱和吗?我认为有生之年能把上面说的起码都做过一遍,几乎都是不可能的。信息安全的人才要求很高。能力强,哪怕是一方面能力强,都可以从茫茫人海中脱颖而出。一个直接的体现就是信息安全周围配套内容的普及。我在做Black Hat,包括密码学一些视频的听译时,就尝试过让别人帮忙听写,我来翻译。结果,即使是专业听译人员,拿到这些视频也都瞎了。因为专业词汇太多,几乎是中文都不知道什么意思。Black Hat系列这么好,为什么一直以来没人做字幕,听写翻译?因为确实对听译人员要求很高。我自己水平有限,只能听译密码学、Java、以及部分数据库、网络通信相关主题的Black Hat,而且也会遇到各种问题,遇到从来没听说过的技术、开源代码、工具、或者思想。当然这个过程也是收获的过程。

所以,从高层看,信息安全人才应该一直会保持匮乏的状态,等待新鲜血液的注入。

另一方面,由于门槛太高,不少人会在门外徘徊。门外的人多了,饱和一词也就来了。

对于我自己,虽然得到了领域内人士的部分认可。但是,越往里面走,越发现里面的坑有多深。唯一的办法就是不停的学习和更新知识。毕竟,学习要比提出新方法简单多了,大家说对吗?

=============================

9. 只有信息安全领域是这样?

就如同事物都是螺旋向上发展的一样,正像其他回答说的那样,任何领域都是:水平不高,哪里都饱和;水平高了,哪里都会要。什么叫水平高,高到什么程度就够了?我认为没有尽头。一个领域,越是钻研,越是往深了看,就越发现自己的渺小和无能。这会反过来导致更强的求知欲和更强的动力。等觉得自己小到只是一个沙子的时候,抬头一看,可能就会明白,绝大多数人,可能连分子大小都没到,但他们认为自己内部的原子和电子,就是整个世界。

希望我们都能成为一粒沙子,看着大海的波涛汹涌,而毫无意识的,为这个世界的组成贡献自己的一份力量。

以上。




  

相关话题

  能否通过对编译器或者编译环境的限制来应对木马或者病毒呢? 
  为什么不少人抵制各个手机厂商的反诈系统? 
  自动驾驶车如何降低被黑客控制的风险? 
  软件测试和网络安全哪个好就业? 
  从事网络安全领域在以后会吃香吗? 
  我想做黑客,要多久? 
  如何看待货拉拉 CEO 发长沙事件反思信:「难辞其咎,不逃避尽力做好」?其还可以从哪方面进行安全提升? 
  暴露自己IP地址有危险吗? 
  360和火绒你们选哪一个? 
  能否借鉴哈佛架构在OS内存管理机制层面实现两块隔离区域分别存放指令和数据以抵抗堆栈溢出等安全问题? 

前一个讨论
最后你们为什么没有在一起?
下一个讨论
茶道里的「一期一会」是什么意思?





© 2024-12-18 - tinynew.org. All Rights Reserved.
© 2024-12-18 - tinynew.org. 保留所有权利