密码学教学与创新教育

2022-03-20 09:59:30 | 浏览次数:

zoޛ)j饨ky总结密码学课程特点和多年从事信息安全及密码学课程教学经验的基础上,阐述如何将创新教育融入密码学教学中。

关键词:教学思路;创新教育;密码学;课程特点

21世纪是知识经济时代,“科技进步日新月异,国际竞争日趋激烈,各国之间的竞争,说到底,是人才的竞争,是民族创新能力的竞争”[1]。21世纪也是中华民族伟大复兴的世纪,面对前所未有的机遇与挑战,党的十七大作出了“提高自主创新能力,建设创新型国家……优先发展教育,建设人力资源强国”的战略部署。中国未来发展、中华民族的伟大复兴对提高国民素质和培养创新型人才提出了迫切需求,中共中央国务院颁布的《关于深化教育改革全面推进素质教育的决定》中指出实施素质教育就是以培养学生的创新精神和实践能力为重点。可见,创新是实施素质教育的核心和关键。创新教育是以培养人们创新精神和创新能力为基本价值取向的教育,是知识经济时代的要求。培养创新人才、实施创新教育无疑是高校教师责无旁贷的历史责任,本文结合作者进行密码学教学的实践,对如何进行创新教育提出了一些思路与体会,期望与同行相互探讨。

1密码学课程具有适合创新教育的特点

随着信息技术的发展,信息安全已变得至关重要,信息安全技术已成为信息科学的热点课题。信息安全也成为国家重点发展的新兴交叉学科,国内数十所高校根据国家需求设置了信息安全专业,各高校也纷纷在数学、信息安全、信息与计算科学、计算机和通信等信息类专业开设了密码学课程。密码技术是信息安全技术的核心和关键,相关密码学课程是信息安全专业的重要专业基础课。密码学发展历史悠久,形成了深厚的理论基础与丰富的应用实践[2],既能培养学生的信息安全素养,又能培养学生创新精神,它天然具有一些适合创新教育的特点:

密码学具有宽广深厚的理论基础,涉及丰富的数学知识。密码学发展历史较长,形成的内容与分支较多,涉及数学知识也比较多,包括初等数论、代数、椭圆曲线、组合论、图论、概率论、信息论、数理统计、随机过程、频谱、纠错编码、计算复杂性和数理逻辑等[3]。

密码学由密码编码与密码分析两个分支组成,它们相互对立,又相互促进。

密码学与其他学科联系广泛,这些学科包括:应用数学、通信、计算机应用、信息处理和电子电路技术等,多学科的交叉融合往往是创新的突破点和必由之路。从应用数学的角度看,密码学是数论、抽象代数等理论的一种应用;从通信的角度看,密码学是保密通信和通信网络安全的研究内容;从计算机应用的角度看,密码学是数据安全、计算机安全和网络安全的研究内容;从信息处理的角度看,密码是信息处理的一种形式。密码学的研究内容决定了它的交叉性和广泛性,这使密码学从不同的方面得到研究,从而得以不断发展。各种数学和其他学科研究的新结果会很快地应用于密码学,如基于椭圆曲线的加密和签名方法、量子密码等[4]。

具有较强的先进性,新思想、新技术不断涌现。信息技术发展迅猛,与之相关的信息安全保障技术——密码学理论与技术也是日新月异。

密码学面向实际应用,具有较强的可操作性。密码算法的软件或者硬件实现也是密码学的一个重要研究热点。

2将创新教育融入密码学教学中

利用以上特点,作者在教学中设计和采用了以下策略和思路。

2.1设置密码学课程内容

创新意味着抛弃旧思想旧事物,创立新思想新事物,不迷信书本、权威,但并不反对学习前人经验;相反,任何创新都是在前人成就的基础上进行的。比如,古典密码的两个基本手段是代替和置换,现代密码算法虽然比古典密码复杂得多,大多数好的算法仍然是代替与置换的组合。因此,基本知识的学习是创新的基础。密码学课程教学内容繁多,在教学时要有选择性和针对性,作为信息科学技术学科信息安全专业的一门基础课,课程的目标是:使学生掌握密码学的基本知识与基本理论,掌握常用的密码算法和密码协议的原理与技术,具备解决信息安全中与密码相关的工程实践问题的能力,并为进一步研究密码学奠定基础。基于此目标,课程内容选择最基本与最本质的东西,笔者将其归为密码算法、密码技术、密码学应用和密码协议四个部分。课程主要内容如表1所示。在“密码算法”的介绍中选择经典算法;“密码技术”介绍与密码实际应用相关的一些问题;“密码学应用”介绍应用密码算法解决实际问题的一些典型成功案例;仅有安全的算法是不够的,“密码协议”是基于密码算法解决安全问题的重要技术,表1给出了一些典型和有趣的密码协议实例。

