摘要:密码学是信息安全专业的专业基础课。信息安全的主要任务是研究计算机系统和通信网络中信息的保护方法,其中密码学正是实现这些功能的核心技术。本文就结合密码学研究内容的特点以及课程特新的基础上,就如何加强应用密码学教学的效果提出论述。
关键词:密码学;实验;理论
引言
随着计算机网络的广泛应用和深入发展,信息安全越来越受到社会各界的高度重视,已成为影响国家安全、经济发展、社会稳定的重要因素。由于信息安全技术的核心源于密码学,使得密码学成为信息科学技术领域的研究热点[3]。我校在众多独立院校中脱颖而出创办了信息安全专业,并引进了吉大中软的网络信息安全教学实验系统,其中就包含有密码学及应用这一部分。但由于该课程本身是一门交叉学科,涉及的领域广,包含的内容多等特点再加上其在整个专业的奠基型作用导致学生学习的困难性及教学效果不理想。本文就集中在理论教学和实验教学这两个核心环节来对如何加强教学效果进行研究。
1 理论教学
1.1 加大学习热情
许多年来,密码学是军队独家专有的领域。各国的安全机构早已将大量的人力物力财力投入到加密自己的通信,同时又千方百计地去破译别人的通信的残酷游戏中,如斯诺登事件中透露出的美国连续几年都在攻击其他国家的网络。兴趣是最好的老师,是一种甜蜜的勾引。在第一堂课密码学概论部分对课程性质做足够的阐述并充分利用课程的神秘性加大学生学习的积极性,为后续阶段理论知识的学习打下良好的基础。
1.2 调整内容顺序
密码学理论教学的难点和重点在于学生建立起良好的立体体系,这其中就包括基本模型、基本理论。在实际教学中,一般的教程紧跟密码学概论基础之后的通常是传统密码体制,而在传统密码体制当中涉及到了密码学基础部分,如仿射密码当中涉及到数论当中的同余理论。如果在这个部分当中的数论概念模糊不清的情况下,基本上不能理解者算法的精髓。基于这个问题可以适当调整内容的顺序,先完成密码学基础的教学,从素数理论开始,其后包括模运算、同余式、欧几里得算法、同余方程做一个系统的教授,改变固有的数学当中等号思想形成密码学中同余的思想,从而不会有讲传统密码体制中学生云里雾里的情况发生。
1.3 增加实例讲解
密码学是解决信息安全的核心技术具有很强的实践性,如文件安全传输、PGP应用、PKI技术等。枯燥的理论知识容易降低学生学习的积极性,解决这一问题的良药是适当穿插实例的讲解。因为抽象的内容不好理解的时候,适当讲解实例是很好的经验。如在密码学基础部分讲解韩信点兵[1]的例子,对“韩信点兵,多多益善”的典故做适当铺垫,然后用中国剩余定理予以讲解,提高理论部分的实用性,增加学生兴趣。又如在讲解Hash函数和消息认证内容初始讲解王小云教授2004、2005年先后破解了MD4和SHA1算法的事迹,为学生学习提供正能量。但是同时考虑到密码学是一门结构紧凑的课程,过度的实例降级容易导致教学进度滞后,所以在选取实例的时候务必做到典型合理。
1.4加强课后答疑
开展课后答疑是实现理论教学的重要手段和措施,在每一章学习内容完成以后,都应留下难易适中具有代表性的课后习题,学生利用课余时间互相讨论,查资料,把疑问总结归纳出来,定期做一个课后答疑,教师给予及时的帮助,以免发生积重难返的后果。这样既反映了理论教学当中问题的普遍性,为今后的教学提供宝贵的经验。同时增加了学生的知识量,开拓专业知识视野,提高了学生的分析问题处理问题的能力。
1.5强调教与学互动
要达到理想的教学成果,和教师本身的自我修养是有极大的关联大的,所以要求充分发挥教师的指导作用,在理论课堂上注意察言观色,注意学生的眼神和表情,从中观察出学生的理解情况。课堂提问是一较直观的方法之一,通过课堂提问,检验课堂中重难点知识的掌握,每堂课前,检验上堂课的内容掌握情况。并可以采取奖励机制,增加学生学习的热情。
2实验教学
2.1增加实验学时
作为一门实用性很强的课程,实验课程是学好这门课程不可或缺的部分,实验课程起到举足轻重的作用[4]。为了完善实验内容,解决内容相对简单学生理解不透彻这一问题,并较好的锻炼学生思考能力,养成良好的变成习惯,我校特意引进了吉大中软的网络信息安全教学实验系统,并将实验学时提升至36学时,增加大量实验内同,如下表1-1所示。
2.2降低实验难度[2]
就近些年反馈来看,教学的不足当中就包含了算法编程难度大这一问题。在密码学中,算法是最主要的内容,如 DES,AES,RC4,MD5 等,普遍存在基本结构复杂,流程冗长等特点,对于才处于信息安全本科专业低年级的学生,遇到这样复杂的算法,通常都无从下手;即便存在编程能力较强的学生,也会因为工作量巨大,缺乏编程经验导致失败。因此,如何降低算法编程难度,提高学生完成编程的能力是密码学实验首先要解决的问题。安全教学实验系统中的算法很好的涵盖了该课程的实验内容,每个算法前半部分是算法演示机验证部分,后半部分是源码应用部分。这种方式特别适合教学模式,其前半部分对理论部分做了很好的复习及归纳,便于理论知识的理解和巩固。后半部分源码设计部分解决了这一问题,该系统的源码应用部分包含了主要功能模块的详细完整的代码,并有详细注释,例如AES算法当中的主要模块包含有轮密钥加、字节代换、行移位、列混合、轮密钥加等,在源码应用中都包含有。
2.3任务式教学
让学生时刻保持一种带着任务去学习态度,从而保证教学效果。将实验内容设计成多个具体的任务,让学生各个击破。在实验的过程当中,教师首先自己演示操作过程,使得学生对实验流程有一个清晰的理解。在实验过程当中,针对学生掌握情况的不同给予适当的实验指导,培养出一批突出学生参与到教与学的互动当中。在实验完成后统一检查,并形成验证结果报告。
2.4新增课题类实验
针对理论及实验课程结束之后的课程应用上,我校专门开设了为期两周的密码应用及综合实验这一课题类实验。这一课题类实验从锻炼学生运用所学知识与技能去分析和解决相关的实际问题的能力出发,培养学生使其具有较高的综合业务素质、较强的创新与实践能力,能够满足计算机安全系统的设计、开发、研究、教学等工作对高级工程技术人才的需求。这一课题叫做安全的信息传输工具,这一课题实验中要求设计与实现一款局域网中点到点的信息传输工具,采用对称与非对称混合加密方法,每进行一次通信,更改一次会话密钥。这一课题实验不但能巩固密码学课程当中所学的所有算法而且综合了网络编程当中文件网络传输分析里的内容,培养了学生综合能力。
3 课程考核标准
作为一门专业基础课,课程的考核标准由四部分组成,期末考试占总成绩的百分之七十,剩余部分占百分之三十。这其中包括:第一,学生在平时理论及实验当中的出勤及回答问题成绩,占的比例是百分之十.第二,学生提交的每次课后预留的作业及随堂测试情况成绩的占的比例是百分之十。最后剩的百分之十是综合学生在整个实验过程当中的实验效果及最后提交的实验报告完成情况。由这四部分构成学生最终的综合成绩,使学生不再拘泥于学习书本知识,更加注重动手实验能力,将课本所学应用到实际系统工程中去。同时每次实验基本都是以两到三人为小组单位,提高团队精神,更能在实验过程当中相互督促相互切磋从而提高整体素质。
4结语
密码学课程作为信息安全专业的一门技术基础课程,本文浅谈了如何在在信息安全这一大背景下进行密码学课程的教学。本文给出了我校密码学课程课堂教学、实验教学以及课程考核评价结果这三个核心环节的课程内容实施情况。我校自2009 级开设密码学课程开至今,总结了在教学中容易出现学生兴趣不高、知识掌握不扎实、实验效率低下的根本原因,提出的加大学习热情、调整内容顺序、增加实例讲解、加强课后答疑、强调教与学互动、增加实验学时、降低实验难度、任务式教学、新增课题类实验等方面改进已经卓见成效,在以后的工作当中将会作更深入更进一步的探究。
参考文献:
[1] 谷利泽,郑世慧等 . 现代密码学教程[M].第1版 . 北京 : 邮电大学出版社 ,2011.
[2] 吕秋云,赵泽茂等. 信息安全本科专业密码学实验课程的教学研究,教学研究[J],2009
[3] 单来祥,信息安全专业学生应具备哪些知识和能力,计算机教育[J], 2005
[4] 李梦东.《 密码学》课程设置与教学方法探究[J],北京电子科技学院学报,2007