第3章 信息加密与认证技术

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1第三章信息加密与认证技术2本章内容古典密码技术的分类和基本原理对称密码技术与DES、AES算法公钥密码技术与RSA、ElGamal、ECC信息认证的概念与作用及其基本原理单向Hash函数与消息认证码的基本概念和原理数字签名的原理和技术身份认证的典型技术3学习目标了解古典密码技术的分类和基本原理学习对称密码技术与DES、AES算法掌握公钥密码技术与RSA、ElGamal、ECC学习信息认证的概念与作用及其基本原理了解单向Hash函数与消息认证码的基本概念和原理掌握数字签名的原理和技术学习身份认证的典型技术43.1密码学技术概述密码系统的组成密码系统是用于对消息进行加密、解密的系统。可以用一个五元组来表示:1)明文:未加密的原始信息。2)密文:明文被加密后的结果。3)密钥:参与密码变换的参数。4)加密算法:明文加密时所采用的一组规则。5)解密算法:密文解密时所采用的一组规则。53.1密码学技术概述密码系统的组成传统密码体制模型如图所示:63.1密码学技术概述密码学的分类1.古典密码学和现代密码学1)古典密码学古典密码学又称为传统密码学,主要依靠人工和机械进行信息的加密、传输和破译。加密算法主要有替代加密、置换加密等。73.1密码学技术概述密码学的分类2)现代密码学亦称为计算机密码学阶段,利用计算机进行自动或半自动的加密、解密和传输,以二进制的数字化信息为研究对象,并使用现代思想进行信息的保密。根据密钥的使用方式又可分为对称密钥密码和非对称密钥密码。83.1密码学技术概述密码学的分类2.对称密钥密码和非对称密钥密码1)对称密钥密码又称为私密钥密码,加密和解密数据的密钥相同或者两者之间存在着某种明确的数学关系。主要算法有DES、IDEA、TDEA、MD5、RC4、AES等。93.1密码学技术概述密码学的分类2)非对称密钥密码用于加密数据的密钥与用于解密数据的密钥不相同,而且从加密的密钥无法推导出解密的密钥。其中一个密钥是公开的,另一个是保密的,又可称为公开密钥密码体制。主要算法有RSA、E1gamnl、Rabin、DH、椭圆曲线等。103.1密码学技术概述密码学的分类3.分组密码和序列密码1)分组密码密文仅与给定的密码算法和密钥有关,与被处理的明文数据段在整个明文(或密文)中所处的位置无关。分组密码以块为单位,在密钥的控制下进行一系列线性和非线性变换而得到密文。113.1密码学技术概述密码学的分类3.分组密码和序列密码2)序列密码密文与给定的密码算法、密钥、明文数据段在整个明文(或密文)所处的位置都有关。密钥通常采用比特流发生器随机产生二进制比特流得到,与明文结合产生密文,与密文相结合可以产生明文。123.2古典密码技术代替密码1.单表代替密码对明文中的所有字母都使用同一个映射。1)移位代替密码如凯撒密码,其基本思想是通过把字母移动一定的位数来实现加密和解密。133.2古典密码技术代替密码2)乘法代替密码已知:p=c=k=z26,k是满足0<k<n的正整数,要求k与n互素。加密算法:c=E(k,p)=(pk)(modn)解密算法:p=D(k,c)=k-1c(modn)143.2古典密码技术代替密码3)仿射密码乘法密码和加法密码相结合便构成仿射密码。仿射密码是一个线性变换。对于p=c=k=z26,且K={(a,b)∈z26Xz26,gcd(a,26)=1},对于任意的k=(k1,k2)∈K,加密算法:c=E(k,p)=k1p+k2(mod26)解密算法:p=D(k,c)=k1-1(c-k2)(mod26)153.2古典密码技术代替密码2、多表代替密码采用多个密文字母表,使得密文中的每一个字母有多种可能的字母来代替。Vigenère密码、Playfair密码、滚动密钥密码、弗纳姆密码以及Hill密码都是这一类密码。163.2古典密码技术代替密码1)Vigenère密码最著名的多表代换密码,用一个词组作为密钥,每一个密钥字母都对应一个代替表。密钥循环使用。已知明文p=p1p2...pn,m是一个固定的正整数,对于一个密钥k=k1k2...km,则加密算法如下:C=E(p,k)=(p1+k1(mod26),p2+k2(mod26),...,,pn+kn(mod26)...)173.2古典密码技术代替密码1)Vigenère密码解密算法:P=D(c,k)=(c1-k1(mod26),c2-k2(mod26),...,,cn-kn(mod26)...)183.2古典密码技术代替密码2)Playfair加密算法将明文中的双字母组合作为一个单元进行处理,并将每一个单元转换成双字母的密文组合。Playfair密码基于一个5×5矩阵,该矩阵采用一个关键词作为密钥来构造。构造的方法为:按从左至右,从上至下的顺序依次首先填入关键词中非重复的字母,然而再将字母表中剩余的字母按顺序填入矩阵。193.2古典密码技术代替密码3)滚动密钥密码对于周期多表代替密码,保密性将随周期d的加大而增加,当d的长度和明文一样长时就变成了滚动密钥密码。如果其中所采用的密钥不重复就是一次一密体制。一般密钥可取一本书或一篇报告作为密钥源,可由书名,章节号及标题来限定密钥的起始位置。203.2古典密码技术代替密码4)弗纳姆密码将随机二元数字序列作为密钥,以k=k1k2...ki...(ki∈F2)表示,明文字母编成二元向量后也可以表示为二元序m=m1m2...mi...(mi∈F2),加密过程就是将k和m逐位异或,即:ci=miXORki,i=1,2,...译码时,用同样的密钥对密文逐位异或,变可恢复明文的二元数字序列,即:mi=ciXORki,i=1,2,...213.2古典密码技术代替密码5)Hill密码Hill加密算法的基本思想是将m个明文字母通过线性变换将它们转换为m个密文字母。解密只要做一次逆变换就可以了。密钥就是变换矩阵本身。加密过程为:C=KPmod26其中,C和P代表密文和明文向量,K是密钥矩阵。解密则为:P=K-1C223.2古典密码技术代替密码6)一次一密一次一密乱码本是一个大的不重复的真随机密钥字母集。发方用乱码本中的每一密钥字母准确地加密一个明文字符。加密是明文字符和一次一密乱码本密钥字符的模26加法。收方有一个同样的乱码本,并依次使用乱码本上的每个密钥去解密密文的每个字符。在进行过一次加解密后,乱码本用过的部分将被销毁。新的消息用乱码本新的密钥加密。233.2古典密码技术置换密码古典密码技术除了代替密码,还有一种称为置换密码。把明文中的字母重新排列,字母本身不变,但其位置变了。单纯的置换密码因为有着与原文相同的字母频率而被识破。多步置换密码相对来说安全的多。243.3对称密钥密码技术基本概念对称密钥加密又称专用密码加密,即发送和接收方必须使用相同的密钥对明文进行加解密运算。算法主要包括DES、3DES、IDEA、FEAL、BLOWFISH等。对称加密的基本要求:1、强大的加密算法。2、发送方和接收方必须保证密钥的安全。实现方式:流密码技术,分组密码技术253.3对称密钥密码技术流密码技术基本思想是利用密钥k产生一个密钥流k0k1k2...,并使用如下规则对明文串p=p0p1p2...加密:c=c0c1c2...=Ek0(p0)Ek1(p1)Ek2(p2)...。密钥流由密钥流发生器f产生:zi=f(k,σi),σi是加密器中记忆元件在时刻i的状态。根据σi是否依赖于输入的明文字符,流密码可进一步分为同步和自同步两种。在同步流密码中,可将加密器分成密钥流产生器和加密变换器两个部分。263.3对称密钥密码技术流密码技术加密模型如图所示:273.3对称密钥密码技术流密码技术1.A5/1A5/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比特,用于初始化三个寄存器。用密钥填充三个寄存器后,就完成了密码流生成前的准备。283.3对称密钥密码技术流密码技术1.A5/1密钥流生成算法如图所示:293.3对称密钥密码技术流密码技术2.RC4A5/1根据硬件实现设计,每步仅产生一个密钥流比特;RC4算法为软件实现优化,每步产生一个密钥字节。本质上来讲就是一个包含256字节的置换查表,在产生密钥流的每一个字节时,所查的表就进行一次修改,表始终都包含{0,1,2,…255}的置换。303.3对称密钥密码技术流密码技术2.RC4RC4算法都是基于字节的。算法的第一阶段是对于查表使用的密钥进行初始化,再产生每个密钥流字节,在加密时与明文做XOR运算,解密时与密文做XOR运算。313.3对称密钥密码技术分组密码技术分组密码是对称密码的典型代表。即数据在密钥的作用下,一组一组地被处理,明文和密文的长度通常是相等的,一次对一个明文分组(如DES为64位)进行加密,而且每次的加密密钥都相同。323.3对称密钥密码技术分组密码技术分组加密的一般结构如图所示:333.3对称密钥密码技术分组密码技术按特定长度(如64bits)分组时,最后一组消息长度可能不足64bits。可以填充一些数字,通常用最后1字节作为填充指示符(PI)。343.3对称密钥密码技术分组密码技术1.DESDES是一种分组乘积密码,包括16轮迭代。明密文分组长度为64位,密钥总长为64位,有效长度56位,其中第8、16、……、64位共8位是奇偶校验位。DES是一种对称运算,除子密钥使用顺序逆序外,加密和解密算法相同。DES是一种面向二进制的密码算法,能够加解密任何形式的计算机数据。353.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。16,...,1),(111nKRfLRRLnnnnnn363.3对称密钥密码技术分组密码技术DES的加密算法流程图:373.3对称密钥密码技术分组密码技术2.TDEA和IDEA1)TDEA算法TDEA算法又叫做三重DES算法,执行三次DES的加密,加密步骤如下:①发送端用密钥Keyl进行DES加密。②发送端用密钥Key2对上一结果进行DES解密。③发送端用密钥Key3对上一结果进行DES加密。383.3对称密钥密码技术分组密码技术TDEA算法加/解密流程图:393.3对称密钥密码技术分组密码技术2)IDEA算法IDEA加密算法是在DES算法的基础上发展而来的,类似于三重DES算法,其分组长度也是64位,但密钥长度是128位,增加了破译难度。IDEA使用的运算有异或、模216加法和模(216+1)乘法。403.3对称密钥密码技术分组密码技术IDEA算法加密过程:①8轮的重复运算。②64位的明文分组在每一轮都是被分成4个子分组,每个16位子分组作为一个单元来处理。③每一轮中有6个不同的子密钥参与运算。④最后的输出变换有4个子密钥参与运算。IDEA的解密算法使用与加密算法同样的结构,子密钥的生成方法不同。413.3对称密钥密码技术分组密码技术IDEA算法解密子密钥的生成方法:①解密循环i的前4个子密钥从加密循环(10–i)的前4个子密钥中导出;解密密钥第1、4个子密钥对应于1、4加密子密钥的乘法逆元;解密密钥第2、3个子密钥对应于2、3加密子密钥的加法逆元。②对前8个循环来说,循环i的最后两个子密钥等于加密循环(9–i)的最后两个子密钥。423.3对称密钥密码技术分组密码技术3.

1 / 144
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功