欢迎来到学术参考网
当前位置:教育论文>文教资料

密码学实验教学改革应用实践

发布时间:2023-12-07 17:42

  摘要:以密码学实验教学为研究对象提出紧密衔接理论,以学生为主体,以开源软件为辅助,利用面向应用的密码学实验教学新思路进行多层次和多方位的实验教学改革。综合运用flash、手机游戏和自学网站等多种技术手段,将理论性、实践性与娱乐性有机结合并应用于密码学实验教学中。


  关键词:密码学;实验教学;教学模式


  0.引言


  实践教学是高等学校教学工作的重要组成部分,是培养应用型人才的基本环节,在学生能力培养和综合素质提高方面发挥着独特的作用。密码学作为是信息安全专业的专业技术基础课,具有很强的理论性和实践性。该课程理论知识丰富,学生不仅要研究密码学中的各种抽象算法,而且要注重密码学在实际中的应用,为今后学习专业课程打下坚实基础。密码学实验教学过程往往侧重学生对算法的理解,以验证性实验为主,因此实验课程无法激发学生的学习积极性和主动性,结果是学生不能融会贯通所学的知识并将其应用于信息安全实践。


  1.相关改革和问题


  近年来,有些学校已经进行了一些有益的探索和尝试,但同时也存在一些问题。文献[1]重点论述密码学实验的改革,包括各个层次的实验内容,但是实验内容的设置并没有考虑学生自身的能力和兴趣;文献[2]针对教学内容规划和优化进行探索;文献[3]从教材的选择、教学内容、实践环节和扩展环节进行概述;文献[4]重点讨论在理论和实践相结合、教学和科研相结合的基础上提高学生实践能力,紧跟时代发展,但是并没有给出相互结合的具体方案。文献[5]侧重以专业为导向和面向应用的密码学改革,但是没有提出具体可行的实际方案。文献[6]提出教师应该认识到创新实践环节不应只局限于实验课,而应贯穿整个教学过程如理论课堂教学、项目开发、实践拓展等环节,探索适合该课程实践教学的新模式,只有这样才能切实提高实验教学效果。


  文献[7]-[12]是教学实践改革提供给学生的参考网站和参考书籍。教师可以通过理论课堂、实验过程以及拓展环节等对学生进行指导。改革的核心在于不但培养学生具备扎实的基本功,而且能够最大程度地发挥实践教学在学生创新思维和创造能力培养中的作用,充分挖掘学生的潜能,培养学生自主学习和创新思维能力等综合素质,这些正是学生今后就业和迈入社会应具备的能力。


  2.实验教学改革探索


  2.1从兴趣入手——兴趣是最好的老师


  教师可以利用Flash、手机游戏等将学生身边的密码学问题展示出来,如大部分学生有网络购物的消费习惯,在消费时会涉及安全问题,需要安全服务,这样就可以很自然地引入密码学要研究的问题,包括保密性、完整性、可用性、真实性和不可否认性等5大服务类型。抽象的专业词汇形象化为具体场景,易于被学生理解和接受。再比如铁路系统的购票网,需要下载并安装证书,那么证书如何证明网络中每个人的身份呢?带着这些问题,教师就可以一步步引入密码学的数字证书和PKI技术。


  2.2设计实验项目内容


  传统陈旧的实验题目如果不及时更新,那么就不能调动学生的积极性;另外,学生能够从各种渠道找到成熟的方案,这样留给学生自主设计开发的空间太少,不能达到综合实验的要求。因此,我们积极紧跟时代发展,不断更新实验内容并设计了以下4种实验。


  1)演示实验。


  演示实验包括Flash演示和动态演示。教师可以利用Flash将抽象的密码算法形象化,使学生对算法有直观的认识。密码算法包括对称密码算法DES、AES,非对称密码算法RSA、椭圆曲线,流密码RC4,消息摘要算法MD5、SHA,数字签名算法DSA,还特别包括对称密码算法的使用模式ECB、CBC、CFB、OFB。教师应紧跟时代发展,把最新的技术如对称加密模式XTS-AES模式、安全散列函数SHA-3等引入教学。动态演示是为了使学生进一步理解算法细节,如AES算法过程每一轮的执行情况以及密钥是如何扩展的;同时动态算法演示具有交互性,便于学生接受,如学生在分析AES密钥扩展的时候,可以将初始密钥设置成他们自己的名字或喜欢的字词等。


  学生只有把算法理解到这种程度之后才能编程实现,这时教师结合代码实验部分布置给学生类似的算法演示,让学生利用课余时间完成,锻炼学生的编程能力,同时充分发挥教师的指导作用。这些算法演示既来自学生又服务于学生,同时更好地为教师教学服务。面向应用的双赢模式在2008级、2009级和2010级信息安全专业试行后,受到学生的欢迎。教师在课堂上演示算法的时候,可以指明这些是高年级学生的作品,这种示范作用能够对学生产生极大的鼓舞作用,坚定学生的信心。结合代码实验和自主实验,我们继续在2011级信息安全专业开展此种模式教学。


  演示实验这部分内容较多,如果都放在实验课堂上显然是不合适的。我们采取的方法是让学生结合理论课堂所学知识并在课下利用网站进行自主学习,以达到最佳教学效果。针对某些算法,如对称密码算法,理论课堂、实验课堂和自主学习这三者之间既要互补,又要交叉。


  2)操作实验。


  操作实验侧重师生之间以及学生之间的互动性。例如,gpg4win软件可以帮助师生之间进行秘密通信,既包含证书公钥的概念,又包含对称算法和散列算法的内容。教师通过软件生成自己的证书并存放在公开目录中,让学生在公开目录中找到教师证书,利用证书中的公钥向教师发送加密的信息,教师再用自己的私钥解开密文。在这个过程中,教师的参与大大提高了学生的积极性。再比如,学生利用GunPG安全通信实现互动,在趣味性操作的同时理解了密码学的概念。


  3)代码实验。


  代码实验包括两个层次的实验,一是学生用已有算法实现的接口来编程实现某种安全服务,如利用Java的加密包BouncyCastle、C语言版开源的OpenSSL接口、微软.NET程序的加密与解密等;二是学生自己动手实现算法过程。这两者的侧重点是不同的,前者考查学生对API的掌握和使用情况,后者考查学生对算法本身的理解以及实现。这个实验过程不限制学生使用的语言和环境,给予学生很大的灵活性。成功的实验结果可以增强学生的自信心,从而培养学生扎实的编程能力。


  4)自主实验。


  “融会贯通、学以致用、探索创新”是密码学实验教学的培养目标,通过开设自主性实验能够培养学生独立思考的能力和勇于开拓的创新意识。


  自主实验采用开放式教学模式,由教师设置实验选题范围,也可以由学生根据兴趣自主选题。教师设置的实验选题范围要具有新颖性和时代性。我们指导的学生曾获得过国家级创新项目1项、广西区级创新项目3项。我们以创新项目为契机,引导基础扎实的学生进行创新开发。比如,我们针对当前Android智能手机在大学生群体中比较流行的现状,依托2010级大学生的国家级创新项目,设置利用密码学的手机安全防护开发;开展针对当前网络版权保护的数字水印研究;在PKI理解的基础上利用开源OpenSSL实现证书认证机构CA项目;进行Java密码算法与C/C++语言密码算法性能对比;以项目驱动的实验进行改革探索。


  自主实验可以3-5名学生组成一个实验小组,若有能力比较强的学生,也可不必拘泥于小组形式,而让学生单独完成。学生通过文献查阅、方案设计、材料准备、实验操作、课堂展示等一系列环节完成实验。在这里,教师要注意给学生提供一些参考,如国际会议、专业期刊、硕士及博士论文、专业网站等,以便学生通过这些途径了解最新的密码学发展动向,进行热点的追踪,发现研究问题的兴趣点。教师要及时了解学生的选题情况,要因人而异,帮助他们选择合适的题目并积极组织优秀学生参加一些学科竞赛。


  教师在加强学生能力培养的同时,也需不断提高自身的业务水平,不仅要熟悉专业知识,还要不断学习,及时跟踪信息安全发展的新趋势,充分发挥引导者的作用,总结教学成果,提高教学质量,使课程建设良性发展。


  实验项目内容设计如表1所示。


  2.3融入开源软件辅助教学


  理解密码学的基本概念、算法和原理不是最终目的,对于普通院校的应用型本科来说,培养学生动手实践能力是教学过程中一个非常重要的方面。教师可以充分利用已有的开源软件辅助密码算法教学,根据实验内容提供不同的辅助参考资料,将开源的应用设置在不同层次的实验中。比如,在演示实验中,演示算法的实现可以参考开源软件的思想;在操作性实验中,利用GunPG和OpenSSL实现安全通信和CA操作;将OpenSSL和密码算法库Libtomcrypt、大数库MIRACL、CryptoApp库用在代码实验和自主实验中,代码实验侧重用API实现基本的安全服务,自主实验侧重综合应用,考查学生的创新能力。


  2.4开放自主学习网站


  密码学教学网站包括理论知识点和动手实验环节等7个模块,分别是课程导学、课程资源、作品展示、交流讨论、资料下载、词汇查询和文件调查。该网站为学生构建了完整的学习资源,既有助于学生在课下进行自主性和探索性学习,又可以辅助教师进行课堂教学。特别是该网站为学生提供PKI在线实验模块,这个实验模拟了CA,学生可以在线申请下载证书,利用证书实现安全通信。比如,一些软件的下载提供SHAl和数字签名,学生下载后可以验证软件是否被篡改过。另外,网站还提供Https的安全访问,学生可以通过抓包软件Wireshark等学习SSL协议。


  网站中优秀作品展示模块,能够更好地培养学生创新实践能力。密码学教学网站在实现过程中吸纳了一批实践能力较强的同学参与完成,并且包含大量的学生优秀实验作业、课程设计和创新项目。密码学教学网站获得了2011年全国多媒体课件大赛理科组二等奖。


  2.5改革实验考核方式


  实验考核方式强调实践的重要性,考虑到学生考试的压力,因此侧重平时每个实验过程的重要性,将考核贯穿于平时的实验中,包括考查实验前的准备工作是否充分和实验结果是否理想等。实验考核的另外一个重要考核指标是自主实验设计方案、实现效果以及答辩的优劣等。


  3.结语


  通过在2008级、2009级和2010级信息安全专业学生中进行密码学实验教学改革应用实践,我们取得良好的教学效果,使得师生共赢。同时,我们还将改革推广到该专业的基础课程数据结构中,也获得不错的教学效果,但同时发现一些问题,如自主实验深度不够及研究效果不够理想,今后将在此方面进行新的探索。


  作者:张瑞霞等

上一篇:基于现代密码学的加密算法验证系统的设计与实现

下一篇:在古典密码学范畴下对ADFGX加密法的改进