文档《密码学根底》课程教学大纲〔课程代码:07310620〕课程简介密码学根底是信息安全专业的一门技术根底课程,该课程的学习将为后续的信息安全课程打下根底,同时也为将来从事信息安全研究和安全系统的设计提供必要的根底该课程主要讲授流密码〔古典密码学〕分组密码学、公钥密码学、密钥分配与管理、信息认证和杂凑算法、数字签名以与网络加密与认证等几个局部,在其中将学习各种加解密、散列函数、单向函数、签名模式与伪随机发生器等多种密码学工具,以与如何应用这些工具设计一个实现根本信息安全目标的系统〔目前学时不够,没有安排〕根本密码学工具的掌握和应用这些工具构造安全服务就是本课程的根本目标 本课程具有如下特点:〔一〕依赖很强的数学根底本课程需要数论、近世代数、概率论、信息论、计算复杂性等数学知识作为学习的根底这些数学根底的讲解既要表现本身的体系性,同时还要兼顾密码学背景〔二〕可扩展性强各种具体方法的学习不是本课程的最终目标,背后的根本原理以与应用这些原理设计新工具的能力才是本课程的最终目标〔三〕课程容复杂且涉与面广由于密码学容丰富,且包含许多复杂的知识点,所以本课程的讲授以线为主,即在根本主线的勾勒根底上对授课容与复杂程度做出取舍。
本课程先修课程有:数据结构、近世代数、概率论、高等数学、高级语言程序设计等后续课程有信息安全扫描技术、PKI技术、病毒学等专业课程课程教材选用国信息安全优秀教材波编著的《现代密码学》〔清华大学〕,同时参考国外优秀教材: 《经典密码学与现代密码学》,Richard Spillman,清华大学、Douglas R. Stinson著,登国译的《密码学原理和实践》,电子工业,2003年2月第二版另外还向学生推荐国的一些具有特色的操作系统教材如胡向东编写的《应用密码学教程》〔电子工业〕等实验教材选用自编的实验指导书,同时参考交大的“信息安全综合实验系统实验指导书〞,除了这些教材之外,学校的图书馆为师生提供了相关的学术期刊和图书课程教学体系:理论课程〔34学时〕课程实验〔16学时〕达到从算法验证、综合设计、到创新应用知识的逐步提高、全面培养的目的相应的教学材料由教学大纲、实验大纲、实验指导书等实践环节的实验条件有:计算机科学技术系的实验中心〔实施课程实验〕课程教学安排序号容课时数备注一密码学概述2二古典密码学算法〔一〕2三古典密码学算法〔二〕2课后习题四 分组密码体制:数论根底2五中国剩余定理2六Feistel 网络结构2七DES加密算法2课后习题八置换和代换2九公钥密码体制的根本原理2十RSA算法2十一背包密码体制2课后习题十二DES算法实验2实验课十三3 DES算法实验2实验课十四单钥、公钥加密体制的密钥分配2十五密钥托管与消息认证码2十六杂凑函数2课后习题十七RSA算法实验4实验课十八数字签字原理2十九密码认证协议2二十网络通信加密与PGP2二十一AES算法实验4实验课二十二MD5算法实验4实验课第一局部:理论课大纲【教学目的与要求】密码学根底是计算机信息安全中的核心课程,所以改专业的学生均需学习并掌握密码学的相关技术理论和工具方法,这是深入理解和从事有关信息安全行业工作的根底。
因此密码学根底在信息安全专业课程中占有不可替代的地位本课程的先修课程有《数据结构》、《概率论》、《高等数学》、《高级语言程序设计》等,学生应掌握程序设计、数据结构、编译原理和计算机组成等方面的根底知识,具有一定的独立编程能力通过本课程学习培养学生动手能力,对密码学的原理、思想和算法都有清晰、深入的理解让学生通过多个密码算法的程序设计实现,更好地掌握密码算法设计的机理和方法同时,基于密码系统设计的根本方法和根本步骤,帮助学生理解密码学在信息安全中的地位,并引导了解密码学领域与信息安全领域的新进展、新方向掌握本课程后,可以为后期《信息安全扫描技术》、《PKI技术》、《病毒学》等课程的学习,以与网络安全的分析、设计与开发奠定坚实的专业根底 通过本课程的学习各种加解密、散列函数、单向函数、签名模式与伪随机发生器等多种密码学工具,培养学生的实际动手能力和提高分析问题解决问题的能力,为学生今后从事各种实际工作,如设计、分析和改良各种加解密数据包提供必要的软件根底,以便能得心应手地用好和管好计算机,更好地完成各种计算机安全任务以与如何应用这些工具设计一个实现根本信息安全目标的系统〔目前学时不够,没有安排〕。
根本密码学工具的掌握和应用这些工具构造安全服务就是本课程的根本目标重点和难点】本课程的重点是:密码学中的数论知识,密码学中常见的代数结构,熵理论概要,加解密都是明密文集合上的数学变换:代换和置换、SPN(代换-置换网)两种常见的DES分析方法:线性分析和差分分析手段三种常见的信息认证方法:加密,消息认证码(MAC)和散列函数,常见的密码学协议,包括密钥分发、密钥协商、认证等容难点有:移位加密、代换密码、维吉尼亚密码、希尔密码等古典加密算法与古典置换密码:行置换加密、块置换加密等数据加密标准(DES)、S-盒设计方法、高级加密标准(AES)、 RSA公钥密码算法、ElGamal公钥密码算法、椭圆曲线加密算法(ECC)、背包加密算法、MD5散列算法等教学方法】在《密码学根底》教学中采用面授和多媒体教学手段相结合的方式进展面授教学是教学相长、教学互动的最好的模式采用这种教学相长的启发式教学方法,课堂上组织讨论,使课堂气氛活跃,学生的学习兴趣、能动性大大提高实际教学中使用多媒体教学手段在教育多功能教室上课,进展实时的、多媒体、交互式的教学,以动画生动表现动态过程,以拟人手段讲解难点,提高学生学习兴趣。
密码学根底实验环境(软件)为交大的“信息安全综合实验系统平台〞学生利用这个实验环境通过实践进一步掌握密码学领域的根本原理、根本思想与根本算法原理使学生对密码系统设计和分析的根本方法和步骤形成一个清晰、全面的认识课时安排】课时安排〔共50学时〕序号 教 学 容讲授学时 试验学时〔一〕 第一章引言2〔二〕 第二章流密码4〔三〕 第三章分组密码体制86〔四〕 第四章公钥密码88〔五〕 第五章密钥分配与密钥管理32〔六〕 第六章消息认证与杂凑算法3〔七〕第七章数字签字和密码协议4〔八〕第八章网络加密与认证2【主要参考书】课程教材选用国信息安全优秀教材波编著的《现代密码学》〔清华大学〕,同时参考国外优秀教材: 《经典密码学与现代密码学》,Richard Spillman,清华大学、Douglas R. Stinson著,登国译的《密码学原理和实践》,电子工业,2003年2月第二版另外还向学生推荐国的一些具有特色的操作系统教材如胡向东编写的《应用密码学教程》〔电子工业〕等实验教材选用自编的实验指导书,同时参考交大的“信息安全综合实验系统实验指导书〞,除了这些教材之外,学校的图书馆为师生提供了相关的学术期刊和图书。
一、密码学概述【教学目的与要求】课前言;了解信息安全面临的威胁;了解信息安全的模型;了解密码学的根本概念【重点和难点】重点:密码学根本概念、术语【教学方法】多媒体教学【课时安排】2学时【主要参考书】《经典密码学与现代密码学》、《应用密码学教程》、《密码学原理和实践》【课程主要容】课前言:本章是引言,包括:信息安全面临的威胁 信息安全的模型 密码学根本概念 〔一〕密码学简介1.信息安全的模型 信息安全的根本模型 安全传输技术有以下两个根本成分:〔1〕消息的安全传输,包括对消息的加密和认证加密的目的是将消息搞乱让对手无法读懂,认证的目的是检查发送者的身份〔2〕通信双方共享的某些秘密信息,如加密密钥第三方的作用是负责向通信双方发布秘密信息或者在通信双方有争议时进展仲裁安全的网络通信必须考虑的4个方面〔二〕假如干根本概念2.密码学根本概念 密码学主要是研究通信安全的学科,包括两个分支:密码编码学和密码分析学密码编码学主要研究对信息进展变换,以保护信息在信道的传递过程中不被他人窃取、解密和利用的方法。
密码分析学主要研究如何分析和破译密码密码系统的组成:密码系统由明文空间、密文空间、密码方案和密钥空间组成明文空间:待加密的信息称为明文,明文的全体称为明文空间明文用M〔Message〕或P〔Plain Text〕表示密文空间:经过伪装后的明文,全体可能出现的密文的集合成为密文空间用C〔Cipher〕表示密码方案:密码方案确切地描述了加密变换和解密变换的具体规如此包括对明文进展加密时所使用的一组规如此〔加密算法〕的描述,以与对密文进展复原时所使用的一组规如此〔解密算法〕的描述密钥空间:加密和解密算法的操作通常在称为密钥的元素〔加密密钥和解密密钥〕的控制下进展密钥的全体称为密钥空间用K表示从数学角度来讲,一个密码系统是一族映射,它在密钥的控制下将明文空间中的每一个元素映射到密文空间上的某个元素这族映射由密码方案确定,具体使用哪一个映射由密钥决定二、古典密码学算法〔Ⅰ〕【教学目的与要求】要求学生了解并掌握:流密码的根本概念;掌握线性反应移位存放器;了解非线性序列【重点和难点】重点:线性反应移位存放器难点:线性反应移位存放器教学方法】多媒体教学【课时安排】2学时【主要参考书】《经典密码学与现代密码学》、《应用密码学教程》、《密码学原理和实践》【课程主要容】本节是流密码,包括:流密码的根本概念 线性反应移位存放器 非线性序列〔一〕线性反应移位存放器移位存放器是流密码产生密钥流的一个主要组成局部。
GF(2)上一个n级反应移位存放器由n个二元存储器与一个反应函数f(a1,a2,…,an)组成,如下列图图2.8 GF(2)上的n级反应移位存放器每一存储器称为移位存放器的一级,在任一时刻,这些级的容构成该反应移位存放器的状态,每一状态对应于GF(2)上的一个n维向量,共有2n种可能的状态每一时刻的状态可用n长序列a1,a2,…,an或n维向量 (a1,a2,…,an)表示,其中ai是第i级存储器的容初始状态由用户确定,当第i个移位时钟脉冲到来时,每一级存储器ai都将其容向下一级ai-1传递,并根据存放器此时的状态a1,a2,…,an计算f(a1,a2,…,an),作为下一时刻的an反应函数f(a1,a2,…,an)是n元布尔函数,即n个变元a1,a2,…,an可以独立地取0和1这两个可能的值,函数中的运算有逻辑与、逻辑或、逻辑补等运算,最后的函数值也为0或1如果移位存放器的反应函数f(a1,a2,…,an)是a1,a2,…,an的线性函数,如此称之为线性反应移位存放器LFSR〔linear feedback shift register〕此时f可写为f(a1,a2,…,an)=。