第2章 密码学基础(2.1-2.3).ppt
《第2章 密码学基础(2.1-2.3).ppt》由会员分享,可在线阅读,更多相关《第2章 密码学基础(2.1-2.3).ppt(53页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第2章 密码学基础主要内容主要内容2.1 密码学基础知识(密码学基础知识(密码体系结构及关键概念密码体系结构及关键概念)2.2 古典替换密码(古典替换密码(仿射密码仿射密码)2.3 对称密钥密码(对称密钥密码(DES)2.4 公开密钥密码(公开密钥密码(RSA)2.5 消息认证(消息认证(认证函数、数字签名认证函数、数字签名)2.6 密码学新进展密码学新进展2.1 密码学基础知识密码学基础知识 意义意义解决数据的机密性、完整性、不可否认性以及身份识别等解决数据的机密性、完整性、不可否认性以及身份识别等问题均需要问题均需要以密码为基础以密码为基础,密码技术是保障信息安全的密码技术是保障信息安全的
2、核心基础。核心基础。研究内容研究内容密码学以研究秘密通信为目的,即研究对信息采用何种秘密码学以研究秘密通信为目的,即研究对信息采用何种秘密的变换以防止第三方窃取,包括密的变换以防止第三方窃取,包括密码编码学密码编码学和和密码分析密码分析学学两部分。两部分。n密码编码学密码编码学:研究如何编码,采用什么样的密码体制保证:研究如何编码,采用什么样的密码体制保证 信息被安全加密。信息被安全加密。n密码分析学密码分析学:破译密文,在未知密钥的情况下推演出铭文:破译密文,在未知密钥的情况下推演出铭文 和密钥的技术。和密钥的技术。2.1.2 密码体制密码体制未经过加密的原始消息称为未经过加密的原始消息称为
3、明文明文m(Plain Text)。伪装消息以隐藏它的内容的过程称为伪装消息以隐藏它的内容的过程称为加密加密E(Encrypt)加密后的消息,即经过伪装后的明文称为加密后的消息,即经过伪装后的明文称为密文密文c(Cipher Text)把密文转变为明文的过程称为把密文转变为明文的过程称为解密解密D(Decrypt)。确切地描述了加密变换和解密变换的具体规则确切地描述了加密变换和解密变换的具体规则加密算法加密算法对明文进行加密时所使对明文进行加密时所使用的规则的描述用的规则的描述E(m)E(m)解密算法解密算法对密文进行还原时所使对密文进行还原时所使用的规则的描述用的规则的描述D(c)D(c)密
4、钥密钥:加密和解密算法的操作在称为密钥(:加密和解密算法的操作在称为密钥(k k)的元素)的元素控制下进行。控制下进行。加密通信模型加密通信模型加密的过程:加密的过程:c=Ec=Ekeke(m)(m)解密的过程:解密的过程:m=Dm=Dkdkd(c)(c)完整密码体制要包括如下五个要素完整密码体制要包括如下五个要素:nM M是是可能明文的有限集可能明文的有限集称为明文空间;称为明文空间;nC C是是可能密文的有限集可能密文的有限集称为密文空间;称为密文空间;nK K是是一切可能密钥构成的有限集一切可能密钥构成的有限集称为密钥空间;称为密钥空间;nE E为加密算法,对于为加密算法,对于任一密钥任
5、一密钥,都能够,都能够有效地计算有效地计算;nD D为解密算法,对于为解密算法,对于任一密钥任一密钥,都能够,都能够有效地计算有效地计算。密码体系必须满足如下特性:密码体系必须满足如下特性:n加密算法加密算法(E(Ek k:M-C)M-C)和解密算法和解密算法(D(Dk k:C-M)C-M)满足满足:D Dk k(E(Ek k(x)=x(x)=x,这里这里x xM M;n破译者不能在破译者不能在有效的时间有效的时间内破解出密钥内破解出密钥k k或明文或明文x x。密码学的柯克霍夫准则密码学的柯克霍夫准则“一切秘密寓于密钥之中一切秘密寓于密钥之中”1883年荷兰密码学家年荷兰密码学家A.Kerc
6、hoff(18351903)就就给出了密码学的一个基本原则给出了密码学的一个基本原则:密码的安全必须完全寓于密码的安全必须完全寓于密钥之中。尽管密码学家们大都同意这一看法密钥之中。尽管密码学家们大都同意这一看法,但直到制但直到制定定DES时才首次认真地遵循这一原则。时才首次认真地遵循这一原则。2.1.3 密码的分类密码的分类密码学发展历史密码学发展历史p 古代加密方法(古代加密方法(手工手工阶段)阶段)公元前公元前440440年古希腊战争的隐写术年古希腊战争的隐写术斯巴达人公元前斯巴达人公元前400400年应用的年应用的ScytaleScytale加密工具加密工具古代藏头诗古代藏头诗p 古典密
7、码(古典密码(机械机械阶段)阶段)古罗马古罗马CaesarCaesar密码密码单表加密单表加密EnigmaEnigma转轮密码转轮密码p 近代密码(近代密码(计算机计算机阶段)阶段)19491949年年Claude Shanon Claude Shanon“秘密体制的通信理论秘密体制的通信理论”19761976年年W.DiffieW.Diffie和和M.HellmanM.Hellman提出公钥密码思想提出公钥密码思想19781978年年RSARSA公钥密码体制出现公钥密码体制出现依据密码体制的特点以及出现的时间分类:依据密码体制的特点以及出现的时间分类:古典替换密码古典替换密码:一般是文字替换
8、,使用手工或机械变换:一般是文字替换,使用手工或机械变换的方式实现。的方式实现。对称密钥密码对称密钥密码:加密密钥:加密密钥解密密钥解密密钥公开密钥密码公开密钥密码:加密密钥:加密密钥解密密钥解密密钥依据处理数据的类型依据处理数据的类型分组密码分组密码:将明文分成若干固定长度的组,用同一加密:将明文分成若干固定长度的组,用同一加密算法对每一个明文分组进行加密,输出等长的密文组。算法对每一个明文分组进行加密,输出等长的密文组。序列密码序列密码:流密码,加密时一次处理一个元素。:流密码,加密时一次处理一个元素。依据密码分析形式依据密码分析形式密码分析(密码攻击)密码分析(密码攻击)n攻击者在攻击者
9、在不知道密钥不知道密钥的情况下,对密文进行分析,试图获的情况下,对密文进行分析,试图获得机密信息(明文或密钥)。得机密信息(明文或密钥)。n密码编码与密码分析是共生的、密码编码与密码分析是共生的、互逆互逆的,两者解决问题的的,两者解决问题的途径有很多差别。途径有很多差别。密码编码设计是利用密码编码设计是利用数学数学基础构造密码。基础构造密码。密码分析出了依靠数学、工程背景、语言学等知识外,还靠经验、密码分析出了依靠数学、工程背景、语言学等知识外,还靠经验、测试、眼力、运气、直觉判断能力等。测试、眼力、运气、直觉判断能力等。n根据密码分析者对明文、密文等数据资源所掌握的程度,根据密码分析者对明文
10、、密文等数据资源所掌握的程度,将密码分析攻击划分为不同的形式:将密码分析攻击划分为不同的形式:密码攻击分类密码攻击分类攻击类型攻击类型攻击者拥有的资源攻击者拥有的资源唯密文攻击唯密文攻击n加密算法加密算法n截获的部分密文截获的部分密文已知明文攻击已知明文攻击n加密算法加密算法n截获的部分密文和相应的明文截获的部分密文和相应的明文选择明文攻击选择明文攻击n加密算法加密算法n加密黑盒子,可加密任意明文得到相应加密黑盒子,可加密任意明文得到相应的密文的密文选择密文攻击选择密文攻击n加密算法加密算法n解密黑盒子,可解密任意密文得到相应解密黑盒子,可解密任意密文得到相应的明文的明文被动攻击和主动攻击被动
11、攻击和主动攻击n被动攻击被动攻击:攻击者可以用搭线窃听等方式直接获得未经加:攻击者可以用搭线窃听等方式直接获得未经加密的明文或者加密后的密文,并分析得知明文。密的明文或者加密后的密文,并分析得知明文。(不破坏(不破坏原始信息)原始信息)n主动攻击主动攻击:攻击者采用删除、更改、增添、重放、伪造等:攻击者采用删除、更改、增添、重放、伪造等手段主动向系统注入假消息。手段主动向系统注入假消息。密码攻击的方法密码攻击的方法n穷举分析法穷举分析法对截获的密文依次用各种密钥试译,直到得到有意义对截获的密文依次用各种密钥试译,直到得到有意义的明文;的明文;密钥不变情况下,对所有可能的明文加密直到得到与密钥不
12、变情况下,对所有可能的明文加密直到得到与截获的密文一致为止(完全试凑法)。截获的密文一致为止(完全试凑法)。理论上会成功,但实际中不可行。理论上会成功,但实际中不可行。n数学分析法数学分析法 利用一个或几个已知量(密文或明文利用一个或几个已知量(密文或明文-密文对)用数学密文对)用数学关系式求解未知量(密钥)。关系式求解未知量(密钥)。n统计分析法统计分析法 对截获的密文进行统计分析,找出规律,并与明文的对截获的密文进行统计分析,找出规律,并与明文的统计规律进行对照比较,从中提取对应关系。统计规律进行对照比较,从中提取对应关系。2.2 古典替换密码古典替换密码2.2.1 简单代替密码简单代替密
13、码n指将明文字母表指将明文字母表M M中的每个字母用密文字母表中的每个字母用密文字母表C C中的相中的相应字母来代替应字母来代替n例如:移位密码、乘数密码、仿射密码等。例如:移位密码、乘数密码、仿射密码等。移位密码移位密码n具体算法是将字母表的字母右移具体算法是将字母表的字母右移k k个位置,并对字母个位置,并对字母表长度作模运算。表长度作模运算。每一个字母具有两个属性,本身代表的含义,可计算的位置每一个字母具有两个属性,本身代表的含义,可计算的位置序列值:序列值:加密函数:加密函数:E Ek k(m)=(m+k)mod q(m)=(m+k)mod q;解密函数:解密函数:D Dk k(c)=
14、(c(c)=(ck)mod qk)mod q;凯撒凯撒Caesar密码密码n凯撒密码体系的数学表示:凯撒密码体系的数学表示:M=C=M=C=有序字母表有序字母表,q=26q=26,k=3k=3。其中其中q q 为有序字母表的元素个数,本例采用英文字母表,为有序字母表的元素个数,本例采用英文字母表,q=26q=26。加密函数:加密函数:E Ek k(m)=(m+3)mod 26(m)=(m+3)mod 26;解密函数:解密函数:D Dk k(c)=(c(c)=(c3)mod 263)mod 26;使用凯撒密码对明文字符串逐位加密结果如下:使用凯撒密码对明文字符串逐位加密结果如下:n明文信息明文信
15、息 M=meet me after the toga partyn密文信息密文信息 C=phhw ph diwho wkh wrjd sduwb 字母字母abcdef.xyz位置序列值位置序列值012345.232425思考思考:(c-3)有没有负数的有没有负数的可能?如果是负数该怎么可能?如果是负数该怎么计算?计算?(加法逆元加法逆元)加法逆元加法逆元n概念:概念:对于对于x x,如果,如果(x+y)mod z=0,(x+y)mod z=0,则则y y为为x x关于模关于模z z的的加法逆元。加法逆元。n解密函数:解密函数:D Dk k(c)=(c(c)=(c3)mod 263)mod 26
16、;若若c-30,c-30,假设假设c-3c-3的值为的值为-x-x,那么,那么(-x)(-x)即为即为x x关于模关于模2626的加法逆的加法逆元。根据加法逆元的特点求元。根据加法逆元的特点求:(x+y)mod26=0 y=26-x(x+y)mod26=0 y=26-x例如:例如:假设假设c=1c=1(即密文字符为(即密文字符为b b),),解密后明文解密后明文m=m=(-2)mod26-2)mod26=26-2=24(=26-2=24(即明文字符为即明文字符为y y)。)。乘数密码乘数密码将明文字母串将明文字母串逐位乘以密钥逐位乘以密钥k并进行模运算。并进行模运算。数学表达式数学表达式:Ek
17、(m)=km mod q,gcd(k,q)=1(表示(表示k与与q的最大公因子为的最大公因子为1,二者互素),二者互素)算法描述:算法描述:nM=C=字母表字母表,q=26;nK=k整数集整数集|0k26,gcd(k,26)=1;nEk(m)=km mod q。nDk(c)=k-1c mod q,其中,其中k-1为为k在模在模q下的乘法逆元下的乘法逆元。密钥取值与乘法逆元密钥取值与乘法逆元n乘数密码的乘数密码的密钥密钥k与与26互素互素时,加密变换才是一一映射的。时,加密变换才是一一映射的。k k的选择有的选择有1111种:种:3 3、5 5、7 7、9 9、1111、1515、1717、19
18、19、2121、2323、2525。K K取取1 1时没有意义。时没有意义。nk-1为为k在模在模q下的乘法逆元。下的乘法逆元。其定义为其定义为k k-1-1k mod q=1k mod q=1可采用扩展的欧几里德算法。欧几里德算法又称辗转相可采用扩展的欧几里德算法。欧几里德算法又称辗转相除法,用于计算两个整数除法,用于计算两个整数a a和和b b的最大公约数。的最大公约数。求解乘法逆元的方法求解乘法逆元的方法扩展的欧几里得算法扩展的欧几里得算法:求求d关于模关于模f的乘法逆元的乘法逆元d-1,即,即 dd-1 mod f=1(X1,X2,X3)=(1,0,f);(Y1,Y2,Y3)=(0,1
19、,d)if(Y3=0)then return d-1=null /无逆元无逆元 if(Y3=1)then return d-1=Y2 /Y2为逆元为逆元 Q=X3 div Y3/整除整除(T1,T2,T3)=(X1-QY1,X2-QY2,X3-QY3)(X1,X2,X3)=(Y1,Y2,Y3)(Y1,Y2,Y3)=(T1,T2,T3)Goto 例如:例如:k=7,求解求解7-1(7关于模关于模26的乘法逆元)的乘法逆元)循环次数循环次数QX1X2X3Y1Y2Y3初值初值无无1026017130171-35211-35-14232-1423-111 -11-11即为求得的结果,是即为求得的结果,
20、是1111关于模关于模2626的加法逆元,即的加法逆元,即1515。验证:验证:加密算法:加密算法:E Ek k(m)=k(m)=km mod qm mod q 解密算法:解密算法:D Dk k(c)=k(c)=k-1-1c mod qc mod q若密钥若密钥k=7k=7,m=3(m=3(明文字符为明文字符为d d),则加密后,则加密后c=3c=37mod26=21(7mod26=21(v v)解密时:已知解密时:已知c=21c=21,求解,求解m=7m=7-1-121mod26=1521mod26=1521mod26=321mod26=3仿射密码仿射密码可以看作是可以看作是移位密码和乘数密
21、码的结合移位密码和乘数密码的结合。n密码体制描述如下:密码体制描述如下:M=C=Z/(26);q=26;K=k1,k2Z|0 k1,k226,gcd(k1,26)=1;Ek(m)=(k1m+k2)mod q;Dk(c)=k1-1(c-k2)mod q,其中,其中k1-1为为k1在模在模q下的乘法下的乘法逆元。逆元。nK1=1时,相当于移位密码;时,相当于移位密码;nk2=0时,相当于乘数密码。时,相当于乘数密码。n当当K1、k2同时为同时为(1,0)无效。无效。放射密码示例放射密码示例1设设k(5,3),注意到),注意到5-1 mod 26=21,加密函数:加密函数:nEk(x)=5x+3(m
22、od 26),解密函数:解密函数:nDk(y)=21(y-3)mod 26=21y 11(mod 26)。加密明文加密明文“yes”的加密与解密过程如下:的加密与解密过程如下:放射密码示例放射密码示例2模运算的性质模运算的性质(a+b)mod n=(a mod n)+(b mod n)mod n(a-b)mod n=(a mod n)-(b mod n)mod n基于统计的密码分析基于统计的密码分析n单表代替密码的加密是从明文字母到密文字母的单表代替密码的加密是从明文字母到密文字母的一一映射一一映射n攻击者统计密文中字母的攻击者统计密文中字母的使用频度使用频度,比较正常英文字母的,比较正常英文
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第2章 密码学基础2.1-2.3 密码学 基础 2.1 2.3
限制150内