《密码学》课程教学方法和设计的探索论文

时间:2021-09-08 19:08:56 论文范文 我要投稿

《密码学》课程教学方法和设计的探索论文

  论文关键词:密码学 教学设计 信息安全

《密码学》课程教学方法和设计的探索论文

  论文摘要:密码技术作为信息安全的核心技术之一,能有效保障信息的私密性、认证性、完备性和不可否认性。针对本科密码学课程的特点,结合南京工业大学信息与计算科学专业教学的实际,讨论课程的教学方法问题:首先分析了密码学课程的内容和特点;其次从知识体系、实践环节、考核方式等几个方面对教学方法和课时安排进行了探讨和设计,并将其应用到密码学课程的实际教学中,取得了较好的教学效果,为同行提供了一定的参考价值。

  近年来,随着信息安全技术的逐步深入人们的日常生活,对信息安全的理论和应用研究逐渐升温。密码技术作为信息安全的理论核心,也为越来越多的人所认可,因此近年来《密码学》成为各类高等院校本科生信息类相关专业相继开设的课程。我校也在2004年面向信息与计算科学专业2001级及其以后年级学生开设了《密码学》的选修课程。本文通过总结作者近6年来在《密码学》课程的教学经验,从知识体系、实践环节、考核方式等几个方面对教学方法和课时安排进行了探讨和设计,给出了教学总结和建议。

  1密码学课程的内容和特点

  1.1密码学课程的特点

  密码学作为一门比较新兴的课程,是集数学、计算机科学以及通信与信息系统等多学科一体的交叉学科,涉及到的内容非常广泛。从内容的联系上讲,密码学可以说是多个学科的一个交汇点,这些学科包括:应用数学、通信、计算机应用、信息处理和电子电路技术等。从应用数学的角度看,密码学是数论、抽象代数、计算复杂度等理论的一种应用;从通信的角度看,密码学是保密通信和通信网络安全的研究内容;从计算机应用的角度看,密码学是数据安全、计算机安全和网络安全的研究内容;从信息处理的角度看,密码是信息处理的一种形式。密码学的研究内容决定了它的交叉性和广泛性,这使密码学从不同的'方面得到研究,从而得以不断发展。

  1.2密码学课程的内容

  就密码学内容而言,密码学主要由密码编码学和密码分析学两部分组成。考虑到本科生的实际情况,我们选择了相对偏重密码编码学的教材。我校采用的是由武汉大学出版社出版,张福泰教授主编的《密码学教程》一书,该书是信息安全系列教材中的一个部分。

  密码学教材不论是外文版还是中文版在内容设置上主要包含两大模块:加密、认证J。加密部分主要分为古典密码、私钥密码体制和公钥密码体制;认证部分主要包括数字签名和杂凑函数、密码协议等。各部分体系除了介绍相关的数学知识之外,主要介绍各种典型的密码算法,比如:私钥密码体制主要以数据加密标准(DES)和高级加密标准(AES)为主;而公钥密码体制中,主要以基于大数分解困难问题的RSA算法、基于离散对数困难问题的E1Gamal算法和基于椭圆曲线(ECC)的密码体制;在数字签名方面,主要以RSA数字签名、El—Gamal数字签名和数字签名标准(DSS)为主;密码协议主要以密钥管理协议、密秘分享协议和认证协议为主。这些内容涉及的知识背景和应用背景多,覆盖面广,实践性强,如何合理处理好这些知识点,既要注意点到面,又要重点突出、深入浅出,这就为我们的教学提出了要求。

  2教学实践

  目前的密码学体系主要是建立在代数学知识基础之上的,考虑到我校信息与计算科学专业的已经学过高等代数和离散数学,对群、环、域的知识已经比较熟悉,所以在密码学课程的数学基础介绍部分就会省下不少的课时。正是因为如此,我们的理论教学就更关注于如何让学生建立密码学的基本概念、基本模型以及基本理论,并最终达到信息安全的立体体系的建立。

  我校信息与计算科学专业深知密码学对信息学科的重要性,安排了48学时的教学,其中理论教学32学时,上机实验12学时。下面就是我校《密码学》课程教学内容和课时分配的安排方案。

  2.1理论教学

  大致教学内容可以分为以下部分:

  (1)密码学概述(2学时)。这部分的主要内容包括:密码学的基本概念、密码学的体系结构、发展简史和密码学的应用等等。本部分目的是形成对密码学整体框架的初步印象,为今后的学习打下基础。在这一环节笔者认为让学生对密码学要产生兴趣非常重要,所以对与密码学的应用部分笔者采用了播放纪录片“密码在二战中的重要作用”。事实证明,效果非常好。

  (2)古典密码体制(2学时)。这一章节的学习通过让学生描述如果你古代的一个密码学家,对于秘密信息的隐藏你会如果去做展开。从而引出代换密码和置换密码这两大主线。实践表明,这种让学生自主创新的教学方法引起了学生特别大的学习兴趣。

  (3)现代分组密码(10学时)。主要内容包括分组密码的设计方法;DES、AES和IDEA加密算法。本部分首先在介绍完本章所需数学知识(有限域上的求模逆运算)的基础上,笔者对与DES算法的学习采用了将学生4人一组的方式,并且选出小组负责人。让他们先自习,如有疑问先小组内部讨论,要求画出DES算法的数据结构图。小组内部解决不了的,再拿出来大家一起讨论。这种学习方式有效的提高了学生的积极性,同时更培养和提高了他们的自学能力。

  (4)流密码(4学时)。主要内容包括流密码的原理、有限状态自动机、线性反馈移位寄存器、RC4和流密码算法SNOW2.0。本部分目的是介绍流密码的基本思想和方法。可事先准备好相关代码材料,课堂演示线性和非线性反馈移位寄存器等的实现,效果很好。

  (5)公钥密码体制(6学时)。主要内容包括公钥密码的原理;数学基础知识;RSA公钥密码体制;E1Gamal公钥密码体制;D.H密钥协商方案和椭圆曲线密码体制。本部分主要介绍公钥密码的基本思想——单向函数的概念和应用和几个加密算法。由于涉及数论中离散对数、大数分解、平方剩余概念的初步知识,而且相关的数学理论公式繁多,理解起来有一定难度。但这些数学理论应用到加密算法后,都有相应的快速算法,如RSA加密算法中有模密快速算法、大数分解算法,E1Gamal有简单的离散对数算法,并且这些快速算法的程序代码都已经很成熟,仍采用“结合代码讲解算法”的方法,从而利于学生的理解和接受。 (5)密钥管理和Hash函数(4学时)。主要内容包括密钥分配的模式;密钥传送;密钥协商;密钥托管;秘密共享以及Hash函数。这部分的重点是(t,n)门限秘密分享方案。需要讲清楚多项式插值公式。

  (6)数字签名和杂凑函数(4学时)。内容包括:数字签名的基本概念;RSA数字签名方案;E1一Gamal数字签名;Schnorr数字签名;数字签名标准(DSS)和椭圆曲线上的数字签名方案。本部分目的是介绍数字签名的原理和各种常见的基本算法。涉及的数学基础与公钥密码相同。课堂实例教学过程中进行现场演示数字签名的使用。另外,可以结合不同的应用环境,给学生多介绍不同的数字签名,如代理签名、盲签名、群签名等等,以更好地理解签名的认证作用,同时也可以让学生了解该研究方向的前沿知识。

  (7)身份识别(2学时)。身份识别的概念;强调身份识别;身份识别协议;本部分目的是介绍身份识别的基本思想和常见协议。具体实验是:验证码的使用,使学生感受到密码学的思想其实就一直在我们身边。

  (8)认证理论与技术(2学时)。认证模型;认证常见的攻击和对策;认证协议;Kerberos系统。本部分目的:介绍常见的认证攻击、对策和具体实例。要求学生比较各种协议的优缺点。

  2.2实践教学与毕业设计

  密码学是信息安全的基础理论课程,同时又是一门实践性很强的学科。在实践教学方面,主要是以实验和课程设计为主,其目的是让学生了解各种密码算法的设计和实现,通过编程实现相应的密码算法,深入理解密码算法的步骤、设计思想,以及每一步对效率的影响。这其中尤其要求学生注意实际实现算法和理论算法之间的差距所在,以及在编程实现中应该注意的问题。

  我校的实践教学分为以下四个实验环节:

  实验一:Euclid算法实验(2学时);

  实验二:DES算法实验(4学时);

  实验三:RSA算法实验(3学时);

  实验四:Difie—Hellman密钥交换算法实验(3学时)。

  这些基础实验环节的实现过程,主要采用的是“一题一验收”的方法。对于每个题目而言,学生在进行实验之前都必须提前交好预习报告;在实验完成之后,统一检查,并形成验证结果报告。对于工作量相对较多的实验(二),笔者将学生分成4人一小组(和教学环节的小组是同一组),自由分工合作完成同一个实验。这样既提高了学生密码学的知识热情,也培养了学生的团体协作精神以及掌握软件开发知识的兴趣。在验收实验结果时,要求每组选出一个主答辩人进行答辩,而且还抽查小组其他成员在设计中的具体分工。最后根据理论课表现和实验设计成绩综合评定学生成绩。这种方法模拟了今后学生毕业后工作的模式,让学生提前充分体验,以做好应对以后工作的挑战。

  3课程考核

  既然密码学是一门专业选修课,这样就有利于我们能够采用灵活多样的考核方式来对学生进行考核。我校这门课程的考核体系大体可分为这样几个部分:实践环节(30%),科研能力(撰写论文或报告情况)(20%),平时作业(10%),期末考试(40%)。我们通过这种方法全方位考察学生学习的综合水平,从而带动了学生整体素质的进一步提高。

  4小结

  本文针对本科现代密码学课程的特点,结合我校信息与计算科学专业教学的实际,讨论了本课程的教学方法问题:首先分析了密码学课程的内容和特点;其次从知识体系、实践环节、考核方式等几个方面对教学方法和课时安排进行了探讨和设计,并将其应用到我校密码学课程的实际教学中,取得了较好的教学效果,为同行提供了一定的可参考价值。

【《密码学》课程教学方法和设计的探索论文】相关文章:

《程序设计课程》教学方法的探索与实践07-12

《环境保护》课程教学方法的实践与探索论文12-02

钢结构网络课程的设计和探索09-03

园林测量课程教学方法探索10-10

新课程理念下初中化学教学方法探索论文12-17

浅谈电工基础课程的教学方法探索与研究教育论文09-22

数控编程课程项目教学方法的探索10-04

航道整治课程教学方法探索与实践10-07

高职《C语言程序设计》课程教学方法的实践与探索07-12