密码学基础教学大纲完整版Word文档下载推荐.docx
- 文档编号:22285823
- 上传时间:2023-02-03
- 格式:DOCX
- 页数:34
- 大小:108.53KB
密码学基础教学大纲完整版Word文档下载推荐.docx
《密码学基础教学大纲完整版Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《密码学基础教学大纲完整版Word文档下载推荐.docx(34页珍藏版)》请在冰豆网上搜索。
二
古典密码学算法
(一)
三
古典密码学算法
(二)
课后习题
四
分组密码体制:
数论基础
五
中国剩余定理
六
Feistel网络结构
七
DES加密算法
八
置换和代换
九
公钥密码体制的基本原理
十
RSA算法
十一
背包密码体制
十二
DES算法实验
实验课
十三
3DES算法实验
十四
单钥、公钥加密体制的密钥分配
十五
密钥托管与消息认证码
十六
杂凑函数
十七
RSA算法实验
4
十八
数字签字原理
十九
密码认证协议
二十
网络通信加密与PGP
二十一
AES算法实验
二十二
MD5算法实验
第一部分:
理论课大纲
【教学目的及要求】
密码学基础是计算机信息安全中的核心课程,所以改专业的学生均需学习并掌握密码学的相关技术理论和工具方法,这是深入理解和从事有关信息安全行业工作的基础。
因此密码学基础在信息安全专业课程中占有不可替代的地位。
本课程的先修课程有《数据结构》、《概率论》、《高等数学》、《高级语言程序设计》等,学生应掌握程序设计、数据结构、编译原理和计算机组成等方面的基础知识,具有一定的独立编程能力。
通过本课程学习培养学生动手能力,对密码学的原理、思想和算法都有清晰、深入的理解。
让学生通过多个密码算法的程序设计实现,更好地掌握密码算法设计的机理和方法。
同时,基于密码系统设计的基本方法和基本步骤,帮助学生理解密码学在信息安全中的地位,并引导了解密码学领域及信息安全领域的新进展、新方向。
掌握本课程后,可以为后期《信息安全扫描技术》、《PKI技术》、《病毒学》等课程的学习,以及网络安全的分析、设计与开发奠定坚实的专业基础。
通过本课程的学习各种加解密、散列函数、单向函数、签名模式及伪随机发生器等多种密码学工具,培养学生的实际动手能力和提高分析问题解决问题的能力,为学生今后从事各种实际工作,如设计、分析和改进各种加解密数据包提供必要的软件基础,以便能得心应手地用好和管好计算机,更好地完成各种计算机安全保密任务以及如何应用这些工具设计一个实现基本信息安全目标的系统(目前学时不够,没有安排)。
【重点和难点】
本课程的重点是:
密码学中的数论知识,密码学中常见的代数结构,熵理论概要,加解密都是明密文集合上的数学变换:
代换和置换、SPN(代换-置换网)。
两种常见的DES分析方法:
线性分析和差分分析手段。
三种常见的信息认证方法:
加密,消息认证码(MAC)和散列函数,常见的密码学协议,包括密钥分发、密钥协商、认证等内容。
难点有:
移位加密、代换密码、维吉尼亚密码、希尔密码等古典加密算法与古典置换密码:
行置换加密、块置换加密等。
数据加密标准(DES)、S-盒设计方法、高级加密标准(AES)、RSA公钥密码算法、ElGamal公钥密码算法、椭圆曲线加密算法(ECC)、背包加密算法、MD5散列算法等。
【教学方法】
在《密码学基础》教学中采用面授和多媒体教学手段相结合的方式进行。
面授教学是教学相长、教学互动的最好的模式。
采用这种教学相长的启发式教学方法,课堂上组织讨论,使课堂气氛活跃,学生的学习兴趣、能动性大大提高。
实际教学中使用多媒体教学手段在教育多功能教室上课,进行实时的、多媒体、交互式的教学,以动画生动表现动态过程,以拟人手段讲解难点,提高学生学习兴趣。
密码学基础实验环境(软件)为上海交大的“信息安全综合实验系统平台”。
学生利用这个实验环境通过实践进一步掌握密码学领域的基本原理、基本思想及基本算法原理。
使学生对密码系统设计和分析的基本方法和步骤形成一个清晰、全面的认识。
【课时安排】课时安排(共50学时)
序号
教学内容
讲授学时
试验学时
(一)
第一章引言
(二)
第二章流密码
(三)
第三章分组密码体制
8
6
(四)
第四章公钥密码
(五)
第五章密钥分配与密钥管理
3
(六)
第六章消息认证与杂凑算法
(七)
第七章数字签字和密码协议
(八)
第八章网络加密与认证
【主要参考书】
课程教材选用国内信息安全优秀教材杨波编著的《现代密码学》(清华大学出版社),同时参考国外优秀教材:
一、密码学概述
课前言;
了解信息安全面临的威胁;
了解信息安全的模型;
了解密码学的基本概念
重点:
密码学基本概念、术语
【教学方法】多媒体教学
【课时安排】2学时
《经典密码学与现代密码学》、《应用密码学教程》、《密码学原理和实践》
【课程主要内容】
课前言:
本章是引言,包括:
信息安全面临的威胁
信息安全的模型
密码学基本概念
(一)密码学简介
1.信息安全的模型
信息安全的基本模型。
安全传输技术有以下两个基本成分:
(1)消息的安全传输,包括对消息的加密和认证。
加密的目的是将消息搞乱让对手无法读懂,认证的目的是检查发送者的身份。
(2)通信双方共享的某些秘密信息,如加密密钥。
第三方的作用是负责向通信双方发布秘密信息或者在通信双方有争议时进行仲裁。
安全的网络通信必须考虑的4个方面。
(二)若干基本概念
2.密码学基本概念
密码学主要是研究通信安全保密的学科,包括两个分支:
密码编码学和密码分析学。
密码编码学主要研究对信息进行变换,以保护信息在信道的传递过程中不被他人窃取、解密和利用的方法。
密码分析学主要研究如何分析和破译密码
密码系统的组成:
密码系统由明文空间、密文空间、密码方案和密钥空间组成。
明文空间:
待加密的信息称为明文,明文的全体称为明文空间。
明文用M(Message)或P(PlainText)表示。
密文空间:
经过伪装后的明文,全体可能出现的密文的集合成为密文空间。
用C(Cipher)表示。
密码方案:
密码方案确切地描述了加密变换和解密变换的具体规则。
包括对明文进行加密时所使用的一组规则(加密算法)的描述,以及对密文进行还原时所使用的一组规则(解密算法)的描述。
密钥空间:
加密和解密算法的操作通常在称为密钥的元素(加密密钥和解密密钥)的控制下进行。
密钥的全体称为密钥空间。
用K表示
从数学角度来讲,一个密码系统是一族映射,它在密钥的控制下将明文空间中的每一个元素映射到密文空间上的某个元素。
这族映射由密码方案确定,具体使用哪一个映射由密钥决定。
二、古典密码学算法(Ⅰ)
要求学生了解并掌握:
流密码的基本概念;
掌握线性反馈移位寄存器;
了解非线性序列
线性反馈移位寄存器
难点:
线性反馈移位寄存器。
本节是流密码,包括:
流密码的基本概念
线性反馈移位寄存器
非线性序列
(一)线性反馈移位寄存器
移位寄存器是流密码产生密钥流的一个主要组成部分。
GF
(2)上一个n级反馈移位寄存器由n个二元存储器与一个反馈函数f(a1,a2,…,an)组成,如图2.8所示。
图2.8GF
(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(linearfeedbackshiftregister)。
此时f可写为f(a1,a2,…,an)=cna1⊕cn-1a2…⊕c1an
三、古典密码学算法(Ⅱ)
要求学生了解并掌握:
几种典型的古典密码体制;
古典密码的统计分析
几种典型的古典密码体制
Playfair体制
本节是古典密码学,包括:
古典密码的统计分析
(一)古典密码学的基本算法
加解密都是明密文集合上的数学变换,古典密码学立足于两类基本操作:
代换和置换。
基于这两类操作,产生了相应的古典代换密码:
移位加密、代换密码、仿射密码、维吉尼亚密码、希尔密码等古典加密算法等;
和古典置换密码:
密码编码学和密码分析学是相辅相成的,所以需对古典密码学进行一定的密码分析。
基于语言中字符概率的密码分析以及各种古典加密算法对该种分析的抵抗性。
四、分组密码体制:
要求学生了解并掌握与课程相关的数学知识。
模运算、欧拉定理、中国剩余定理。
乘法逆元。
本节是数论简介,包括:
模运算
费尔玛定理和欧拉定理
中国剩余定理
(一)数论简介
密码学中的数论知识,密码学中常见的代数结构,完善保密性,熵理论概要。
需要让学生认识到基本密码学工具(如加解密算法)都是集合上的数学变换,而一般都是在某种代数结构上建立若干代数运算。
数论是密码学特别是公钥密码学的基本工具,本章主要介绍密码学中常用的一些数论知识。
1.素数和互素数
因子:
设a,b(b≠0)是两个整数,如果存在另一整数m,使得a=mb,则称b整除a,记为b|a,且称b是a的因子。
整数具有以下性质:
①a|1,那么a=±
1。
②a|b且b|a,则a=±
b。
③对任一b(b≠0),b|0。
④b|g,b|h,则对任意整数m、n有b|(mg+nh)。
素数
称整数p(p>
1)是素数,如果p的因子只有±
1,±
p。
互素数
最大公因子定义:
称c是两个整数a、b的最大公因子,如果
①c是a的因子也是b的因子,即c是a、b的公因子。
②a和b的任一公因子,也是c的因子。
互素:
如果gcd(a,b)=1,则称a和b互素。
2.同余的定义及表示。
如果(amodn)=(bmodn),则称两整数a和b模n同余,记为a≡bmodn。
称与a模n同余的数的全体为a的同余类,记为[a],称a为这个同余类的表示元素。
注意:
如果a≡0(modn),则n|a。
(二)费尔玛定理和欧拉定理
1.费尔玛定理
定理4.2(Fermat)若p是素数,a是正整数且gcd(a,p)=1,则ap-1≡1modp。
2.欧拉函数
设n是一正整数,小于n且与n互素的正整数的个数称为n的欧拉函数,记为φ(n)。
例如:
φ(6)=2,φ(7)=6,φ(8)=4。
定理4.3若n是两个素数p和q的乘积,则φ(n)=φ(p)×
φ(q)=(p-1)×
(q-1)。
3.欧拉定理
若a和n互素,则aφ(n)≡1modn。
欧几里得算法
欧几里得(Euclid)算法是数论中的一个基本技术,是求两个正整数的最大公因子的简化过程。
而推广的Euclid算法不仅可求两个正整数的最大公因子,而且当两个正整数互素时,还可求出其中一个数关于另一个数的乘法逆元。
五、中国剩余定理
要求学生了解并掌握与课程相关的定理知识。
中国剩余定理。
中国剩余定理是数论中最有用的一个工具,定理说如果已知某个数关于一些两两互素的数的同余类集,就可重构这个数。
定理4.5(中国剩余定理)设m1,m2,…,mk是两两互素的正整数,则一次同余方程组对模M有惟一解:
中国剩余定理提供了一个非常有用的特性,即在模M下可将非常大的数x由一组小数(a1,a2,…,ak)表达。
例4.5将973mod1813由模数分别为37和49的两个数表示。
解:
取x=973,M=1813,m1=37,m2=49。
由a1≡973modm1≡11,a2≡973modm3≡42得x在模37和模49下的表达为(11,42)。
六、Feistel网络结构
需要掌握数据加密标准与掌握分组密码的运行模式
Feistel网络结构。
本章是分组密码体制包括:
数据加密标准DES
分组密码的运行模式
(一)Feistel网络结构
基于Shannon的理论,可通过乘积密码原理来提高密码变换的复杂性和抗分析性;
如果选取置换和代换作为乘积密码的基本单元,就必须采用分组密码。
将二者结合起来,就形成了分组密码学的基本结构:
SPN(代换-置换网)。
基于这一核心,HorstFeistel提出了一个目前分组密码学中最常见的结构,在这一结构基础上,产生了数据加密标准(DES)。
有两种常见的DES分析方法:
线性分析和差分分析。
两种分析方法都是应用DES中S-盒设计上的某些不均衡性造成的,所以有必要提出新的S-盒设计方法。
由于DES存在安全性问题,产生了高级加密标准(AES)。
线性密码分析和差分密码分析的工作原理。
AES的S-盒设计,它采用了一套完整的数学计算。
(二)分组密码概述
1.分组密码定义:
分组密码是将明文消息编码表示后的数字序列x0,x1,…,xi,…划分成长为n的组x=(x0,x1,…,xn-1),各组(长为n的矢量)分别在密钥k=(k0,k1,…,kt-1)控制下变换成等长的输出数字序列y=(y0,y1,…,ym-1)(长为m的矢量),其加密函数E:
Vn×
K→Vm,Vn和Vm分别是n维和m维矢量空间,K为密钥空间
通常取m=n。
若m>
n,则为有数据扩展的分组密码;
若m<
n,则为有数据压缩的分组密码。
2.分组密码和流密码的区别
(1)它与流密码不同之处在于输出的每一位数字不是只与相应时刻输入的明文数字有关,而是与一组长为n的明文数字有关。
在相同密钥下,分组密码对长为n的输入明文组所实施的变换是等同的,所以只需研究对任一组明文数字的变换规则。
这种密码实质上是字长为n的数字序列的代换密码。
(2)分组密码每次处理一个输入分组,相应地输出一个输出分组。
流密码则是连续地处理输入元素,每次输出一个元素。
(三)Feistel密码结构
首先明确输入为明文和密钥,输出为密文。
明文在输入时分为左右两半,密文是将输出的左右两半合并到一起产生的。
加密过程是n轮迭代变换,每轮结构相同,只是各轮子密钥彼此不同而且与K也不同
每轮迭代满足的规律,其第i轮迭代的输入为前一轮输出的函数:
Li=Ri-1
Ri=Li-1⊕F(Ri-1,Ki)
其中Ki是第i轮用的子密钥,由加密密钥K得到。
七、DES加密算法
掌握数据加密标准的运行步骤
DES加密算法。
S盒变换。
(一)数据加密标准
数据加密标准(dataencryptionstandard,DES)是迄今为止世界上最为广泛使用和流行的一种分组密码算法,它的分组长度为64比特,密钥长度为56比特,它是由美国IBM公司研制的,是早期的称作Lucifer密码的一种发展和修改。
(二)DES描述
图3.5是DES加密算法的框图,其中明文分组长为64比特,密钥长为56比特。
图的左边是明文的处理过程,有3个阶段,首先是一个初始置换IP,用于重排明文分组的64比特数据。
然后是具有相同功能的16轮变换,每轮中都有置换和代换运算,第16轮变换的输出分为左右两半,并被交换次序。
最后再经过一个逆初始置换IP-1(为IP的逆)从而产生64比特的密文。
和Feistel密码一样,DES的解密和加密使用同一算法,但子密钥使用的顺序相反。
(二)二重DES
为了提高DES的安全性,并利用实现DES的现有软硬件,可将DES算法在多密钥下多重使用。
二重DES是多重使用DES时最简单的形式,如图3.8所示。
其中明文为P,两个加密密钥为K1和K2,密文为:
C=Ek2[Ek1[P]]
解密时,以相反顺序使用两个密钥:
P=Dk1[Dk2[C]]
因此,二重DES所用密钥长度为112比特,强度极大地增加。
八、置换和代换
掌握代换与置换的区别以及实现方法
迭代置换与代换
(一)代换
代换法是将明文中的每个元素映射成另一个元素或者说将明文字母替换成其他字母,数字或符号的方法.如果把明文看做是二进制序列的话,那么代换就是用密文位串代替明文位串.如Casear密码,对字母表中每个字母用它之后的第三个字母来代换。
Casear密码是单表代换密码,Playfair是多表代换密码。
如果明文和密文的分组长为n比特,则明文的每一个分组都有2n个可能的取值.为使加密运算可逆(使解密运算可行),明文的每一个分组都应产生惟一的一个密文分组,这样的变换是可逆的,称明文分组到密文分组的可逆变换为代换..
下图表示n=4的代换密码的一般结构:
如果分组长度太小,系统则等价于古典的代换密码,容易通过对明文的统计分析而被攻破.这个弱点不是代换结构固有的,如果分组长度足够大,而且从明文到密文可有任意可逆的代换,那么明文的统计特性将被隐藏而使以上的攻击不能奏效.
(二)置换
另一种加密方法是将明文中的元素重新排列,这种技术称为置换密码.
最简单的例子是栅栏技术,按照对角线的顺序写入明文,而按行的顺序读出作为密文.
例如:
,用深度为2的栅栏技术加密信息“meetmeafterthetogaparty”,可写为
mematrhtgpry
etefeteoaat
加密后的信息是MEMATRHTGPRYETEFETEOAAT
九、公钥密码体制的基本原理
要求学生了解并掌握公钥密码体制的基本原理;
理解RSA算法
本章是公钥密码包括:
RSA算法
背包密码体制
公钥密码学基于的基本原理是构造单向陷门函数。
可以有多种单向陷门函数来实现公钥密码。
基于素数分解的单向性再加上陷门信息就形成了RSA公钥密码算法。
基于求解离散对数的单向型再加上陷门信息就形成了ElGamal公钥密码算法,如果离散对数问题作用在椭圆曲线群上,就形成了椭圆曲线加密算法(ECC)。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 密码学 基础 教学大纲 完整版
![提示](https://static.bdocx.com/images/bang_tan.gif)