电院信息安全16级同学分享

By Jiajun Du

为什么选择了该专业

我相信90%选择了信息安全专业的同学都第一志愿想去CS而把软工/信安当备选。而对于F15/16两级的工科平台同学来说,没有软工这个选项,所以我最后就来了信安。

如果对于通信和安全没有特别爱好,仅仅想把信安当成计算机来学的话,我建议选专业的时候去软件工程。软件工程的培养计划和教学质量有目共睹,而信安的培养计划罄竹难书。

专业培养计划简介

注:网络空间安全学院2019年初换届,著名的谷大武教授担任新院长。而后在2019年底进行了新培养计划的起草和讨论。以下内容均基于F18及以前年级,仅供参考。各年级培养计划可以直接去教学信息服务网(https://i.sjtu.edu.cn/)查询。

工科平台课程

从F18级开始,学校在全校工科推广了工科平台模式。于是无论入学方式是工科试验班,还是电子信息类(不含IEEE和AI),在前3学期均要上平台课程。

这些课程包括(工科平台与电子信息类在大一上和大一下部分课程时序不一样):

大一上:高等数学(或数学分析),线性代数,程序设计思想与方法(C++),大学化学(与实验),工程学导论

大一下:高等数学(或数学分析),大学物理(与实验),基础电路理论(与实验),工程实践

大二上:大学物理(与实验),理论力学,概率统计,数据结构

专业基础课

这部分课程是前三学期为学院或者专业开设的课程,这些课程将会和电院其他专业合上。包括:

大一下:工程实践与科技创新1

大二上:离散数学,数字电子技术,模拟电子技术,电子技术实验

专业必修课

这部分课程是专业课,我将不再按照年级进行划分,而是按照课程类别或者内容进行划分。

计算机:软件工程,计算机组成与体系结构,数据库原理,计算机通信网络,编译原理,操作系统

‌安全或者密码学:网络信息安全概论,信息安全数学基础,现代密码学,Internet安全协议,Windows安全原理与技术,信息安全科技创新,信息安全综合实践

‌通信:信号与系统,信息论与编码,数字信号处理,数字系统设计,FPGA应用实验,嵌入式系统原理与应用

专业选修课

‌信安大三下和大四上两学期,每学期开设了多门专业选修课,需要每学期选至少1门,总共选至少3门。

‌这些课包括:计算机病毒原理,移动通信,数据通信,路由原理与协议,通信原理,数据挖掘,信息安全管理技术,信息内容安全的理论与应用,信息安全防御技术,网络安全攻防实战技术,人工智能导论,信息系统安全评估

‌个人对培养计划评价

‌我对于信安目前的培养计划是不满的。

‌第一,过多的通信类课程。这一点的原因和学院的师资背景有关系。网络空间安全学院前身信息安全工程学院成立之初,师资主要来自于电子系。通信背景的师资长期占学院大头,部分计算机或者密码学背景的教师出走。以至于之前有其他学校网络空间安全学院团队来考察的时候,评价交大信安是“通信安全”而非“计算机安全”。

‌第二,培养计划“十年磨一剑”。教学信息服务网上可以查到的培养计划,自F11级起几乎没有变化。而当我在饮水思源BBS寻宝的时候更是发现,2005年的培养计划中的课程和现在都没根本性区别。培养计划至少10年没有更新,部分课程十几年不变,内容非常老套。

‌第三点,部分课程质量非常低,我将在下一节介绍。

‌这样下来,如果仅仅跟着培养计划走,听学校/学院安排,等到毕业的时候就会发现自己啥都不会,搞安全啥都没学到,搞开发比不上CS或者软工。

‌好/坑的专业课介绍

信息安全综合实践

‌这课由孟魁主讲,介绍网络安全相关的技术,并进行实验,比如:EFS,PGP,SSL/TSL,SSH,入侵检测,渗透测试,WLAN攻防等内容。这课是信安为数不多的直接使用安全技术的课程,老师会每学期收集意见并对课程内容进行调整。理论上是网络信息安全概论对应的实验课程,但是由于培养计划时序问题没有与其放在同一学期或者相邻学期。

信息安全科技创新

‌这课是选修课,如果有PRP或者大创可以不选。但是考虑到这课平均分90+,建议大家选上。主要介绍的是防火墙技术,实验部分会在实验室的硬件防火墙上进行实验,以及Linux上配置iptables表。

计算机通信网络(蒋兴浩)

‌该老师目前在学校资产与实验室处当领导,从来不管自己实验室的事情,担任导师都是挂名不管事。从上课来说,只会念PPT,作业答案也讲不明白,属于一问三不知的感觉。讲课的时候对传输层和应用层基本上没怎么讲,而考试中这部分内容的比例还不小。

‌另外这门课使用的教材《计算机通信网原理与技术》非常老旧,目前已经绝版,实际采用的是影印版。这书是2012年左右编写的,其中的有“下一代通信网络(3G)”这种描述,可想其老旧到什么程度。

嵌入式系统原理与应用(周志洪)

‌这课是信安自己开的,和电院其他专业的嵌入式不一样。

‌之前上这课的老师在2018年离职了,于是周志洪接手这课就重新调整了课程内容。虽然名为“嵌入式系统原理”,但是基本上没有讲原理,而是直接就着某个STM32开发板论坛的教程PDF开讲。照着这种培训类的PDF念实在是没有意思,他自己也意识到了,最后就只上了3周的课,后面5周就是自己做项目了。

‌他在给F16上课的时候,考核方式一波三折。最开始说要期末闭卷考,后来又说开卷考,最后改成做项目的形式。做项目需要开发板,他最开始不提供开发板,要同学们自己买,做完之后二手出掉。当大家都买好了之后,他说搞了一笔经费,采购了一批开发板,可以发给同学使用,然而这时大多数人都已经买好了开发板。后面课上又说给F17上课的时候想用树莓派作为开发板,然而他已经买了STM32开发板了,总不能闲着吧。最后项目做完了他也不知道教务处有要求2周之内上传成绩,还是同学提醒他才安排了项目展示。

小技巧

部分课程的考核方式近乎一致,所以如果同时选了这些课,可以只做一份大作业而交到多门课。

这些课是:数据科学导论——Python之道(通识课),数据挖掘,人工智能导论,信息内容安全理论与应用

该专业毕业生出路介绍

虽然信安培养计划比较垃圾,但是就业的时候这块牌子还是很好用的。基本上用人单位都把信安当成计算机相关专业,和CS同等程度考虑。从前几年的就业质量报告来看,毕业去向搞安全的真的不多,早几年去银行,这几年去互联网,当然华为保底。大多数人只是把这个专业当成计算机的备胎罢了。总结一下就是,专业不是影响就业的因素。

从考研的角度来看,电院每个专业考研专业课都有信安学过的,比如电子系的819信号系统和信号处理,电气系的822基电,网安本专业的823计算机通信网,CS的408计算机基础综合,自动化系可选408或者819。如果考研想去电院其他专业的话,专业课基本上不存在跨考的问题。

对选择了该专业的大一小朋友给予什么建议

第一,要想清楚自己要做什么,趁早想清楚能够提前做好准备。

第二,绝对不能依靠培养计划。如果只是跟着培养计划走,等到毕业的时候真的就废了。对于计算机基础课,自己一定得另外学习公认的好教材,比如《深入理解计算机系统》(CS:APP)等。这些教材质量比信安采用的教材质量不知道高到哪里去了。对于想搞科研的同学,信安目前的培养计划对于本科生科研几乎没有重视和鼓励,所以需要自己去联系实验室(避坑:蒋兴浩、孙锬锋团队)。

第三,部分课程的历年考题和大作业几乎不会变化。对于考题来说,完全可以搞到往年试题(记忆版),对于大作业,也有https://github.com/SJTU-SCS/awesome-scs供参考。仅仅为了提高分数可以进行参考,但是要提升自己能力,还是得多花心思。

Last updated