您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 企业文化 > 应用密码学期末考试复习大纲
应用密码学复习大纲第一章古典密码1.1密码学的五元组(明文,密文,密钥,加密算法,解密算法)(P15)1.2密码体制(P21)1.2.1什么是密码体制?完成加密和解密的算法。通常,数据的加密和解密过程是通过密码体制(ciphersystem)+密钥(keyword)来控制的。密码体制必须易于使用,特别是应当可以在微型计算机使用。密码体制的安全性依赖于密钥的安全性,现代密码学不追求加密算法的保密性,而是追求加密算法的完备,即:使攻击者在不知道密钥的情况下,没有办法从算法找到突破口。1.2.2评价密码体制安全性的途径:计算安全性可证明安全性无条件安全性(p18)1.3代替密码体制:(单表代替密码多表代替密码)p31就是明文中的每一个字符被替换成密文中的另一个字符。接收者对密文做反响替换就可以恢复出明文。(在这里具体的代替方案称为密钥)1.3.1单表代替密码P31:明文的相同字符用相应的一个密文字符代替。(移位密码,乘数密码,仿射密码,多项式密码,密钥短语密码)单表代替密码的特点:▲密钥空间K很大,|K|=26!=4×1026,破译者穷举搜索计算不可行,1微秒试一个密钥,遍历全部密钥需要1013年。▲移位密码体制是替换密码体制的一个特例,它仅含26个置换做为密钥空间。密钥π不便记忆。▲针对一般替换密码密钥π不便记忆的问题,又衍生出了各种形式单表替代密码。单表代替密码的弱点:P32▲密钥量很小,不能抵抗穷尽搜索攻击▲没有将明文字母出现的概率掩藏起来,很容易受到频率分析的攻击▲不具备雪崩效应▲加解密数学表达式简单1.3.2多表代替密码P34:是以一系列(两个以上)代换表依次对明文消息的字母进行代换的方法。(维吉尼亚Vigenere密码,Hill密码,Playfair密码)多表代替密码的特点:使用了两个或两个以上的替代表。Vegenere密码算法P38(计算类)15分第二章对称密码体制2.1对称密码体制(分组密码,序列密码)的概念对称密钥密码体制,对于大多数算法,解密算法是加密算法的逆运算,加密密钥和解密密钥相同,同属一类的加密体制。拥有加密能力就意味着拥有解密能力,反之亦然。对称密码体制保密强度高,但开放性差,它要求发送者和接收者在安全通信之前,需要有可靠的密钥信道传递密钥,而双方用户通信所用的密钥也必须妥善保管。2.2分组密码P632.2.1分组密码的设计原理:分组密码是将明文消息编码表示的数字(简称明文数字)序列,划分成长度为n的组(可看成长度为n的矢量),每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列。两种基本的设计方法:扩散(Diffusion):明文的统计结构被扩散消失到密文的长程统计特性,使得明文和密文之间的统计关系尽量复杂;混乱(confusion):使得密文的统计特性与密钥的取值之间的关系尽量复杂。2.2.2分组密码的五种操作模式:P70电子密码本ECB密码分组连接CBC计数器CRT密码反馈CFB输出反馈OFB2.2.3DES算法1)用伪代码给出加密/解密算法2)DES解密为什么还可以还原到明文2.2.4字节的加法和乘法p892.3序列密码(即密码流,按位或字节处理)P2181)基本加解密算法(基于LFSR的序列密码,基于RC4的序列密码)P223-2262)设计序列密码最主要的工作(见上---------密钥流的设计)3)序列密码与分组密码的对比P221第三章非对称密码体制3.1公钥密码体制的基本概念3.2为什么需要非对称密码体制P108(非对称密码体制的提出)3.3非对称密码体制的基本应用▲加密/解密▲数字签名▲会话密钥交换3.4单向陷门函数P1103.5三个困难问题(RSA---P114ElGamal---P137ECC--120)大整数------RAS算法离散对数---ElGamal密码体制(加/解密算法特点)椭圆曲线密码体制---ECCP120第四章HASH函数4.1HASH函数的概念P147HASH函数也叫哈希函数,散列函数。它是一种单向密码体制,即它是一个从明文到密文的不可映射,只有加密过程不能解密。同时,HASH函数可以任意长度的输入经过变换以后得到固定长度的输出。HASH的这种单向特征和输出数据的长度固定的特征使得它可以生成消息或其它数据块的“数字指纹”(也称消息摘要,或散列值),因此在数字完整性认证,数字签名等领域有广泛应用。几种常用的HASH算法:MD5SHA-1RIPEMD-160HMACHASH的逻辑关系:(伪码写HASH函数)P148H0=IVHi=f(Hi-1,Mi)(i=1,2,…t)H(m)=g(Ht)4.2HASH函数的3种应用:P150▲数字签名▲生成程序或文档的“数字指纹”▲用于安全存储口令4.3SHA-1散列算法用伪代码给出P161SHA-1算法的伪代码:(Initializevariables:)a=h0=0x67452301b=h1=0xEFCDAB89c=h2=0x98BADCFEd=h3=0x10325476e=h4=0xC3D2E1F0(Pre-processing:)paddedmessage=(message)append1whilelength(paddedmessage)mod512448:paddedmessage=paddedmessageappend0paddedmessage=paddedmessageappend(length(message)in64-bitformat)(Processthemessageinsuccessive512-bitchunks:)while512-bitchunk(s)remain(s):breakthecurrentchunkintosixteen32-bitwordsw(i),0=i=15(Extendthesixteen32-bitwordsintoeighty32-bitwords:)forifrom16to79:w(i)=(w(i-3)xorw(i-8)xorw(i-14)xorw(i-16))leftrotate1(Mainloop:)forifrom0to79:temp=(aleftrotate5)+f(b,c,d)+e+k+w(i)(note:alladditionismod2^32)where:(0=i=19):f(b,c,d)=(bandc)or((notb)andd),k=0x5A827999(20=i=39):f(b,c,d)=(bxorcxord),k=0x6ED9EBA1(40=i=59):f(b,c,d)=(bandc)or(bandd)or(candd),k=0x8F1BBCDC(60=i=79):f(b,c,d)=(bxorcxord),k=0xCA62C1D6e=dd=cc=bleftrotate30b=aa=temph0=h0+ah1=h1+bh2=h2+ch3=h3+dh4=h4+edigest=hash=h0appendh1appendh2appendh3appendh4注意:FIPSPUB180-1展示的构想,用以下的公式替代可以增进效能:(0=i=19):f(b,c,d)=(dxor(band(cxord)))(40=i=59):f(b,c,d)=(bandc)or(dand(borc)))
本文标题:应用密码学期末考试复习大纲
链接地址:https://www.777doc.com/doc-6210272 .html