2.2通过恰当实例培养学生的学习兴趣

爱因斯坦说“兴趣是最好的老师”,美国著名心理学家布鲁纳也认为最好的学习动机是学生对所学知识本身的内在兴趣。在密码学教学中,如何调动学生的学习兴趣,就成为要解决的首要问题。然而,由于密码学涉及的数学知识较多,知识跨度广,如果一开始就涉及深奥的数学知识,学生就会产生畏难情绪,失去学习兴趣。

古典密码是密码学的渊源,如凯撒密码、维吉尼亚密码等,这些密码大都比较简单,易于理解,我们可以以此为例解释密码学的一些基本概念:明文、密文、加密、解密、密钥和密码分析。

密码伴随着战争的出现而出现,围绕密码所展开的斗争却远胜于战争本身,它既是人类智力的另类较量,又是数学的神秘之美的比拼[6]。在教学中穿插一些密码背后的精彩故事,也能使同学们在辛苦学习的同时得到放松,并产生兴趣,如转轮加密机恩尼格玛背后的故事、一些著名公司、著名人物所犯的密码使用过程中的教训[7]129。

对复杂的算法,进行形象的教学设计,也是一个有效途径。文献[8]针对流密码算法RC4教学过程中存在难以理解的问题,在分析RC4算法的基础上,提出了一种基于摸球模型的RC4算法教学模型和教学过程。

与实际应用问题结合,更能使同学们产生兴趣,并且印象深刻,如安全电子邮件PGP、加密文件系统EFS的原理介绍与实际操作和使用。

2.3通过密码学的发展历史启发学生的创新意识[5]

密码学的发展历史与有文字记载的历史一样长,回顾密码学的发展历史,可以看到密码编码与密码分析相互对抗从而相互促进的发展过程,密码学的发展历史天然就是一个创新教育的完美实例。发现问题和解决问题是创新的开始,所谓创新,“就是发现了新的需要解决的问题,在广泛研究了现有的理论和方法以后,认为不能解决,或者解决得不够好,于是去研究新的理论和方法”[9]。有人通过研究密码编码隐藏消息的内容,有人通过研究密码分析破译出明文。每次出现新的密码编码方法,就吸引众多的人去研究密码破译的方法,而密码分析方法的每一次进步都会导致密码编码方法的改进,或者出现新的密码编码方法。

任意单表代替密码可以被基于语言统计特性的分析方法所破译,因而出现了多表代替密码。维吉尼亚密码是多表代替密码的典型实例,在重码分析法和重合指数法出现之前,它被安全地使用了二百多年。对称密码算法存在大规模密钥管理、密钥秘密传送的困难,并且无法解决抗否认问题,因此出现了非对称密码算法,其典型算法是RSA,RSA算法的三个发明人因此获得了2002年国际计算机界的最高奖“图灵奖”。非对称密码算法的出现又提出了公钥管理的问题,引发了数字证书和公钥基础设施(PKI)解决方案的出现。为避免PKI带来的证书管理、存储和计算的代价以及撤销的困难,基于身份的密码学(IBC)成为一个新的解决思路与研究热点。1996年,Paul Kocher博士首次提出计时攻击的重要奠基思想,并发表相关研究成果,此后十余年,侧信道攻击及防御对策便成为密码学研究中的一个重要分支[10]。新的密码分析方法的出现,对密码编码提出了挑战;新的密码编码方法,又吸引大家去研究更强大的密码分析方法,密码编码与密码分析天然就是一对问题。教师在教学中侧重算法的基本思想,让学生从中体会如何去发现研究问题,并用新思想去解决问题。

2.4采用启发式教学方法

良好的教学方法是提高学生创新意识和培养学生创新能力的有效手段。密码学课程教学内容多,教师最常用的方式就是灌输式的传统讲授方式,传统的教学方法侧重于知识的传授,学生只知道死记硬背,不能在已有的基础上推陈出新。二十世纪60年代,著名教育家叶圣陶先生提出了“凡为教,目的在达到不需要教”的著名论点。我国古代伟大的哲学家和思想家老子说“授人以鱼,不如授之以渔,授人以鱼只救一时之急,授人以渔则可解一生之需。”在本课程的教学中,采用了提问、比较和讨论的启发式教学方式,使学生在思考中学习,在学习中主动思考。

