应用密码学课程教学大纲
- 格式:doc
- 大小:1.04 MB
- 文档页数:12
应用密码学第二版课程设计1. 课程概述本课程是应用密码学第二版的课程设计部分,旨在加深学生对密码学知识的理解,并通过实践应用巩固所学知识。
本课程的主要目标是让学生掌握常用密码算法的原理,掌握密码学应用的设计方法,通过实际应用加深对密码学理论的理解,并提高密码学应用设计的能力。
2. 课程内容2.1 密码算法实现•子密钥的生成•DES算法的加密和解密•AES算法的加密和解密•公钥密码学算法本部分主要讲解密码算法的原理和实现方法,通过详细讲解各算法的过程,让学生对密码学算法有更深入的理解。
同时,让学生能够自己实现这些算法。
2.2 密码协议的设计•密码协议的安全性评估•SSL/TLS协议的分析和实现•SSH协议的分析和实现本部分主要涉及密码协议的设计和分析。
让学生在实践中掌握密码协议的设计和分析方法,同时学习目前广泛应用的SSL/TLS协议与SSH协议的安全性分析和实现。
2.3 密码学应用开发•随机数生成器的实现•数据签名和验证•数字证书的实现•密码学应用程序的设计和实现本部分主要讲解密码学应用的开发方法,让学生能够运用所学密码学知识,自己实现一些密码学应用,如随机数生成器、数据签名、数字证书和密码学应用程序等。
学生将通过实操,掌握密码学应用的开发技巧和方法。
3. 实践环节本课程的实践环节与课堂教学密切相关。
实验任务需要在教学过程中完成。
实验任务包括密码算法的实现、密码协议的分析和实现、密码学应用开发等,要求学生亲手完成实验,并根据实验结果撰写实验报告。
4. 课程考核学生的成绩由学期末考核成绩和实验成绩两部分组成,其中学期末考核成绩占总成绩的60%以上。
实验成绩占总成绩的40%左右,做到实验任务完成及时,报告撰写规范。
具体考核方式和标准由任课老师根据教学情况确定。
5. 总结本课程旨在让学生从理论到实践,全面掌握密码学的知识体系,提高密码学应用设计的能力。
通过课程学习和实践,能够提高学生的密码学理论思维和实践意识,为未来从事密码学研究或应用开发等工作奠定坚实的基础。
《密码学》教学大纲课程编码:110895课程名称:密码学学时/学分:54/3先修课程:《概率论》、《抽象代数》适用专业:信息与计算科学开课教研室:信息与计算科学教研室一、课程性质与任务1.课程性质:本课程是信息与计算科学专业的任意选修课。
2.课程任务:通过本课程的学习使学生了解密码学的一些基本概念,理解和掌握古典密码体制,分组密码体制、分钥密码体制、流密码、数字签名、密码协议的基本概念、基本理论、以及基本运算,领会密码体制设计与分析的基本思想与方法,理解密码产品的基本工作原理,以及培养学生在实践中解决问题的能力。
二、课程教学基本要求通过本课程学习,让学生掌握密码学的基础理论中的基本概念、原理、方法的含义,较全面掌握应用密码学的基本密码协议和基本技术,并熟练掌握一些典型的密码学方案,能表达基本内容和基本道理,分析相关问题的区别与联系。
本课程理论学时54学时。
成绩考核形式:期终成绩(考查)(70%)+期中成绩(20%)+平时成绩(平时测验、作业、课堂提问、课堂讨论等)(10%)。
成绩评定采用百分制,60分为及格。
三、课程教学内容第一章 密码学概论1.教学基本要求理解密码学的基本概念及体系结构,包括密码体制的结构、安全性以及攻击类型。
对密码学发展的历史及其应用前景有一定的了解。
2.教学重点和难点教学重点:密码体制的结构。
教学难点:密码体制的安全性和攻击类型。
3.教学内容(1)密码学的基本概念(2)密码学的发展概况第二章 古典密码1.教学基本要求掌握几种古典密码的概念、加解密算法及其破译方法。
理解无条件安全的一次一密体制的设计方法和原理,了解其局限性。
2.教学重点和难点教学重点:古典密码的基本概念及分类。
教学难点:几种古典密码的加密算法及破译。
3.教学内容(1)代换密码(2)置换密码(3)古典密码的破译(4)无条件安全的一次一密体制第三章 现代分组密码1.教学基本要求掌握分组密码的基本原理,在对一些基本数学知识的理解下,熟练掌握数据加密标准DES和高级加密标准AES的加解密原理及其流程。
密码学(Cryptology)课程代码:4241047学分:3学时:48 (其中:课程教学学时:36,实验学时:12)先修课程:高等数学、离散数学、计算机网络适用专业:计算机科学与技术教材:无开课学院:计算机与软件学院一、课程性质与课程目标(一)课程性质密码学是学院开设的一门专业方向选修课程,为学生开展个性化学习提供专业方向,实现个性化分类培养。
本课程主要研究密码学的基础知识、传统密码学技术、常用的加解密算法,是学生了解网络平安过程中一门重要的理论和实验课程。
(二)课程目标课程目标包括知识目标和能力目标,具体如下:课程目标1:能够熟悉密码学中加解密算法的基本原理,熟悉加解密算法的推导,应用加解密算法实现加密系统的设计与实现,培养学生解决具体工程问题的能力。
课程目标2:能够了解密码学与信息平安之间的关系,针对网络环境中信息保护等问题研究和设计可行的加密系统,并对解决方案惊醒分析和论证。
(三)课程目标与专业毕业要求指标点的对应关系本课程支撑专业培养计划中的毕业要求指标点2.1和7.2o毕业要求指标点2.1:应用数学、自然科学和工程科学的基本原理,针对一个系统或者过程进行抽象、分析与识别,并进行问题推理、求解和验证。
毕业要求指标点72 了解信息化与环境保护的关系,能够理解和评价计算机专业工程实践对环境和社会可持续开展的影响。
本课程教学内容包括:密码学的基础知识、传统密码学技术、分组密码、序列密码、哈希函数和消息认证、公钥密码体制、数字签名技术。
附录1:实验考核方式及评分细那么本实验以考查为主,考核的内容包括实验过程的表现(其中包含分析与解决问题的能力)、实验报告的质量等。
分析与解决问题的能力采用提问和现场操作的方式进行。
实验成绩中出勤、预习占10%,实验过程表现占60%、实验报告及思考题占30%。
本课程基本要求是:了解密码学开展过程、基础知识,其与信息平安的关系;了解常用的加解密方法,掌握其含义、数学原理、推导过程并编程实现;针对网络环境中的实际应用,设计并实现加密系统。
《密码学》课程教学大纲Cryprtography必修课程性质:专业方向理论课/课程代码:5 适用专业:开课学期: 3.556总学分数:总学时数:7月修订年月:2007年编写年月:2006年6月笔:李锋执一、课程的性质和目的本课程是信息与计算科学专业信息安全方向的主要专业方向课。
其主要目的研究实现是让学生学习和了解密码学的一些基本概念,理解和掌握一些常用密码算法的加密和解密原理,认证理论的概念以及几种常见数字签名算法和安全性分析。
本课程涉及分组加密、流加密、公钥技术等内容。
加密、数字签名、哈希函数、密钥建立与管理、身份识别、认证理论与技术、PKI在牢固掌握密码学基本理论的基础上,要求学生掌握密码学的基本概念、基本原理和基本方法。
力,要求学、ASHA-1、DES初步具备使用C或C++语言编写基本密码算法(等)的能RC5ES、生通过学习该课程初步掌握密码学的理论和实现技术,使当代大学生适应社会信息化的要求,能利用密码技术服务于社会。
二、课程教学内容及学时分配学时)1章密码学概论(2第密码学的基本概念,2. 1.信息安全的基本概念,要求深刻理解与熟练掌握的重点内容有:与密码学有关的难解数学问题。
3. 密码学的发展历史。
要求一般理解与掌握的内容有:信息安全的基本内容、密码体制分类、重点:密码体制的分类。
难点:密码体制的攻击类型理解。
学时)章古典密码体制(2第2并了解和认识无条年之前的古典密码体制,掌握不同类型的加密方式,本章主要了解1949件安全及古典密码的破译。
、古典密、置换密码(列置换密码、周期置换密码)本章知识点:代换密码(分类和举例)码的破译、无条件安全的一次一密体制。
密码算法,练习最基本或最简单的加密模式。
为进Caesar C++编写要求学生能够使用C、Caesar密码。
一步加强对加密算法的理解,课堂上演示实现的学时)章现代分组密码(10第3算法、AESIDEA要求掌握分组密码概述,主要使用的结构及模式,详细学习DES、、RC5的流程,特别是如何实现这些算法,并了解每个算法的安全性及其效率。
密码学及应用教学大纲主讲教师:网络与信息安全系杨秋伟课程编号:课程名称:密码学及应用英文名称:Cryptography and Its Applications学时:40(理论教学)+ 16(课程实验)学分:3适用专业:计算机科学与技术、信息安全、通信工程、智能科学与技术课程性质:专业选修课程先修课程:数据结构一、课程教学目标本课程为信息安全专业的专业基础课程,是学习信息安全其它学科的基础,是信息安全专业必不可少的课程之一。
开设本课程主要讲授密码学的基本理论、一些有代表性的密码体制以及密码的应用技术,目的是让学生掌握密码学的基本理论和概念方法以及一些经典的加密算法。
主要内容包括:密码学基本概念、分组密码、序列密码、对称密码、公开密钥密码、认证、数字签名、密钥管理等内容。
二、教学内容及基本要求(一)理论教学部分:40学时第一章概论:信息时代与信息安全介绍信息安全时代形势、信息安全基本概念、理论和原理。
第二章密码学的基本概念介绍密码学的基本概念、古典密码学的种类,并讨论古典秘密吗学的计算方法和统计分析方法。
第三章分组密码介绍分组密码概念、AES和DES算法原理,讨论其它形式的分组密码。
第四长序列密码介绍序列密码的基本概念、线性移位寄存器密码、非线性序列密码、有限状态自动机密码和RC4密码。
第五章公开密钥密码介绍公开密钥密码的概念、发展历史和发展趋势,并讨论RSA密码、ELGamal密码、ECC密码算法。
第六章认证介绍认证的基本概念和原理、HASH函数,并讨论MD5算法、SHA-1算法。
第七章数字签名介绍数字签名的概念,讨论利用公开密钥密码实现数字签名,介绍美国数字签名标准(DSS)。
第八章密钥管理介绍密钥管理的基本概念、传统密码的密钥管理,讨论公开密钥密码的密钥管理、公开密钥基础设施(PKI)。
(二)课程实验部分:16课时(机房实验)实验一密码学数学基础实验(验证性实验,6学时)A) 求最大公约数实验内容:实现欧几里德算法;测试数据:gcd(1970, 1066) = 2。
应用密码学研究生课程中文版一、课程简介应用密码学是一门涉及密码学理论、密码协议、加密算法、数字签名、密钥管理、安全协议等多个领域的交叉学科。
本课程将介绍密码学的基本概念、原理和技术,以及在实际应用中的重要性和必要性。
通过本课程的学习,学生将掌握密码学的基本理论和实践技能,为今后从事相关领域的研究和工作打下坚实的基础。
二、课程内容1.密码学基础:介绍密码学的基本概念、原理和技术,包括对称加密和非对称加密算法。
2.密钥管理:介绍密钥管理的概念、方法和实践,包括密钥生成、分发、存储和备份等。
3.数字签名:介绍数字签名的原理、方法和实践,包括数字签名的认证和验证等。
4.安全协议:介绍各种安全协议的概念、原理和应用,包括SSL/TLS协议、IPSec协议等。
5.密码应用:介绍密码学在实际应用中的重要性和必要性,包括数据加密、数字证书、安全支付等。
6.安全协议分析:介绍如何分析安全协议的安全性和可靠性,包括攻击方法和防御措施。
三、教学方法本课程将采用理论讲授和实践教学相结合的方式进行。
教师将通过PPT演示、案例分析、小组讨论等多种形式进行教学,帮助学生更好地理解和掌握课程内容。
同时,学生将需要完成一些课程作业和实验项目,以巩固所学知识并提高实践能力。
四、课程评估本课程的评估将包括平时作业、实验项目和期末考试三个部分。
平时作业和实验项目将根据学生的完成情况和提交质量进行评分,期末考试将采用闭卷笔试的形式进行。
通过课程评估,学生可以了解自己的学习情况和不足之处,及时调整学习方法和策略,提高自己的综合素质和能力。
以上是应用密码学研究生课程的主要内容,希望能对您有所帮助。
更多细节和课程细节请查阅相关资料或咨询专业教师。
天津大学《密码学》课程教学大纲课程编号:2160157 课程名称:密码学学时:32 学分: 2学时分配:授课: 32授课学院:计算机科学与技术学院适用专业:计算机科学与技术先修课程:一.课程的性质与目的密码学是计算机科学与技术专业的专业选修课。
大量的信息以数据形式存放在计算机系统中并通过公共信道传输。
若这些信息的安全受到危害,则会危及国家的安全,引起社会的混乱,从而造成重大损失。
确保信息的安全已成为计算机科学技术的热点领域。
密码技术是信息安全中的关键技术,它的有效使用可以极大地提高计算机与网络的安全性。
课程的目的在于为已经或即将完成计算机学位基础课程并计划从事信息安全工程实践或理论研究的学生提供基础指导。
二.教学基本要求通过本课程的学习,学生应掌握现代密码学的基本原理和基本目标;掌握现代密码学中的主要方法和关键技术;初步了解一些现代密码学中的高级课题。
三.教学内容密码学概论:概括介绍现代密码学的产生背景,基本概念术语,基本理论,基本技术,安全模型等。
数论与代数初步:介绍现代密码学涉及的数论与代数的知识,包括:同余和剩余概念,中国剩余定理,费马定理和欧拉定理,二次剩余,原根,群、环、域的基本知识等。
DES加密标准:DES加密算法及其安全问题,口令安全应用,防止篡改码。
AES加密标准:AES加密算法及其快速实现方法,加密模式,消息认证码。
RSA算法与Rabin算法:RSA算法的构造、安全分析、参数选择,Rabin算法的构造、安全分析、参数选择。
离散对数:离散对数问题与安全分析,ElGamal加密算法,比特承诺。
数字签名:RSA签名方案,ElGamal签名族,生日攻击。
椭圆曲线:椭圆曲线算术,椭圆曲线密码,椭圆曲线在分解方面的应用。
密码执行:素性测试,模幂和多模幂算法,中国剩余定理加速RSA解密,Montgomery约减方法。
电子商务与电子现金:SET协议,不可否认签名,电子现金协议。
秘密分享:秘密分享的应用,秘密分割,几个门限方案。
应用密码学第二版教学设计课程概述本课程是应用密码学第二版的教学设计,旨在为学生提供针对密码学基础知识和应用的深入了解。
本课程主要包括密码学基础、对称密码、非对称密码、哈希函数、数字签名、公钥基础设施等内容。
通过本课程的学习,学生能够了解密码学的基本概念、原理和应用,能够应用加密算法保护计算机系统的安全。
教学目标本课程教学目标为:1.掌握密码学的基础概念、原理和应用。
2.掌握对称密码和非对称密码的加密、解密过程。
3.熟悉哈希函数和数字签名的作用、应用和实现。
4.掌握公钥基础设施的原理和实现。
教学内容本课程教学内容主要包括以下几个方面:密码学基础介绍密码学发展历史、密码学基础概念、密码分类、密码算法设计原则、加密模型、攻击模型等。
对称密码介绍对称密码算法原理、加密、解密过程、常用算法和应用场景。
主要包括凯撒密码、DES、3DES、AES等。
非对称密码介绍非对称密码算法的原理、加密、解密过程、常用算法和应用场景。
主要包括RSA、Elgamal、Diffie-Hellman、DH密钥交换算法等。
哈希函数介绍哈希函数的作用、应用和实现,包括MD5、SHA-1、SHA-2等。
数字签名介绍数字签名的作用、应用和实现,包括RSA数字签名算法、DSA、ECDSA等。
公钥基础设施介绍公钥基础设施的原理和实现方式,包括数字证书、证书颁发机构、证书撤销列表、OCSP协议等。
教学方法本课程采用多元化的教学方法,包括授课、讨论、实验操作、项目等。
授课授课为教师主导,通过课件、白板等方式展示和讲解课程内容。
讨论通过讨论的方式,让学生自主思考和研讨密码学相关知识和问题,并提供相应的指导和讨论。
实验操作通过实验操作,让学生实践密码学相关算法和应用,提高对密码学的理解和掌握。
项目通过项目式教学,让学生完成一个完整的密码学应用项目,进一步提高学生对密码学的应用和实战能力。
教学评估本课程教学评估主要采用考试和项目评估两种方式。
考试课程结束后,进行闭卷考试,考查学生对密码学知识和应用的掌握程度。
《密码学》教学大纲一、课程概述《密码学》是计算机科学、信息安全、数学等领域的一门综合性学科,涵盖了密码编码学、密码分析学、密钥管理等方面的知识。
本课程旨在让学生全面了解密码学的基本原理、方法和技术,掌握密码学在信息安全中的应用,并提高学生的密码学实践能力和创新思维。
二、课程目标1、理解密码学的基本概念、原理和数学基础知识,掌握密码编码学和密码分析学的基本方法。
2、掌握对称密码、非对称密码、哈希函数等常见密码体制的特点和实现原理,了解数字签名、消息认证码等应用密码学技术。
3、熟悉密码学在网络安全、数据保护等领域的应用,了解密码学的发展趋势和前沿技术。
4、培养学生的创新思维和实践能力,让学生能够根据实际需求设计和实现简单的密码学方案。
三、课程内容第一章密码学概述1、密码学的定义和历史发展2、密码学的应用领域和重要性3、密码学的分类和基本概念第二章密码编码学基础1、对称密码体制和非对称密码体制的特点和原理2、哈希函数和数字签名的概念和应用3、加密算法的设计原则和评估指标第三章对称密码体制1、数据加密标准(DES)的原理和应用2、国际数据加密算法(IDEA)的原理和应用3、分组密码和流密码的特点和实现方法第四章非对称密码体制1、RSA算法的原理和应用2、ElGamal算法和Diffie-Hellman密钥交换的原理和应用3、椭圆曲线密码学的原理和应用第五章哈希函数和数字签名1、SHA-1、SHA-256等常见哈希函数的原理和应用2、RSA数字签名算法的原理和应用3、其他数字签名方案的原理和应用,如DSA、ECDSA等第六章应用密码学技术1、数字证书和PKI系统的原理和应用2、消息认证码(MACs)和完整性校验算法的原理和应用3、零知识证明和身份基加密方案的概念和应用第七章密码分析学基础1、密码分析学的定义和重要性2、密码分析的基本方法和技巧,如统计分析、频率分析、差分分析等3、对称密码分析和非对称密码分析的特点和难点第八章密码管理基础1、密钥管理的概念和原则,如密钥生成、分发、存储、使用和销毁等2、密钥管理技术在企业和个人中的应用,如公钥基础设施(PKI)、加密磁盘等3、密码政策和安全意识教育的重要性。
《密码学》课程教学大纲教学时数:50 课程性质:必修开课学期:第6学期授课对象:本科一、课程概述1.课程的性质与地位《密码学》是本科信息研究与安全专业的一门专业必修课,它对学员建立密码学的整体概念,了解密码学的总貌,掌握密码学的基本理论与基本技术,培养学员良好的业务作风,为学员从事机要工作打下坚实基础具有不可替代的重要作用和意义。
2.课程基本理念本课程的教学应坚持以人为本、以学为主、注重创新意识和综合素质培养的指导思想,坚持将知识学习、能力训练和综合素质培养融为一体,将密码基础理论学习与密码技术实践紧密结合,强调学员在学习和实践中发现问题、分析问题、解决问题的能力,注重对学员科学探索精神、创新意识和团队精神的培养。
3.课程设计思路本课程教学按照由浅入深、由整体到局部再由局部到整体的思路,从密码学有关基本概念入手,逐步引入密码学的基本知识与基本技术,主要对密码学的基本原理、密码变换的基本环节、密码认证技术、密码管理技术及密码协议进行介绍。
使学员掌握密码基础理论,结合课程设计,应用密码基本知识与基本技术解决实际的安全保密问题。
二、课程目标通过本课程的学习,要求学员理解密码学的基本概念,掌握密码编码的基本环节、密码设计的基本思想、密码管理的基本技术以及常用的密码协议;将密码基础理论与基本技术与密码应用实践相结合,学会设计简单的密码方案,能解决信息安全保密系统中的基本密码技术问题。
培养学员的安全保密意识,确立热爱军事机要事业的观念,养成良好的机要业务作风。
三、内容标准(一)密码学概述1.基本内容:密码学和密码体制的基本概念、基本内涵和研究的主要内容;编码密码的移位原理、代替原理和加减原理及其信息泄漏规律;密码分析的基本概念及基本方法;2.学习要求:了解密码学军事上的重要作用,在当今信息时代的广泛应用,在信息安全领域的关键作用;理解密码学中的加密、解密、密钥、密码体制等基本概念;掌握密码编码的移位原理、代替原理和加减原理及其信息泄漏规律;理解多表代替对改善密文的统计规律的作用与原理;理解密码分析方法中的唯密文攻击、已知明文攻击、选择明文攻击的原理与应用背景;学会对单表代替和多表代替的唯密文分析方法;阐述粗糙度、重合指数的概念与含义;掌握代替表个数判断方法和将多表代替归结为单表代替的方法。
《应用密码学》课程教学大纲一、课程代码与名称课程代码:EI439001中文名称:应用密码学英文名称:Applied Cryptography二、课程概述及与相关课程关系随着通信网络及安全技术的发展,网络与信息的安全性等受到了人们的广泛关注。
密码技术作为信息安全的核心技术,为信息的保密性、完整性、可用性和可靠性等提供了实现的一种手段,在电子商务/电子政务、网络通信等方面的受到了高度重视。
密码学是计算机、通信、应用数学、软件工程等专业的交叉学科,本课程主要学习古典密码体制、对称密码体制、非对称密码体制、序列密码体制、消息摘要算法等基础密码理论及典型算法,以及它们在密钥管理、密码协议、数字签名、身份认证、电子商务、数字通信和工业网络控制等方面的应用。
图1应用密码学与其它课程关系图《应用密码学》课程与其他课程的关系如图1所示。
其中,《工程导论》、《面向对象程序设计》、《数据结构》和《信息安全数学基础》是《应用密码学》课程的前期课程,而具备《微积分Ⅰ》、《微积分Ⅱ》、《线性代数与空间解析几何》、《离散数学》、《概率论与数理统计》的知识,对于密码学算法的编程实现和理解是有帮助的。
通过本课程的学习,为进一步学习后续专业课程(如《信息安全理论与技术》、《信息对抗理论与技术》、《网络攻击与防御》、《灾难备份技术》、《信息隐藏与数字水印》、《系统加密与解密》和《安全系统整体解决方案设计》等课程)及在从事网络信息安全应用系统的设计与开发等实际工作奠定理论基础。
三、课程教学对象与教学目的适用专业:信息安全、信息对抗技术教学目的:(1)通过本课程的学习,学生能够掌握密码学的基本概念、古典密码体制、序列密码体制、对称密码体制和非对称密钥体制、消息摘要算法等基础密码理论及典型算法,以及它们在密钥管理、密码协议、数字签名、身份认证、电子商务、数字通信和工业网络控制等方面的应用;(2)通过本课程实验,进一步加深对密码算法及相关知识的理解与掌握;(3)本课程后期的《应用密码学》课程设计,在老师的指导下,以工程应用为背景,学生通过主动查找资料等,运用前期学过程序设计语言编程实现密码算法,进而完成加密/解密(可以实现对任意字符串和文件加密等功能)、消息摘要算法、数字签名、安全传输、安全存储、密钥共享等实用程序,进一步提高学生在实际项目中分析问题、解决问题和工程应用能力;(4)通过本课程的学习,主要完成如表1所示的指标。
表1 应用密码学主要完成的指标*注:该表所列指标可对照培养方案中所列指标来解释。
I:介绍,指从教、学活动中、从生活经验和社会经验等多种信息渠道获得知识,侧重知识的获取,没有实训要求。
T:讲授,指教、学活动中由教师引导开展的基础测试或练习,匹配有课程讨论、课后研讨等环节。
U:运用,指以学生为主导,通过实练而形成的对完成某种任务所必须的活动方式,匹配有课程的三级项目或其它实践环节(本课程有课程实验和课程设计)。
四、课程内容、学时分配及主要的教学方法1.《应用密码学》课程内容和学时分配本课程总学时:64学时(理论授课42学时,实验6学时,课程设计16学时)表2是《应用密码学》课程理论授课部分的重点、难点的概要以及各部分章节的学时安排,共42个学时。
2.《应用密码学》课程主要教学方法在应用密码学的教学过程中,采用课堂提问、课后作业练习等方式来考察学生对知识的掌握情况,通过课堂上密码算法的动画演示、密码算法的实现程序等来加深学生对密码算法的理解,提高课堂教学效果。
根据以往的经验,在《应用密码学》课程的教学中,密码学的基本概念、古典密码体制易于掌握;对称密码体制的加密解密流程,掌握的难度不大;掌握的难点集中在非对称密码体制的理解和掌握。
另外,对于破解典型的密码体制在计算上的难度,大部分学生的理解深度不够,在因此在教学过程中,采取以下方法提高教学效果:(1)课堂提问讨论、练习及讲解对于概念类知识、算法的初步掌握等,通过课堂提问、讨论的方式,激发学生主动去思考、主动去讨论和理解掌握密码算法知识,这样可以加深学生对密码算法知识的理解。
比如,原根的概念、RSA算法中提到的素数的个数、SHA-1算法中的对消息最后分组的填充等可以采用提问讨论、练习的方法进行教学。
(2)课堂演示对于比较复杂的知识点和比较难理解的知识点,可以采用实例演示和动画演示的方法,比如AES的加密流程、SHA-1算法等。
由于这类密码算法相对较复杂,利用课堂实例演示和动画演示,对于学生来说理解起来思路更清晰,也更容易接受。
(3)课后作业练习对于DES、AES、RSA和SHA-1等密码算法,由于算法结构和运算流程相对较难等特点,因此在教学中不可能在课堂上举这些算法的完整例子。
所以可以视学生实际掌握情况,通过布置课后作业练习,有意识的让学生在课后完成课堂上来不及详细讲解的密码算法例子。
(4)实验练习主要是通过实验,让学生把所学密码算法编程实现(可以选用所熟悉的编程语言)。
在理论教学时的实验主要是完成算法中的部分环节,以便加深对算法的理解;而在课程设计环节中,则要求对算法进行完整的实现,甚至是算法在工程实践中的应用。
(5)实践应用这主要是课程设计及其延展部分的要求。
由于密码学是应用性很强的学科,学习理论知识的目的是为了实践应用。
因此,很多密码算法是有标准可以遵循的,比如AES算法、DES算法和SHA-1算法都有FIPS的标准,RSA算法在使用上与理论上还是有差别的,使用时要去阅读PKCS的相关文档。
同学也可以使用学习的密码算法,去完成对文档及任意文件的加解密等。
3.《应用密码学》课程考核为了加强《应用密码学》课程教学过程管理,全面考核学生的知识、能力和综合素质,增强学生学习自觉性和主动性,加强对所学知识的理解、掌握和应用,课程组对《应用密码学》课程的考核采取课程过程考核方法。
《应用密码学》课程过程考核的具体办法参见如表5所示的“《应用密码学》课程过程考核知识点及课程过程考核方式”。
五、实践环节的要求《应用密码学》课程实践环节采用课程实验和课程设计等方式相结合,着力培养学生的设计和开发能力,也是《应用密码兴业》课程教学的重要环节和主要目标。
本课程的实践环节分为两个部分:一部分是与理论教学同时进行的实验;另一部分是完成本课程理论学习后的课程设计。
1.《应用密码学》课程实验具体而言,《应用密码学》课程实验包括以下两种方式:(1)在进行《应用密码学》课程的理论教学时,结合上机实验进行,提高学生对算法的理解与掌握;(2)《应用密码学》课程实验安排的课内6学时实验用于集中讨论学生课后上机遇到的问题和检查学生课后上机实验的完成情况。
《应用密码学》课程实验具体安排如表3(本课程包括10个实验,采用课内布置,课内/课外完成形式实施):表3 《应用密码学》课程实验安排按照《应用密码学》课程实验的要求,实验2、3必选一个,实验5、6必选一个,其他根据实际需要选择。
2.《应用密码学》课程设计(1)《应用密码学》课程设计的安排对于《应用密码学》课程设计的安排:总共16学时(课外10学时),由任课教师按照《应用密码学》教学大纲的课程设计要求出题或试卷(主要包括课程设计题目、要求、以及评分标准等),由教研室审核后,经课程组和学院审查同意后,任课教师在课堂上(教室上课)开题。
学生在选定与本课程相关的选题后,结合实际工程应用,完成方案设计、实现及编码工作;集中讲授学时不超过6学时,其余时间由任课老师辅导学生完成方案设计、实现及编码工作。
(2)《应用密码学》课程设计的选题《应用密码学》课程设计的主要选题为下列内容之一:①结合实际工程应用的DES算法及变形如3DES等,或者AES算法的实现;②结合实际工程应用的SHA系列算法的实现;③结合实际工程应用的RSA加密解密算法或RSA签名算法的实现;④结合实际工程应用的DSA数字签名或者RSA数字签名的实现;⑤结合实际工程应用的ElGamal加密算法或ECC加密算法的实现;⑥结合实际工程应用的密码算法应用(如SSL、随机数产生、密钥共享等)的实现;⑦自拟题目,与老师沟通选题后并被课程组认可,方可作为题目进行设计。
(3)《应用密码学》课程设计的课时分配①需求分析:2学时;②方案设计:4学时;③编码实现:6学时(课外10学时);④测试和改进:4学时。
注:根据选题的工作量,可以由1-2个学生完成一个项目(一般情况下是一人一题)。
(4)《应用密码学》课程设计考核为了提高课程设计质量,提高学生的实践动手能力和工程应用能力,课程设计考核是课程设计中一个非常重要的教学环节。
由于《应用密码学》课程设计的大部分时间是在指导老师的指导下由学生自主查资料进行设计与实现,对于其过程控制的难度较大。
因此,为了保证课程设计质量,对《应用密码学》课程设计的考核重点是对其结果进行考核,但同时要求指导老师对课程设计过程进行严格的管理。
对《应用密码学》课程设计的考核,采用答辩方式进行(通过答辩可使学生进一步发现设计中存在的问题,进一步明了不甚理解的问题,从而取得更大的收获,圆满地达到课程设计的目的与要求)。
指导老师应该对课程设计进行严格的过程管理,同时按照学校和学院对课程设计考核(参见“网络工程学院课程设计的有关规定(试行)”)的有关要求做好平时成绩的记录及课程设计答辩工作。
1)课程设计答辩①答辩资格:按照计划完成课程设计任务,经指导教师审查通过后方可参加答辩。
②答辩小组组成:课程设计答辩小组由本学期承担本门课程设计的老师组成(一般由2-3名老师组成)。
③答辩:答辩小组应详细审阅学生的课程设计资料,为答辩作好准备;答辩中,学生须报告自己设计的主要内容(约3分钟),并回答答辩小组成员提问的5-8个问题或回答考签上提出的问题。
答辩过程公开并允许其他学生旁听。
每个学生答辩总时间约8分钟。
答辩过程中,应做好记录,供评定成绩时参考。
2)课程设计成绩的评定指导老师应该对课程设计过程进行严格的管理,按照学校的要求做好平时成绩考核的记录。
答辩结束后,答辩小组应客观公正地确定学生的答辩成绩。
课程设计的成绩由指导教师和答辩小组两部分评分组成,两部分的权重各占50%。
3)课程设计成绩评定表答辩结束后,答辩小组应客观公正地确定学生的答辩成绩。
课程设计的成绩由指导教师和答辩小组两部分评分组成,两部分的权重各占50%。
课程设计成绩评定表如表4所示。
表4 课程设计成绩评定表六、课程考核《应用密码学》课程包含理论教学、实验和课程设计三部分。
在《应用密码学》课程考核中,实行课程过程考核(平时占总成绩的70%,期末占总成绩的30%)。
在注重理论教学的同时,特别强调了实践和应用在本课程中的比重。
各部分在本课程中的考核方式和比重如下:(1)理论部分:期末采用闭卷考试,占总成绩的30%;(2)《应用密码学》课程实行过程考核:占总成绩的70%,按照百分比重分配如下:①平时考勤(上课、实验和课程设计考勤):10%②其余90%,按照如表5所示的《应用密码学》课程过程考核知识点及课程过程考核方式所占比重进行考核。