课程基本信息
课程编号:B3J392110
课程中文名称:密码学及应用试验
课程英文名称:Cryptography and Application Experiment
开课学期:春季
学分/学时:1.5/48(实验学时)
先修课程:信息安全数学基础,数据结构与程序设计(信息类)
建议后续课程:信息网络安全、计算机网络
适用专业/开课对象:信息安全、信息对抗技术专业,二年级本科生
任课教师:刘建伟、伍前红、高莹、郭华、张宗洋、姚燕青
团队负责人:刘建伟 核准院长:刘建伟
课程教学大纲正文
一、课程的性质、目的和任务
密码学及应用试验是信息安全专业的一门专业基础必修课。该课程主要讲授和实现与现代密码理论相关的一些算法,注重实验和工程化的实现,是一门实践性较强的课程。
本课程通过实践教学,学习密码学的基本原理、国内外典型密码算法和密码的应用技术,培养学生:具有对密码学的基本原理深刻理解和分析的能力,以及对复杂密码算法正确实现的能力;解决相应的信息安全实际问题的能力。具体教学目标可分解为以下三点:
(1)具有利用Python、C++等高级程序语言实现密码算法的能力;
(2)掌握密码算法设计与攻击的实验方法,培养学生分析与解决实践问题的创新设计能力;
(3)具有获取运用标准、规范、手册、图册等有关技术资料的能力。
课程目标对毕业要求的支撑关系
课程目标对毕业要求的支撑关系 |
毕业要求1:工程知识 能够将数学、自然科学、工程基础和专业知识用于解决复杂计算机工程问题。 |
课程目标1,2 |
毕业要求2:问题分析 能够应用数学、自然科学基本原理,并通过文献研究,识别、表达、分析复杂计算机工程问题,以获得有效结论。 |
课程目标2, 3 |
毕业要求3:研究 能够基于科学原理并采用科学方法对复杂计算机工程问题进行研究,包括设计实验、分析与解释数据、并通过信息综合得到合理有效的结论。 |
课程目标1,2 |
毕业要求4:使用现代工具 能够在计算机工程实践中开发、选择与使用合理有效的技术、资源、现代工程工具和信息技术工具,并了解其局限性。 |
课程目标3 |
二、课程内容、基本要求及学时分配
本课程重点讲解和实现与现代密码理论相关的一些算法,主要内容包括:古典密码、分组密码、公钥密钥体制、哈希函数和密钥建立。
序号 |
教学内容 |
基本要求及重点和难点 |
学时 |
教学方式 |
对应的教学目标 |
支持毕业要求指标点 |
1 |
古典密码算法 实现单表代替密码及对其进行的攻击;实现多表代替密码及对其进行的攻击。 |
掌握单表代替密码及多表代替密码。 重点是多表代替密码的实现,难点是对单表、多表密码体制的攻击。 |
6 |
上机 |
1 |
1,3 |
2 |
分组密码算法 实现数据加密标准DES及对DES的三轮差分攻击;实现高级数据加密标准AES |
掌握DES加密算法,掌握AES加密算法。 重点是DES、AES加密算法的实现,难点是对三轮DES的差分攻击。 |
12 |
上机 |
1,2,3 |
1,2,3,4 |
3 |
公钥密码算法 实现RSA算法;实现椭圆曲线密码算法 |
掌握RSA加密算法,掌握椭圆曲线密码算法。 重点是RSA加密算法的实现,难点是椭圆曲线密码算法的实现。 |
12 |
上机 |
1,2,3 |
1,2,3,4 |
4 |
数据完整性算法 实现SHA1算法及对SHA1算法的生日攻击;实现ElGamal数字签名算法。 |
掌握SHA1算法,掌握ElGamal数字签名算法。 重点是SHA1算法及ElGamal数字签名算法的实现,难点是对SHA1算法的生日攻击。 |
12 |
上机 |
1,2,3 |
1,2,3,4 |
5 |
密钥管理 实现Diffie-Hellman密钥协商协议 |
掌握Diffie-Hellman算法。
|
6 |
上机 |
1,2,3 |
1,2,3,4 |
三、教学方法
机房实验。
四、课内外教学环节及基本要求
本实验共安排48学时。采用课堂讲授、举例示范和上机实习的方法实施教学。其中课堂讲授、举例示范安排在密码学基础课程中,上机实习共48学时。上机环节采取示范操作、个别辅导和学生实际操作等方法实施教学,注重课件、视频资料、实物模型、板书和教师讲解的有机结合。
五、考核方式及成绩评定
本课程以实验考核及平时成绩相结合。
平时成绩占50分。包含:出勤、课堂互查等。
实验报告占50分。
六、教材和参考资料
教材:
[1] 密码编码学与网络安全:原理与实践。William Stallings(第五版),王张宜等译,电子工业出版社,2012。
参考资料:
[2]密码学原理与实践, Douglas R. Stinson(第三版),冯登国译,电子工业出版社,2009。
[3]现代密码学理论与实践,毛文波(英),王继林,伍前红译,电子工业出版社, 2004。