如1883年Kerchoff第一次明确提出了密码编码的原则:加密算法应建立在变换规则的公开不影响明文和密钥的安全的基础上。在教学中,不仅仅是简单地给出这一结论,而是向大家提出问题,为什么基于密钥的算法比受限制的算法更安全和实用,并引导大家进行讨论,从而对这一原则有了深刻的领悟和理解[7]16。如可以引导大家进行讨论:对称分组密码加密时要求对明文进行分组,大多数信息不能被完整地分成几组(如最后一部分不够一组),对此可以采用填充的方式来解决,如果是分组长度整数倍的报文是否需要进行填充呢?为什么任何密钥都有一定的生存周期,也就是授权使用该密钥的周期?

2.5采用由浅入深循序渐进的多层次教学模式

根据密码学面向应用,新思想新技术不断涌现的特点,对每一个知识点设计了“基本概念和基本原理→基本算法→算法实现→相关应用案例→前沿研究课题”的多层次教学模式和教学理念,使同学们在掌握基础的同时,开拓思维,远瞻未来发展。

如对于数字签名,从与手写签名的比较中,引出数字签名的功能与特性,再给出数字签名的定义和设计要求,然后给出若干数字签名方案(如RSA签名方案、数字签名标准DSS),最后再引入不可否认签名、一次性数字签名、群签名方案、盲签名和聚合签名方案等热点前沿课题。

2.6基于密码学多学科综合的特点引导大家主动思考

密码学具有面向应用、与实际联系密切的特点,很多创新成果都是多学科交叉融合的结果,结合不同的应用学科,引导同学深入思考,是实现创新的可行途径。笔者结合数据库安全,引导学生对以下问题进行思考:

对于密文数据库,对某些字段进行统计、平均、求和等数学运算时,必须先对这些字段进行解密运算,然后对明文进行数学运算,之后再加密,这样增大了时空开销。在实际应用中,对于某些重要或敏感数据,满足用户的操作需求,但又不让用户了解其中信息。

如何解决上述问题,削减加、解密所需要的时空开销,提高数据库的运行效率,采用秘密同态技术是一个有效方法[7]306-307。

由于密码学涵盖的知识广泛,在适当的时候,让同学们就感兴趣的相关问题撰写课程论文,可以帮助他们更好地理解课程内容,开拓学习思路,锻炼文献阅读能力,引导大家主动获取知识的热情。

3结语

信息保密的需求由来已久,互联网时代信息安全的重要性日益凸显,密码技术是信息安全的核心技术,信息技术人才掌握必要的密码学知识也成为一种基本要求。为迎接知识经济的挑战,适应全面建设小康社会,建设创新型国家的需要,高等教育的创新教育也是国家和时代的要求。在信息技术类学科设置密码学相关课程,不仅可以提高学生的信息安全素养,通过将创新教育融入密码学教学中,也有助于培养学生的创新意识和创新能力。

参考文献:

[1] 江泽民. 江泽民文选(第三卷)[M]. 北京:人民出版社,2006:499-503.

[2] 冯登国,等. 信息安全中的数学方法与技术[M]. 北京:清华大学出版社,2009:1.

[3] 孙菁,傅德胜.“密码学”课程教学方法的探索与实践[J]. 计算机教育,2006(9):28-30.

[4] 李梦东.“密码学”课程设置与教学方法探究[J]. 计算机教育,2007(9):61-66.

[5] 李东,苏小红. 将创新教育融入到“计算机组成技术”教学之中[J]. 计算机教育,2007(2):38-40.

[6] 西蒙•辛格. 密码故事[M]. 朱小蓬,林金钟,译. 海口:海南出版社,2001:1.

[7] 王昭,袁春. 信息安全原理与应用[M]. 北京:电子工业出版社,2010.

[8] 王昭. 流密码算法RC4的教学设计[J]. 信息安全与技术,2011(11):80-83.

[9] 郑莉. 基础课与创新能力[J]. 计算机教育,2007(5):66-68.

[10] Stefan Mangard,Elisabeth Oswald,Thomas Popp. 能量分析攻击[M]. 冯登国,等译. 北京:科学出版社,2010:1.

Cryptography Teaching and Innovation Education

WANG Zhao1,2

(1. Institute of Software, School of Electronics Engineering and Computer Science, Peking University, Beijing 100871, China; 2. Key Laboratory of High Confidence Software Technologies (Peking University),Ministry of Education, Beijing 100871, China)

Abstract: For the requirements of training students’ innovative awareness and innovation capability in era of the knowledge economy, the characteristics of cryptography course are analyzed and summarized, and at the basis of the analysis and summary of many years teaching experience in the courses of information security and cryptography, some teaching ideas of how to integrate innovative education into cryptography teaching are given.

Key words: teaching ideas; innovation education; cryptography; course characteristics

(编辑:彭远红)

推荐访问: 密码学 创新 教学 教育