信息加密与认证.ppt
《信息加密与认证.ppt》由会员分享,可在线阅读,更多相关《信息加密与认证.ppt(144页珍藏版)》请在三一办公上搜索。
1、1,第三章 信息加密与认证技术,2,本章内容,古典密码技术的分类和基本原理对称密码技术与DES、AES算法 公钥密码技术与RSA、ElGamal、ECC 信息认证的概念与作用及其基本原理 单向Hash函数与消息认证码的基本概念和原理 数字签名的原理和技术 身份认证的典型技术,3,学习目标,了解古典密码技术的分类和基本原理学习对称密码技术与DES、AES算法 掌握公钥密码技术与RSA、ElGamal、ECC 学习信息认证的概念与作用及其基本原理 了解单向Hash函数与消息认证码的基本概念和原理 掌握数字签名的原理和技术 学习身份认证的典型技术,4,3.1 密码学技术概述,密码系统的组成 密码系统
2、是用于对消息进行加密、解密的系统。可以用一个五元组来表示:1)明文:未加密的原始信息。2)密文:明文被加密后的结果。3)密钥:参与密码变换的参数。4)加密算法:明文加密时所采用的一组规则。5)解密算法:密文解密时所采用的一组规则。,5,3.1 密码学技术概述,密码系统的组成 传统密码体制模型如图所示:,6,3.1 密码学技术概述,密码学的分类 1.古典密码学和现代密码学 1)古典密码学 古典密码学又称为传统密码学,主要依靠人工和机械进行信息的加密、传输和破译。加密算法主要有替代加密、置换加密等。,7,3.1 密码学技术概述,密码学的分类 2)现代密码学 亦称为计算机密码学阶段,利用计算机进行自
3、动或半自动的加密、解密和传输,以二进制的数字化信息为研究对象,并使用现代思想进行信息的保密。根据密钥的使用方式又可分为对称密钥密码和非对称密钥密码。,8,3.1 密码学技术概述,密码学的分类 2.对称密钥密码和非对称密钥密码 1)对称密钥密码 又称为私密钥密码,加密和解密数据的密钥相同或者两者之间存在着某种明确的数学关系。主要算法有DES、IDEA、TDEA、MD5、RC4、AES等。,9,3.1 密码学技术概述,密码学的分类 2)非对称密钥密码 用于加密数据的密钥与用于解密数据的密钥不相同,而且从加密的密钥无法推导出解密的密钥。其中一个密钥是公开的,另一个是保密的,又可称为公开密钥密码体制。
4、主要算法有RSA、E1gamnl、Rabin、DH、椭圆曲线等。,10,3.1 密码学技术概述,密码学的分类 3.分组密码和序列密码 1)分组密码 密文仅与给定的密码算法和密钥有关,与被处理的明文数据段在整个明文(或密文)中所处的位置无关。分组密码以块为单位,在密钥的控制下进行一系列线性和非线性变换而得到密文。,11,3.1 密码学技术概述,密码学的分类 3.分组密码和序列密码 2)序列密码 密文与给定的密码算法、密钥、明文数据段在整个明文(或密文)所处的位置都有关。密钥通常采用比特流发生器随机产生二进制比特流得到,与明文结合产生密文,与密文相结合可以产生明文。,12,3.2 古典密码技术,代
5、替密码 1.单表代替密码 对明文中的所有字母都使用同一个映射。1)移位代替密码 如凯撒密码,其基本思想是通过把字母移动一定的位数来实现加密和解密。,13,3.2 古典密码技术,代替密码 2)乘法代替密码 已知:p=c=k=z26,k是满足0kn的正整数,要 求k 与n互素。加密算法:c=E(k,p)=(pk)(mod n)解密算法:p=D(k,c)=k-1c(mod n),14,3.2 古典密码技术,代替密码 3)仿射密码 乘法密码和加法密码相结合便构成仿射密码。仿射密码是一个线性变换。对于p=c=k=z26,且K=(a,b)z26 X z26,gcd(a,26)=1,对于任意的k=(k1,k
6、2)K,加密算法:c=E(k,p)=k1p+k2(mod 26)解密算法:p=D(k,c)=k1-1(c-k2)(mod 26),15,3.2 古典密码技术,代替密码 2、多表代替密码 采用多个密文字母表,使得密文中的每一个字母有多种可能的字母来代替。Vigenre密码、Playfair密码、滚动密钥密码、弗纳姆密码以及Hill密码都是这一类密码。,16,3.2 古典密码技术,代替密码 1)Vigenre密码 最著名的多表代换密码,用一个词组作为密钥,每一个密钥字母都对应一个代替表。密钥循环使用。已知明文p=p1p2.pn,m是一个固定的正整数,对于一个密钥k=k1k2.km,则加密算法如下:
7、C=E(p,k)=(p1+k1(mod26),p2+k2(mod26),.,pn+kn(mod26).),17,3.2 古典密码技术,代替密码 1)Vigenre密码 解密算法:P=D(c,k)=(c1-k1(mod26),c2-k2(mod26),.,cn-kn(mod26).),18,3.2 古典密码技术,代替密码 2)Playfair加密算法 将明文中的双字母组合作为一个单元进行处理,并将每一个单元转换成双字母的密文组合。Playfair密码基于一个55矩阵,该矩阵采用一个关键词作为密钥来构造。构造的方法为:按从左至右,从上至下的顺序依次首先填入关键词中非重复的字母,然而再将字母表中剩余
8、的字母按顺序填入矩阵。,19,3.2 古典密码技术,代替密码 3)滚动密钥密码 对于周期多表代替密码,保密性将随周期d的加大而增 加,当d的长度和明文一样长时就变成了滚动密钥密码。如果其中所采用的密钥不重复就是一次一密体制。一般密钥可取一本书或一篇报告作为密钥源,可由书名,章节号及标题来限定密钥的起始位置。,20,3.2 古典密码技术,代替密码 4)弗纳姆密码 将随机二元数字序列作为密钥,以 k=k1k2.ki.(kiF2)表示,明文字母编成二元向量后也可以表示为二元序m=m1m2.mi.(miF2),加密过程就是将k和m逐位异或,即:ci=miXOR ki,i=1,2,.译码时,用同样的密钥
9、对密文逐位异或,变可恢复明 文的二元数字序列,即:mi=ciXOR ki,i=1,2,.,21,3.2 古典密码技术,代替密码 5)Hill密码 Hill加密算法的基本思想是将m个明文字母通过线性变 换将它们转换为m个密文字母。解密只要做一次逆变换就可以了。密钥就是变换矩阵本身。加密过程为:C=KP mod 26 其中,C和P代表密文和明文向量,K是密钥矩阵。解密则为:P=K-1C,22,3.2 古典密码技术,代替密码 6)一次一密 一次一密乱码本是一个大的不重复的真随机密钥字母 集。发方用乱码本中的每一密钥字母准确地加密一个明 文字符。加密是明文字符和一次一密乱码本密钥字符的 模26加法。收
10、方有一个同样的乱码本,并依次使用乱码 本上的每个密钥去解密密文的每个字符。在进行过一次 加解密后,乱码本用过的部分将被销毁。新的消息用乱 码本新的密钥加密。,23,3.2 古典密码技术,置换密码 古典密码技术除了代替密码,还有一种称为置换密码。把明文中的字母重新排列,字母本身不变,但其位置变 了。单纯的置换密码因为有着与原文相同的字母频率而被识 破。多步置换密码相对来说安全的多。,24,3.3 对称密钥密码技术,基本概念 对称密钥加密又称专用密码加密,即发送和接收方必 须使用相同的密钥对明文进行加解密运算。算法主要包括DES、3DES、IDEA、FEAL、BLOWFISH等。对称加密的基本要求
11、:1、强大的加密算法。2、发送方和接收方必须保证密钥的安全。实现方式:流密码技术,分组密码技术,25,3.3 对称密钥密码技术,流密码技术 基本思想是利用密钥k产生一个密钥流k0k1k2.,并使用 如下规则对明文串p=p0p1p2.加密:c=c0c1c2.=Ek0(p0)Ek1(p1)Ek2(p2).。密钥流由密钥流发生器f产生:zi=f(k,i),i是加密器中记忆元件在时刻i的状态。根据i 是否依赖于输入的明文字符,流密码可进一步分 为同步和自同步两种。在同步流密码中,可将加密器分成密钥流产生器和加密变换器两个部分。,26,3.3 对称密钥密码技术,流密码技术 加密模型如图所示:,27,3.
12、3 对称密钥密码技术,流密码技术 1.A5/1 A5/1算法主要应用在GSM移动通信中用于保护数据。使用X、Y、Z三个线性移位寄存器LFSR。寄存器X包 括19比特,编号为(x0,x1,.,x18)。寄存器Y包括22比特,编号为(y0,y1,.,y21)。寄存器Z包括23比特,编号为(z0,z1,.,z22)。三个LFSR总共包括64比特。密钥K同样是64比特,用于初始化三个寄存器。用密钥 填充三个寄存器后,就完成了密码流生成前的准备。,28,3.3 对称密钥密码技术,流密码技术 1.A5/1 密钥流生成算法如图所示:,29,3.3 对称密钥密码技术,流密码技术 2.RC4 A5/1根据硬件实
13、现设计,每步仅产生一个密钥流比 特;RC4算法为软件实现优化,每步产生一个密钥字节。本质上来讲就是一个包含256字节的置换查表,在产生密钥流的每一个字节时,所查的表就进行一次修改,表始终都包含0,1,2,255的置换。,30,3.3 对称密钥密码技术,流密码技术 2.RC4 RC4算法都是基于字节的。算法的第一阶段是对于查 表使用的密钥进行初始化,再产生每个密钥流字节,在加密时与明文做XOR运算,解密时与密文做XOR运算。,31,3.3 对称密钥密码技术,分组密码技术 分组密码是对称密码的典型代表。即数据在密钥的作 用下,一组一组地被处理,明文和密文的长度通常是相等的,一次对一个明文分组(如D
14、ES为64位)进行加密,而且每次的加密密钥都相同。,32,3.3 对称密钥密码技术,分组密码技术 分组加密的一般结构如图所示:,33,3.3 对称密钥密码技术,分组密码技术 按特定长度(如64 bits)分组时,最后一组消息长度可能不足64bits。可以填充一些数字,通常用最后1字节作为填充指示符(PI)。,34,3.3 对称密钥密码技术,分组密码技术 1.DES DES 是一种分组乘积密码,包括16轮迭代。明密文分 组长度为64位,密钥总长为64位,有效长度56位,其 中第8、16、64 位共8位是奇偶校验位。DES 是一种对称运算,除子密钥使用顺序逆序外,加 密和解密算法相同。DES是一种
15、面向二进制的密码算法,能够加解密任何 形式的计算机数据。,35,3.3 对称密钥密码技术,分组密码技术 DES 的加密算法流程:1.初始置换IP:将输入的64位数据打乱IP(b1b2.b64)=b58b50.b7。再平均分成两部分L0,R0。2.16轮的轮变换:将64位输入密钥扩展为16个48位轮子密钥K。每轮变换公式为:3.逆初始置换IP-1:将L16,R16合并的64位数据置换 IP-1(b1b2.b64)=b40b8.b25。,36,3.3 对称密钥密码技术,分组密码技术 DES 的加密算法流程图:,37,3.3 对称密钥密码技术,分组密码技术 2.TDEA和IDEA 1)TDEA算法
16、TDEA算法又叫做三重DES算法,执行三次DES的加密,加密步骤如下:发送端用密钥Keyl进行DES加密。发送端用密钥Key2对上一结果进行DES解密。发送端用密钥Key3对上一结果进行DES加密。,38,3.3 对称密钥密码技术,分组密码技术 TDEA算法加/解密流程图:,39,3.3 对称密钥密码技术,分组密码技术 2)IDEA算法 IDEA加密算法是在DES算法的基础上发展而来的,类似于三重DES算法,其分组长度也是64位,但密钥长度是128位,增加了破译难度。IDEA使用的运算有异或、模216加法和模(216+1)乘法。,40,3.3 对称密钥密码技术,分组密码技术 IDEA算法加密过
17、程:8轮的重复运算。64位的明文分组在每一轮都是被分成4个子分组,每个16位子分组作为一个单元来处理。每一轮中有6个不同的子密钥参与运算。最后的输出变换有4个子密钥参与运算。IDEA的解密算法使用与加密算法同样的结构,子密钥 的生成方法不同。,41,3.3 对称密钥密码技术,分组密码技术 IDEA算法解密子密钥的生成方法:解密循环i的前4个子密钥从加密循环(10i)的前4个子密钥中导出;解密密钥第1、4个子密钥对应于1、4加密子密钥的乘法逆元;解密密钥第2、3个子密钥对应于2、3加密子密钥的加法逆元。对前8个循环来说,循环i的最后两个子密钥等于加密循环(9i)的最后两个子密钥。,42,3.3
18、对称密钥密码技术,分组密码技术 3.AES DES的设计主要针对硬件实现,而当今许多领域的问题 需要用软件方法来实现。AES加密方法在这种需求下应运而生。AES 算法是128位块密码,支持三种不同大小的密钥:128,192和256位。,43,3.3 对称密钥密码技术,分组密码技术 3.AES AES密码算法采用的是代替-置换网络结构,每一轮操作由4层组成:第1层(字节替换)为非线性层,用S盒对每一轮中的单个字节分别进行替换;第2层(行移位)和第3层(列混合)是线性混合层,对当前的状态按行移位,按列混合;第4层(密钥加层)用子密钥与当前状态进行字节上的异或。,44,3.3 对称密钥密码技术,分组
19、密码技术 AES算法结构图:,45,3.3 对称密钥密码技术,分组密码技术 AES算法每一层操作过程:1)字节替换(SubBytes)AES定义了一个S盒,将State中每个字节的高4位作为行值,低4位作为列值,取出S盒中对应行和列的元素作为输出。例如,十六进制数84。对应S盒的行是8列是4,S盒中该位置对应的值是5F。,46,3.3 对称密钥密码技术,分组密码技术 2)行位移变换(ShiftRows)State的第1行字节保持不变,第2行字节循环左移一 个字节,第3行字节循环左移两个字节,第4行循环 左移三个字节。,47,3.3 对称密钥密码技术,分组密码技术 3)列混合变换(MixColu
20、mns)列混合变换是一个替代操作,它只在AES的第0,1,(R-1)轮中使用,在第R轮中不使用该变换。在该变换中,乘法和加法都是定义在GF(28)上的。State的每 一 列被理解为GF(28)上的多项式,该多项式与一个常数多项式相乘并模M(x)=x4+1约化。,48,3.3 对称密钥密码技术,分组密码技术 4)密钥加变换(Add RoundKey)128位的State按位与 128位的密钥XOR。,49,3.3 对称密钥密码技术,分组密码技术 5)密钥扩展(Key Expansion)在加密和解密算法使用了一个由种子密钥字节数组生 成的密钥调度表。密钥扩展过程从一个原始密钥中生成多重密钥以代
21、替使用单个密钥。在AES密钥扩展算法 的输入值是4字密钥,输出是一个44字的一维线性数 组。这足以为初始轮密钥扩展过程阶段和算法中的其 他10轮中的每一轮提供16字节的轮密钥。,50,3.3 对称密钥密码技术,对称密钥密码的分析方法 密码编码学与密码分析学的对立性促进了密码学的发 展。根据密码分析者对明文、密文等信息掌握的多 少,可以将密码分析分为以下五种情形:唯一密文攻 击、已知明文攻击、选择明文攻击、选择密文攻击和 选择文本攻击。,51,3.3 对称密钥密码技术,对称密钥密码的分析方法 具体的分析方法主要包括:1.强力攻击法 强力攻击可用于任何分组密码,且攻击的复杂度仅依 赖于分组长度和密
22、钥长度。工作效率包括加/解密速 度、密钥扩展速度、存储空间等。,52,3.3 对称密钥密码技术,对称密钥密码的分析方法 2.差分密码分析 已知最有效的攻击迭代密码的方法之一。基本思想是 通过分析明文对的差值对密文对的差值的影响来恢复 某些密钥比特。差分密码分析最初是针对DES加密提出的一种攻击方 法,能成功破解轮数较低的DES。,53,2.3 对称密钥密码技术,对称密钥密码的分析方法 3.线性密码分析 本质上是一种已知明文攻击法,是对DES加密方法进 行破译的主要方法。基本思想是通过寻找一个给定密 码算法的有效的线性近似表达式来破译密码系统。,54,3.3 对称密钥密码技术,对称密钥密码的分析
23、方法 4、差分-线性密码分析 对差分密码分析和线性密码分析进行改进,是降低它 们复杂度的众多改进之一。它利用的是差分密码分析 和线性密码分析相结合的技术。,55,2.3 对称密钥密码技术,对称密钥密码的分析方法 5、插值攻击 利用了拉格朗日插值公式的思想。如果一个密码算法 是固定的密钥的低次多项式函数,或项数较少的多项 式,其项数可以估算出来,则通过插值法可以得到其 代数表达式,从而可能恢复出密钥。,56,3.4 非对称密钥密码技术,基本概念 1976年提出的公开密钥密码体制思想不同于传统的对 称密钥密码体制,它要求密钥成对出现,一个为加密 密钥e,另一个为解密密钥d,且不可能从其中一个推 导
24、出另一个。非对称密码算法解决了对称密码体制中密钥管理的难 题,并提供了对信息发送人的身份进行验证的手段,是现代密码学的最重要的发明和进展。,57,3.4 非对称密钥密码技术,基本概念 单向和陷门单向函数的概念是公钥密码学的核心,可 以说非对称密钥密码体制的设计就是陷门单向函数的 设计。,58,3.4 非对称密钥密码技术,RSA算法 RSA密码体制是目前为止最为成功的非对称密码算 法,它的安全性是建立在“大数分解和素性检测”这个 数论难题的基础上。RSA算法研制的最初理念与目标是努力使互联网安全 可靠,旨在解决DES算法秘密密钥的利用公开信道传 输分发的难题。同时,可利用RSA来完成对电文的数
25、字签名以对抗电文的否认与抵赖;还可以利用数 字签名较容易地发现攻击者对电文的非法篡改,以保 护数据信息的完整性。,59,3.4 非对称密钥密码技术,RSA算法 算法描述:1.密钥生成 选择两个互异的大素数p和q,n是二者的乘积,即n=pq,使(n)=(p-1)(q-1),(n)为欧拉函数,随机选取 与(n)互素的正整数e,将(n,e)作为公钥。计算满足e*d=1mod(n)的正数d,将(n,d)作为私钥。,60,3.4 非对称密钥密码技术,RSA算法 2.加密算法 对于明文M,由C=Memodn,得到密文C。3.解密算法 对于密文C,由M=Cdmodn,得到明文M。,61,3.4 非对称密钥密
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息 加密 认证
链接地址:https://www.31ppt.com/p-4951179.html