




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第二章信息保密技术§2.1古典密码§2.2分组加密技术§2.3公约加密技术§2.4流密码技术§2.5电子信封技术§2.6信息隐藏技术密码学密码学从从应用角角度可分分为密码码编码、、密码分分析两个个分支,,分别研研究密码码的编制制和破译译问题。。密码学::密码编码码学密码分析析学密码系统统应用参参考模型型在对称密密码系统统中,密密钥的管管理扮演演着非常常重要的的角色。。发送者接收者攻击者安全信道道不安全信信道消息M消息M密钥K密钥K密文C消息M消息M消息M发送者消息M发送者消息M密钥K发送者消息M密钥K发送者消息M安全信道道密钥K发送者消息M密文C安全信道道密钥K发送者消息M不安全信信道密文C安全信道道密钥K发送者消息M不安全信信道密文C安全信道道密钥K发送者消息M密文C安全信道道密钥K发送者消息M不安全信信道密文C安全信道道密钥K发送者消息M攻击者不安全信信道密文C安全信道道密钥K发送者消息M攻击者不安全信信道密文C安全信道道密钥K发送者消息M接收者攻击者不安全信信道密文C安全信道道密钥K发送者消息M接收者攻击者不安全信信道密文C安全信道道密钥K发送者消息M密钥K接收者攻击者不安全信信道密文C安全信道道密钥K发送者消息M消息M密钥K接收者攻击者不安全信道密文C安全信道密钥K发送者消息M§2.1古典典密码公元6年年前的古古希腊人人使用的的是一根根叫scytale的的棍子。。送信人人先绕棍棍子卷一一张纸条条,然后后把要写写的信息息纵写在在上面,,接着打打开纸送送给送信信人。如如果不知知道棍子子的宽度度(这里里作为密密钥),,不可能能解密里里面的内内容。后后来,罗罗马的军军队用凯凯撒密码码进行通通信。古典密码码是密码码学的渊渊源,可可用手工工和机械械操作来来实现加加解密,,现在已已很少采采用了。。§2.1古典典密码1、代换换密码通常,明明文和密密文由统统一字母母表构成成。加密时,,通常将将明文消消息划分分成长为为L的消消息单元元,称为为明文组组。L=1单单字母代代换(流流密码))将明文空空间的元元素(如如字母、、二元数数据等))逐个进进行加密密,这这种对明明文消息息加密的的方式称称为流密密码。L>1多多码代换换(分组组密码))将明文分分成固定定长度的的组,如如64bit一一组,用用同一密密钥和算法对对每一组组加密,,输出也也是固定定长度的的密文。。根据加密密过程中中使用代换表数数目的多少单表代换换:对所所有明文文字母都都用一种种固定代代换进行加密密多表代换换:用一一个以上上的代换换表进行行加密多字母代代换单表代换换密码(1)移移位密码码最著名的的移位密密码是凯凯撒密码码。例:取k=3,,明文字字母和密密文字母母的对应应关系为为明文:abcdefghijklmnopqrstuvwxyz密文:DEFGHIJKLMNOPQRSTUVWXYZABC明文m==“casercipherisashiftsubstitution”所所对应的的密文为为c=““FDVHUFLSHULVDVKLIWVXEVWLWXWLRO”单表代换换密码补充:ROT13密码码建立在UNIX系统上上的简单单的加密密程序在这种密密码中,,A被N代替,,B被O代替,,每一个个字母是是环移13所对对应的字字母。用ROT13加加密文件件两遍便便恢复出出原始文文件:P=ROT13(ROT13(P))ROT13并非非为保密密设计,,它经常常用在英英特网电电子邮件件中隐藏藏特定的的内容,,以避免免泄露一一个难题题的解答答等。单表代换换密码wfe……azw为密钥钥排列后有有26**25**24**…*1种选择择,所以密钥钥有26!种,,太复杂杂,不容容易记忆忆。因此实际际中密钥钥句子常常被使用用,密钥钥句子中中的字母母被依次次填入密密文字母母表(重重复的字字母只用用一次)),没用用的字母母按自然然顺序排排列举例在后后一页abc……xyzwfe……azw有26种种选择有25种种选择有24种种选择(2)替换密码码Π=abc……xyzwfe……azwΠ=有26种种选择abc……xyzwfe……azwΠ=有25种种选择有26种种选择abc……xyzwfe……azwΠ=有24种选择有25种选择有26种选择abc…xyzwfe…azwΠ=单表代换换密码替换密码码P24例:密钥钥句子为为studentteacherabcdefghijklmnopqrstuvwxyzstudenachrklmnopqrstuvwxyz密密钥明文Iloveyou密文hloveyou单表代换换密码(3)仿仿射密码码y=ax+b((mod26)a,b∈Z26当a=1时,仿仿射密码码移位密码码如果解密密是可能能的,必必须要求求仿射函函数是双双射的::对任何何y∈Z26,方程ax+b≡y((mod26)有唯唯一解。。由数论可可知,当且仅当当gcd(a,,26))=1,,对每个个y有唯唯一解。。对于a∈∈Z26,gcd(a,26)=1的a只只有12种选择择,对于于参数b没有要要求,所所以仿射射密码有有12**26种种可能的的密钥。。因为:。。。。多表代换换密码多表代换换:以一一系列((两个以以上)代代换表依依次对明文消消息的字字母进行行代换的的加密方方法。一次一密密:对每每个明文文字母都都采用不不同的代代换表或密钥进进行加密密,称为为一次一一密密码码(理论上上唯一不不可破的的密码))周期多表表代换::代换表表个数有有限,重重复使用用。实际应用用中采用用,例如如维吉尼尼亚密码码维吉尼亚亚密码((Vigenere密密码)利用Vigenere表格进进行加密密,加密密方法如如下:给定一个个单钥字字母x和和一个明明文字母母y,密密文字母母则在表表格中x行y列列的交叉叉点;例如,明明文为::wearediscoveredsaveyourself,若若取单密密钥为v,则加加密时从从密钥v开始,,对应每每个明文文字母顺顺序向下下取密钥钥,结果果如下::明文:wearediscoveredsaveyourself密钥:vxyzabcdefghijklmnopqrstuv密文:RAAPDDJUFSAKYMMCLHRMEKIKXFA也可选取取一个关关键词重重复成与与明文同同样长度度作为密密钥进行行加密。。若取关关键词为为deceptive,加密密结果如如下:明文:wearediscoveredsaveyourself密钥:deceptivedeceptivedeceptive密文:ZICVTWQNGRZGVTWAVZHCQYGLMGJVigenere密码码的强度度在于对对每个明明文字母母有多个个密文字字母对应应,因此此该字母母的频率率信息是是模糊的的。Vigenere密码码表格ABCDEFGHIJKLMNOPQRSTUVWXYZBCDEFGHIJKLMNOPQRSTUVWXYZACDEFGHIJKLMNOPQRSTUVWXYZABDEFGHIJKLMNOPQRSTUVWXYZABCEFGHIJKLMNOPQRSTUVWXYZABCDFGHIJKLMNOPQRSTUVWXYZABCDEGHIJKLMNOPQRSTUVWXYZABCDEFHIJKLMNOPQRSTUVWXYZABCDEFGIJKLMNOPQRSTUVWXYZABCDEFGHJKLMNOPQRSTUVWXYZABCDEFGHIKLMNOPQRSTUVWXYZABCDEFGHIJLMNOPQRSTUVWXYZABCDEFGHIJKMNOPQRSTUVWXYZABCDEFGHIJKLNOPQRSTUVWXYZABCDEFGHIJKLMOPQRSTUVWXYZABCDEFGHIJKLMNPQRSTUVWXYZABCDEFGHIJKLMNOQRSTUVWXYZABCDEFGHIJKLMNOPRSTUVWXYZABCDEFGHIJKLMNOPQSTUVWXYZABCDEFGHIJKLMNOPQRTUVWXYZABCDEFGHIJKLMNOPQRSUVWXYZABCDEFGHIJKLMNOPQRSTVWXYZABCDEFGHIJKLMNOPQRSTUWXYZABCDEFGHIJKLMNOPQRSTUVXYZABCDEFGHIJKLMNOPQRSTUVWYZABCDEFGHIJKLMNOPQRSTUVWXZABCDEFGHIJKLMNOPQRSTUVWXY设密钥为为K,用用多字母母代换((L==2)对对“love”进行行加密。。Xzda每次对L>1个个字母进进行代换换。容易隐蔽蔽和均匀匀化字母母的自然然频率,,从而有有利于抗抗统计分分析明文x==(x1,x2),密文文y=((y1,y2)Y1=11x1+3x2Y2=8x1+7x211837k=简记为y=xK,K为密钥线性代数数:可用用K-1来解密,,x=yk-1118371216=24X26Z7182311=11837-111837225=4d1a11837X1x2=y1y2练习设密钥为为,,用多多字母代代换((L=2)对“love””进行加加密11837k=设密钥为为,,用多多字母代代换((L=2)对“love””进行加加密。xzwcLo1216xz118371216=2426ve225wc11837225=233多字母代代换密码码当m=1时,退退化成单单字母仿仿射代换换函数y=ax当m=2时,如如前例当m=3时,例例如Hill密密码希希尔尔密码当m>3时,计计算K-1没有有效效的方法法,所以大大大限制了了多字母母代换密密码的广泛应应用。Hill密码Hill密码Hill密码也也是一种种多字母母替代密密码,它它由数学学家LesterHill于1929年年研制成成功。加加密方法法用向量量或矩阵阵表示为为C1C2C3K11K12K13K21K22K23K31K32K33P1P2P3=C1C2C3=K11K12K13K21K22K23K31K32K33C1C2C3=P1P2P3K11K12K13K21K22K23K31K32K33C1C2C3=或C==KP其其中,,C和P是长度度为3的的列向量量,分别别表示密密文和明明文,K是3**3矩阵阵,表示示加密密密钥,加加密操作作要执行行模26运算。。11837X1x2=y1y2例如,如如果使用用的加密密密钥是是K=171752118212219欲对明文文paymoremoney进进行加密密,则现现将明文文按三个个字母一一组分组组(不足足三个时时补字母母x),,然后每每组字母母求密文文。该明文的的前三个个字母表表示为pay==(15024),计算密密文的过过程如下下(15024)K=(375819486))mod26=((111318)==LNS以此类推推,可得得密文为为。?解密时使使用逆矩矩阵K-1=对密文((111318))T做运算K-1(111318))Tmod26==(431494570)T=(15024))T=payHill密码的的强度在在于完全全隐藏了了单字母母的频率率。LNSHDLEWMTRW§2.1古典典密码2、置换换密码((换位密密码)不改变明明文字母母,但通通过重排排而更改改它们的的位置。。例如:矩矩阵变换换密码、、纵行换换位密码码矩阵变换换加密::将明文中中的字母母按给定定顺序安安排在1个矩阵阵中,然然后用另另一种顺顺序选中中矩阵的的字母来来产生密密文,一一般为列列变换次次序。如如原列次次序为1234,先列列次序为为2413矩阵变换换加密给定一个个置换::f==,,根据据给定的的次序,,按526413的列列序重新新排列,,得到所以密文文是oerwntcueksiyrt..解密过程程正好相相反,按按序排列列密文后后,通过过列置换换,再按按行读取取数据即即可。123456526413如将明文文networksecurity按行行排列在在3*6矩阵中中,如下下所示::123456networksecurity526413oerwntcueksiyrt纵行换位位密码明文以固固定的宽宽度水平平地写在在一张图图表纸上上,密文文按垂直直方向读读出。解密就是是将密文文按相同同的宽度度垂直地地写在图图表纸上上,然后后水平地地读出明明文。Plaintext::COMPUTERGRAPHICSMAYBESLOWBUTATLEASTITSEXPENSIVECOMPUTERGR((10个为一一组)APHICSMAYBESLOWBUTATLEASTITSEXPENSIVECiphertext:CAELPOPSEEMHLANPIOSSUCWTITSBIVEMUTERATSGYAERBTX换位密码码对存储储的要求求很大,,有时还还要求特特定的长长度,因因而比较较麻烦,,因此代替替密码((代换密密码)较较为常用用。破译Kerckhoff假假设:攻攻击方知知道所用用的密码码系统目标:设设计一个个在Kerckhoff假设设下达到到的安全全系统移位密码码极易破破解,仅仅统计出出最高频频度字母母再与明明文字母母表对应应决定出出位移量量,就差差不多得得到正确确解了。。安全密码码系统的的一个必要条件件是密钥的的空间必必须足够够大,使使得穷举举密钥搜搜索破译译是不可可能的。。(非充充分条件件)§2.2分组组加密技技术§2.2.1基基本概念念分组加密密技术属属于对称称密码体体制的范范畴;分组密码码的工作作方式是是将明文文分成固固定长度度的组,,如64bit为一组组,用同同一密钥钥和算法法对每一一组加密密,输出出也是固固定长度度的密文文。例如DES密码码算法的的输入为为64bit,,密钥长长度为56bit,密密文长度度为64bit。设计分组组密码算算法的核核心技术术是:在在相信复复杂函数数可以通通过简单单函数迭迭代若干干次得到到的原则则下,利利用简单单圈函数数等运算算,充分分利用非非线性运运算。以DES算法为为例,它它采用美美国国家家安全的的局设计计的8个个S-Box和和P-置置换,经经过16圈迭代代,最终终产生64bit密文文,每圈圈迭代使使用的48bit子密密钥是由由原始的的56bit产产生的。。§2.2分组组加密技技术§2.2.1标标准算法法的介绍绍DES算算法国际数据据加密算算法IDEAASE算算法§2.2分组组加密技技术§2.2.3分分组密码码的分析析方法完全可破破译密码破译译者可以以确定该该密码正正在使用用的密钥钥,则他他可以象象合法用用户一样样阅读所所有的消消息。(对于非非对称密密码,知知道私钥钥)部分可破破译密码破译译者仅能能从所窃窃取的密密文中恢恢复明文文,却发发现不了了密钥。。§2.2分组组加密技技术§2.2.3分分组密码码的分析析方法分组密码码的攻击击可分以以下几类类:唯密文攻攻击已知明文文攻击选择明文文攻击选择密文文攻击§2.3公钥钥加密技技术§2.3..1基基本概念念一个加密密系统的的加密密密钥和解解密密钥钥是不一一样的,,不能又又一个推推出另一一个。公公钥用于于加密((公开的的),私私钥用于于解密((保密的的)。B的公钥用户A密文C非对称密码算法信息MB的私钥用户B信息M密文C非对称密码算法公开信道用户A信息M用户A信息M用户A非对称密码算法信息M用户A非对称密码算法信息M用户AB的公钥非对称密码算法信息M用户AB的公钥非对称密码算法信息M用户A密文CB的公钥非对称密码算法信息M用户A密文CB的公钥非对称密码算法信息M用户A公开信道密文CB的公钥非对称密码算法信息M用户A公开信道密文CB的公钥非对称密码算法信息M用户A密文C公开信道密文CB的公钥非对称密码算法信息M用户A密文C公开信道密文CB的公钥非对称密码算法信息M用户A非对称密码算法密文C公开信道密文CB的公钥非对称密码算法信息M用户A解决了对对称密码码体制中中的密钥钥管理难难题,满满足了开开放系统统的要求求。§2.3公钥钥加密技技术公钥加密密技术的的核心::运用了了一种特特殊的数数学函数数-单向向陷门函函数。Y=f((x)x==f-1(y)单向陷门门函数::从一个方方向求值值是容易易的,但但其逆向向计算却却很困难难。§2.3公钥钥加密技技术定义1设f是一一个函数数,如果果对于任任意给定定的x,,计算y,使得得y=f(x))是容易易计算的的,但对对于任意意给定的的y,计计算x,,使得x=f-1(y)是是难解的的。即求求f的逆逆函数是是难解的的。称f是一个个单向函数数。定义2设f是一一个函数数,t是是与f有有关的一一个参数数。对于于任意给给定的x,计算算y,使使得y==f(x)是容容易计算算的。如如果当不不知道参参数t时时,求f的逆函函数是难难解的,,但当知知道参数数t时,,求f的的逆函数数是容易易的。称称f是一一个单向陷门门函数。参数t称为陷门。在公钥加加密算法法中,加加密变换换就是一一个单向向陷门函函数,知知道陷门门的人很很容易进进行解密密变换,,而不知知道陷门门的人则则无法有有效地进进行解密密变换§2.3公钥钥加密技技术数学难题题-不存在一一个计算算该问题题的有效效方法;;目前、以以后足够够时间内内,求逆逆函数在在计算上上不可行行时间长度度难以忍忍受。绝对安全全的密码码经常给给密钥管管理带来来非常大大的压力力。现在在主流的的编码思思想是寻寻找密钥钥管理简简单,且且破译者者利用现现有资源源无法在在预定时时间内破破译的密密码编码码方法,,这就是是计算上上安全的的密码。。根据单向向陷门函函数的思思想,学学者们提提出许多多公钥加加密的方方法,都都是基于于复杂数数学难题题的。根根据基于于的数学学难题,,至少有有以下三三类系统统目前被被认为是是安全和和有效的的:大整数因因子分解解系统((代表性性的有RSA))椭圆曲线线离散对对数系统统(ECC)离散对数数系统((代表性性的有DSA))§2.3公钥钥加密技技术§2.3.2RSA公钥钥密码算算法RSA的的安全性性建立在在两大数数论难题题上①大数分分解②素性检检测即:将两两个大数数相乘在在计算上上很容易易实现,,但将该该乘积分分解成两两个大素素数因子子的计算算量是相相当巨大大的,以以至于在在实际计计算中是是不能实实现的。。算法见教教材P45RSA公公钥密码码算法1、gcd函函数:求求最大公公因数例如gcd((7,17)==1gcd((16,,12))=4gcd((e,∮∮(n))==1表示示e和∮∮(n))互素,,即最大大公因数数为12、欧拉拉函数∮∮(n))∮(n))表示不不超过n且与n互素的的整数个个数;易证明当当n=pq,p和q为为不同的的素数时时,∮((pq))=(p-1))(q--1)例:求∮∮(15)小小于于15,,且与15互素素的整数数个数1,2,,4,7,8,,11,,13,,14共共有有8个∮(15)==8练习求求∮∮(35)提提示:35=5*7,,且5和和7是素素数RSA公公钥密码码算法例构造造一个RSA算算法如下下:(1)选选择两个个素数p==7q=17(2)计计算n==p*q=7**17==119(3)计计算∮(n))=((7-1)(17-1)=96(4)选择一个e,,它与∮(n)互互素5与96互素,,e=5e的选取取很容易易,所有有大于p和q的的质数都都可用(5)求出d,它小小于∮(n)),且(d*e)mod96=177*5=4**96++1d=77(6)公公钥Kp={{5,119}},私钥钥Ks=={77,119}RSA公公钥密码码算法公钥Kp={{5,119}},私钥钥Ks=={77,119}假设明文文m=19加密时,,195(mod119))=66得得到密密文C==66解密时6677(mod119))=19得得到到明文m=19若从公钥钥Kp=={5,,119}得到到私钥,,难点转转换为分解{5,119}中中的119为两两个素数数pq7*17求出素数数,则可可以得到到∮(119),,就可可以算出出e,进进而得到到d.公钥{e,p
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 出口合同范本格式
- Unit 7 Be Wise with Money Period 3 Grammar 教学设计 2024-2025学年译林版(2024)七年级英语上册
- 劳务发包合同范本
- 动物投放景区合同范本
- 农村菜田出租合同范本
- 出租养殖鸡场合同范本
- 加工定制窗帘合同范本
- 保洁商场合同范本
- 包地收款合同范本
- 劳务中介代理招聘合同范本
- 初中历史期中考试分析报告
- 企业反商业贿赂法律法规培训
- 2023合同香港劳工合同
- 玻璃体腔注射-操作流程和注意事项(特选参考)课件
- 材料化学课件
- 智能传感器芯片
- -《多轴数控加工及工艺》(第二版)教案
- 智能交通概论全套教学课件
- 生物医学工程伦理 课件全套 第1-10章 生物医学工程与伦理-医学技术选择与应用的伦理问题
- 烧结机安装使用说明书
- 新战略营销课件
评论
0/150
提交评论