现在密码学第2章信息保密技术(2)39674.pptx

上传人:jix****n11 文档编号:91024907 上传时间:2023-05-21 格式:PPTX 页数:90 大小:585.38KB
返回 下载 相关 举报
现在密码学第2章信息保密技术(2)39674.pptx_第1页
第1页 / 共90页
现在密码学第2章信息保密技术(2)39674.pptx_第2页
第2页 / 共90页
点击查看更多>>
资源描述

《现在密码学第2章信息保密技术(2)39674.pptx》由会员分享,可在线阅读,更多相关《现在密码学第2章信息保密技术(2)39674.pptx(90页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第二章 信息保密技术(2)2004年9月国际数据加密算法(IDEA)nIDEA(International Data Encryption Standard)由瑞士联邦理工学院的Xuejia Lai和James Massey于 1990年提出,分组长度为64-bit,密钥长度为128-bit。能抵抗差分密码分析,目前还没有发现明显的安全漏洞,应用十分广泛。著名的电子邮件安全软件PGP就采用了IDEA进行数据加密。IDEA的混淆特性nIDEA的混淆特性是经由混合下述三种操作而成的:n以比特为单位的异或运算,用表示。n定义在模 (mod65536)的模加法运算,其操作数都可以表示成16位整数,用表

2、示这个操作。n定义在模 1(mod65537)的模乘法运算。IDEA的混淆特性(续)n由于上面3个操作,基于以下的“非兼容性 “(Incompatible),当应用在IDEA时,可以充分发挥出混淆的特性。n三种中的任意两个,都不满足“分配律”,例如运算及,任意a,b,c ,则有:a(bc)(ab)(ac)n3个操作中的任意2个,都无法满足“结合律”。例如运算及,任意a,b,c ,a(bc)(ab)(ac)n 因此在IDEA的设计中,使用了这三种操作混合组合来打乱数据。攻击者无法用化简的方式来分析密文与明文及密钥之间的关系。IDEA的扩散特性nIDEA的扩散特性是建立在乘法/加法(MA)的基本结

3、构上。该结构一共有4个16位的输入,两个16位的输出。其中的两个输入来源于明文,另两个输入是子密钥,源于128位加密密钥。Lai经过分析验证,数据经过8轮的MA处理,可以得到完整的扩散特性。MA基本结构F1F2G1G2Z5Z6子密钥(16位)明文输入(16位)明文输入(16位)子密钥(16位)输出(16位)输出(16位)(i)(i)IDEA算法描述nIDEA是由8轮相似的运算和随后的一个输出变换组成 n64位的明文分组在每一轮中都是被分成4份,每份从16位为一单元来处理 n每一轮中6个子密钥8输出变换4个子密钥52个子密钥 每一轮的运算又分成两部分:每一轮的运算又分成两部分:n第一部分即变换运

4、算。利用加法及乘法运算将4份16位的子明文分组与4个子密钥混合,产生4份16位的输出。这4份输出又两两配对,以逻辑异或将数据混合,产生两份16位的输出。这两份输出,连同另外的两个子密钥成为第二部分的输入。n第二部分即用以产生扩散特性的MA运算。MA运算生成两份16位输出。MA的输出再与变换运算的输出以异或作用生成4份16位的最后结果。这4份结果即成为下一轮运算的原始输入。子密钥的产生n首先将128位加密密钥以16位为单位分成8组,其中前6组作为第一轮迭代运算的子密钥,后2组用于第二轮迭代运算的前2组子密钥。n然后将128位密钥循环左移25位,再分为8组子密钥,其中前4组用于第二轮迭代运算,后4

5、组用作第三轮迭代运算的前4组子密钥,依此直至产生全部52个子密钥。n这52个子密钥的顺序为:Z1(1),Z2(1),Z6(1);Z1(2),Z2(2),Z6(2);Z1(8),Z2(8),Z6(8);Z1(9),Z2(9),Z3(9),Z4(9),IDEA的解密 n本质上与加密过程唯一不同的是解密密钥子块Ki(r)是从加密密钥子块Zi(r)按下列方式计算出来的:n其中 表示的模(1)的乘法逆,亦即 ,表示 的模 的加法逆,亦即 。IDEA的设计理念 nIDEA的设计主要考虑是针对16位为单位的处理器。因此无论明文、密钥都是分成16位为一个单元进行处理。nIDEA使用了三种简单的基本操作,因此在

6、执行时可以达到非常快的操作。在33MHz386机器上运行,加密速度可以达到880kb/s。经过特殊设计的VLSI芯片,更可以达到55Mb/s的速度。nIDEA采用三种非常简单的基本操作,混合运算,以达到混淆目的。而相对地,DES采用经过特殊设计的S-盒,而对这些S-盒的分析又不对外公开。相较之下,IDEA的安全性评估,较易被大家接受。nIDEA的整体设计非常规律。MA运算器及变换运算器重复使用在系统上。因此非常适合VLSI实现。AES算法n 1997年4月15日,美国国家标准技术研究所(NIST)发起征集AES(Advanced Encryption Standard)的活动,目的是为响应公众

7、日益增长的替换DES的要求,确定21世纪的数据加密标准。1997年9月12日正式公布了通告。通告要求AES比3DES快而且安全,分组长度为128-bit,密钥长度为128、192及256-bit。n NIST原名为NBS(国家标准局),是美国商业部下属的一个机构,1988年改为现名。著名的DES加密算法即是由它们颁布的。n 1998年8月20日公布了符合基本要求的15个算法。1999年3月22日从中选出了5个。2000年4月25日对5个算法进行了讨论。2000年10月2日,NIST公布了最终的获胜者是Rijndael算法,比利时人设计。n AES算法能有效地抵抗差分分析与线性攻击。但加密、解密

8、过程不完全对称,使用了不同的代码和S-盒,所以实现起来占用资源相对多一些。AES算法-Rijndael算法n数据块长度和密钥长度可以是128比特、192比特和256比特,其原型是Square算法。n设计策略宽轨迹策略(Wide Trail Strategy)。n宽轨迹策略 针对差分分析和线性分析提出,其最大优点是可以给出算法的最佳差分特征的概率及最佳线性逼进的偏差的界。AES算法-Rijndael算法(续)nRijndael采用的是代替/置换网络。每一轮由以下三层组成:n线性混和层确保多轮之上的高度扩散;n非线性层由16个S盒并置而成,起到混淆的作用;n密钥加层子密钥简单地异或到中间状态上。n

9、S盒选取的是有限域 GF(28)中的乘法逆运算,它的差分均匀性和线性偏差都达到了最佳。AES算法-Rijndael算法(续)n在加密之前,对数据块做预处理。n首先,把数据块写成字的形式,每个字包含4个字节,每个字节包含8比特信息。n其次,把字记为列的形式。这样数据块就可以记为以下的形式:n其中,每列表示一个字 n每个 表示一个8比特的字节,即 n如用Nb表示一个数据块中字的个数,那么Nb4,6或8。n类似地,用Nk表示密钥中字的个数,那么Nk4,6或8。例如,Nk6的密钥可以记为以下的形式:n算法轮数Nr由Nb和Nk共同决定,具体值见下表 n NrNb=4Nb=6Nb8 Nk4 101214N

10、k6 121214Nk8141414Rijndael算法加密过程字节代换行移变换列变换列变换行移变换字节代换行移变换字节代换子密钥(0)子密钥(1)最后一轮第Nr-1轮明文块密文块 第一轮子密钥(Nr)子密钥(Nr-1)Rijndael算法加密过程(续)n注1:字节代换(ByteSub)是作用在字节上的一种非线性字节变换。由以下两个变换合成。n首先,把每个字节看作一个系数在0,1上的多项式,在有限域 中取它相对于模多项式 的乘法逆,其中,零多项式的乘法逆映射到自身。n其次,再使用下式所定义的GF(2)域上的放射变换,作用在所求得的乘法逆上。其中 是 在 中的乘法逆,记作:n注2:行移变换 n在

11、此变换的作用下,数据块的第0行保持不变,第1行循环左移位,第2行循环左移位,第3行循环左移位,其中移位值和与加密块长Nb有关。Nb移位值C1C2C3412361238134n注3:列混合变换(MixColumn)n式中 看成环 中的元素,乘法是在环 中进行的。n注意,因为 与 互素,所以 有可逆元 n子密钥的生成 n加密和解密过程分别需要Nr1个子密钥 n步骤:1.主密钥 的扩展 2.子密钥的选取 n根据 和 两种不同的情况,采取不同的主密钥扩展方式。n主密钥的扩展 对于 当 时,定义 。当 时:若 ,定义 ;若 ,令 定义 其中,Rotate(a,b,c,d)是左移位,即Rotate(a,b

12、,c,d)(b,c,d,a)。n对于 当 时,定义 。当 时:若 且 ,定义 若 ,令 ,定义 若 ,定义 这样,就得到了Nb(Nr+1)个字 。第i个子密钥就是nRijndael解密 n算法结构与加密算法相同,其中的变换为加密算法变换的逆变换,且使用了一个稍有改变的密钥编制 n行移变换的逆是状态的后三行分别移动 个字节,这样在i行j 处的字节移到 处。n字节代换的逆是Rijndael的S-盒的逆作用到状态的每个字节,这可由如下得到:先进行仿射的逆变换,然后把字节的值用它的乘法逆代替。n列混合变换的逆类似于列混合变换,状态的每一列都乘以一个固定的多项式 :2.2.3分组密码的分析方法n解密与密

13、码分析n 解密是加密的逆过程,是指掌握密钥和密码算法的合法人员从密文 恢复出明文的过程。密码分析则是指非法人员对密码的破译,而且 破译以后不会告诉对方。n 共同点 “解密(脱密)”和“密码分析(密码破译)”都是设法将 密文还原成明文。n 不同点 二者的前提是不同的,“解密(脱密)”掌握了密钥和密码体 制,而密码分析(破译)则没有掌握密钥和密码体制分组密码的分析方法(续)n根据攻击者掌握的信息,可将分组密码的攻击分为以下几类:n唯密文攻击:攻击者除了所截获的密文外,没有其他可利用的 信息。n已知明文攻击:攻击者仅知道当前密钥下的一些明密文对。n选择明文攻击:攻击者能获得当前密钥下的一些特定的明文

14、所对应 的密文。n选择密文攻击:攻击者能获得当前密钥下的一些特定的密文所对 应的明文。分组密码的分析方法(续)n一种攻击的复杂度可以分为两部分:数据复杂度和处理复杂度。n数据复杂度是实施该攻击所需输入的数据量。n处理复杂度是处理这些数据所需的计算量。n对某一攻击通常是以这两个方面的某一方面为主要因素,来刻画攻击复杂度。【例如】n穷举攻击的复杂度实际就是考虑处理复杂度;n差分密码分析其复杂度主要是由该攻击所需的明密文对的数量来确定。几种常见的攻击方法1.强力攻击强力攻击可用于任何分组密码,且攻击的复杂度只依赖于分组长度和密钥长度,严格地讲攻击所 需的时间复杂度依赖于分组密码的工作效率(包括加解密

15、速度、密钥扩散速度以及存储空间等)。强力攻击常见的有:穷举密钥搜索攻击、字典攻击、查表攻击和时间-存储权衡攻击等。几种常见的攻击方法(续)2.差分密码分析基本思想通过分析明文对的差值对密文对的差值的影响来恢复某些密钥比特 若给定一个r轮的迭代密码,对已知n长明文对为 和 ,定义其差分为 式中 表示集合中定义的群运算,为 在群中的逆元。密码分析者可随机选择具有固定差分的一对明文(只要求它们符合特定差分条件),然后使用输出密文中的差分,按照不同的概率分配给不同的的密钥。随着分析的密文对越来越多,其中最可能的一个密钥就显现出来了。这就是正确的密钥。几种常见的攻击方法(续)3.线性密码分析本质:一种已

16、知明文攻击方法。基本思想:通过寻找一个给定密码算法的有效的 线性近似表达式来破译密码系统。对已知明文密文和特定密钥,寻求线性表示式 式中,是攻击参数。对所有可能密钥,此表达式以概率 成立。对给定的密码算法,使 极大化。为此对每一盒的输入和输出构造统计线性路线,并最终扩展到整个算法。分组密码的工作模式n常用的分组密码工作模式有4种:1.电子密码本即ECB模式2.密码分组连接模式(CBC)模式3.密码反馈模式(CFB)模式4.输出反馈模式(OFB)模式。ECB(Electronic Code Book)CBC(Cipher Block Chaining)CFB(Cipher Feed Back)O

17、FB(Output Feed Back)2.3公钥加密技术n本节提示 2.3.1 基本概念 2.3.2 RSA公钥密钥算法 2.3.3 ElGamal算法 2.3.4 椭圆曲线算法2.3.1 基本概念n1976年,W.Diffie和M.E.Hellman发表了“密码学的新方向(New Directions in Cryptography)”一文,提出了公钥密码学(Public-key cryptography)的思想,在公钥密码体制(Public-key cryptosystem)中加密密钥和解密密钥是不同的,加密密钥可以公开传播而不会危及密码体制的安全性。n 通信的一方利用某种数学方法可以产

18、生一个密钥对密钥对,一个称为公钥公钥(Public-key),另外一个称为私钥私钥(Private-key)。该密钥对中的公钥与私钥是不同的,但又是相互对应的,并且由公钥不能推导出对应的私钥。选择某种算法(可以公开)能做到:用公钥加密的数据只有使用与该公钥配对的私钥才能解密。基本概念(续)n公钥加密算法的核心公钥加密算法的核心单向陷门函数,即从单向陷门函数,即从一个方向求值是容易的。但其逆向计算却很困一个方向求值是容易的。但其逆向计算却很困难,从而在实际上成为不可行。难,从而在实际上成为不可行。n定义定义1.设 是一个函数,如果对任意给定的 ,计算 ,使得 是容易计算的,但对于任意给定的 ,计

19、算 ,使得 是难解的,即求 的逆函数是难解的,则称 是一个单向函数。基本概念(续)n定义定义2.设 是一个函数,是与 有关的一个参数。对于任意给定的 ,计算 ,使得 是容易的。如果当不知参数 时,计算 的逆函数是难解的,但当知道参数 时,计算函数 的逆函数是容易的,则称 是一个单向陷门函数,参数 称为陷门。2.3.2 RSA公钥密码算法nRSA是Rivet,Shamir和Adleman于1978年在美国麻省理工学院研制出来的,它是一种比较典型的公开密钥加密算法。n基础 大数分解和素性检测将两个大素数相乘在计算上很容易实现,但将该乘积分解为两个大素数因子的计算量是相当巨大的,以至于在实际计算中是

20、不能实现的。RSA公钥密码算法(续)n算法内容 (1)公钥 选择两个互异的大质数 和 ,使 ,是欧拉函数,选择一个正数 ,使其满足 ,则将 作为公钥。(2)私钥 求出正数 使其满足 ,则将 作为私钥。(3)加密变换将明文 作变换,使 ,从而得到密文 。(4)解密变换将密文 作变换,使 ,从而得到明文 。RSA公钥密码算法(续)n如果A要发送信息M给B,A和B之间用以下方式进行通信:计算密文 发送C给B从A 接收C计算明文 .n一般要求p,q为安全质数,现在商用的安全要求为n的长度不少于1024位。n应用:PEM,PGPRSA公钥密码算法(续)n算法的安全性分析算法的安全性分析 1.如果密码分析

21、者能分解 的因子 和 ,他就可以 求出 和解密的密钥 ,从而能破译RSA,因此破 译RSA不可能比因子分解难题更困难。2.如果密码分析者能够不对 进行因子分解而求得,则 可以根据 求得解密密钥 ,从而破译RSA。因为 所以知道 和 就可以容易地求得 和 ,从而成 功分解 ,因此,不对 进行因子分解而直接计算 并不比对 进行因子分解更容易。RSA公钥密码算法(续)3.如果密码分析者既不能对n进行因子分解,也不能求 而直接求得解密密钥 ,则他就可以计算 是 的倍数。而且利用 的倍数可以容易地分解出n的因子。因此直接计算解密密钥 并不比对n进行因子分解更容易。n注意问题np和q的长度相差不能太多.n

22、p-1和q-1都应该包含大的素因子。np-1和q-1的最大公因子要尽可能小。2.2.3 ElGamal算法算法n该体制是由ElGamal在1985年提出的,其安全性是基于有限域上计算离散对数的困难性。n ElGamal提出了加密模型和认证模型两种体制,加密模型没有被充分应用,而其认证模型是美国数字签名标准(DSS)的基础。2.2.3 ElGamal算法算法n算法内容1.选取大素数 ,是一个本原元,和 公开。2.随机选取整数 计算 是公开的加密密 钥,是保密的解密密钥。3.明文空间为 ,密文 空间为 4.加密变换为:对任意明 文 ,秘密随机选 取一个整数 ,则密文为 其中5.解密变换:对任意密

23、文 ,明文为ElGamal算法的安全性分析n有限域上的离散对数问题 定义 设 是素数,是一个本原元,已知 和 ,求满足 的唯 一整数 ,称为有限域上的离散 对数问题。n现在要求在ElGamal密码算法的应用中,素数p按十进制表示至少应该有150位数字,并且p-1至少应该有一个大的素因子。2.2.4 椭圆曲线算法n1985年Koblitz和Miller提出在密码学中应用椭圆曲线的思想,使其成为构造公开密钥密码系统的一个有利工具。其安全性是基于椭圆曲线上的离散对数计算的困难性。n优点:椭圆曲线上离散对数的计算要比有限域上离散对数的计算更困难。与RSA相比,椭圆曲线密码体制能用较短的密钥达到较强的安

24、全性,这样实现上能节省系统资源。椭圆曲线算法(续)n1.有限域上的椭圆曲线 设 表示一个有限域,是域 上的椭圆曲线,则 是一个点的集合,表示为:其中 表示无穷远点。n在 上定义+运算,是过 的直线与曲线的另一交点关于x轴的对称点,当 时,是 点的切线与曲线的另一交点关于 轴的对称点。这样,构成可换群(Abel群),O是加法单位元(零元)。椭圆曲线算法(续)n椭圆曲线离散对数问题(ECDLP):给定义在 上的椭圆曲线 ,一个 阶的点 和点 ,如果存在1,确定整数1,0 1 n-1,。nRSA是基于因子分解,其算法的核心就是如何寻找大数的因子分解,但ECDLP是比因子分解难得多的问题。椭圆曲线中两

25、种运算示意图椭圆曲线上的加法:PQR椭圆曲线上一点的2倍:PPR椭圆曲线算法(续)n2.椭圆曲线上的密码算法椭圆曲线上的密码算法n1985年N.Koblitz和Miller提出将椭圆曲线用于密码算法,分别利用有限域上椭圆曲线的点构成的群,实现了离散对数密码算法。n椭圆曲线数字签名算法ECDSA,由IEEE工作组和ANSI(Amercian National Standards Institute)X9组织开发。椭圆曲线算法(续)n3.椭圆曲线密码算法的发展椭圆曲线密码算法的发展nRSA的长密钥带来了运算速度慢和密钥存储与管理的问题。n由于其自身的优点,椭圆曲线密码学被普遍认为将替代RSA成为通

26、用的密码算法。n应用:数字签名,智能卡n研究:陶仁骥,陈世华基于有限自动机的公 开密钥加密方法:FAPKC0,FAPKC1,FAPKC2,FAPKC3。2.4 流密码技术n本节友情提示 2.4.1 流密码基本原理 2.4.2 二元加法流密码 2.4.3 几种常见的流密码算法2.4 流密码技术n在单钥密码体制中,按照加密时对明文处理方式的不同,可分为分组密码和流密码。n流密码亦称为序列密码,是将待加密的明文分成连续的字符或比特,然后用相应的密钥流对之进行加密,密钥流由种子密钥通过密钥流生成器产生。n密钥流可以方便地利用以移位寄存器为基础的电路来产生。n特点:实现简单,加密速度快,错误传播低。2.

27、4.1 流密码基本原理n原理 通过随机数发生器产生性能优良的伪随机序列(密钥流),使用该序列加密信息流(逐比特加密),得到密文序列。种子密钥K随机数发生器加密变换密钥流Ki明文流mi密文流Cin按照加解密的工作方式,流密码分为同步流密码和自同步流密码。n1.同步流密码 密钥流的产生完全独立于信息流。密钥流生成器ki种子密钥k安全信道ciki解密变换密钥流生成器 ci公开信道加密变换种子密钥K流密码基本原理(续)n2.自同步流密码n是一种有记忆变换的密码,每一个密钥字符是由前面n个密文字符参与运算推导出来的,其中n为定值。即,如果在传输过程中丢失或更改了一个字符,则这一错误就要向前传播n个字符。

28、n有错误传播现象。密钥流生成器ki种子密钥k安全信道ciki解密变换密钥流生成器 ci公 开信道加密变换种子密钥k2.4.2 二元加法流密码符号描述与示例符号描述与示例加密操作:加密操作:密钥流:k1,k2,k3,明文流:m1,m2,m3,密文流:c1,c2,c3,解密操作:解密操作:密钥流:k1,k2,k3,密文流:c1,c2,c3,明文流:m1,m2,m3,例电报内容电报内容“专列下午专列下午2点到达。点到达。”的加密过程如下的加密过程如下:密钥流:78,35,02,E4,B2 明文流:D7,A8,C1,D0,CF,C2,CE,E7,32,B5,E3,B5,BD,B4,EF,A1,A3 密

29、文流:AF,9D,C3,34,7D二元加法流密码(续)nGolomb随机性假设:n在序列的一个周期内,0与1的个数相差至多为1;n在序列的一个周期圈内,长为1的游程数占总游程数的1/2,长为2的游程数占总游程数的 ,,长为 的游程数占总游程数的 且在等长的游程中0,1游程各占一半;n序列的异相自相关系数为一个常数。n满足Golomb随机性假设的序列称为伪随机序列。二元加法流密码(续)n流密码的设计最核心的问题是密钥流生成器的设计。n密钥流生成器一般由线性反馈移位寄存器(Linear Feedback Shift Register LFSR)和一个非线性组合函数两部分构成,其中,线性反馈移位寄存

30、器部分称为驱动部分,另一部分称为非线性组合部分。驱动部分(LFSR)非线性组合部分密钥流 ki二元加法流密码(续)n反馈移位寄存器(feedback shift register)1.组成结构 反馈移位寄存器由 n位的寄存器(称为 n-级移位寄存器)和反馈函数(feedback function)组成。移位寄存器序列的理论由挪威政府的首席密码学家Ernst Selmer于1965年提出。bn-1b3b2b1bn反馈函数 f(b1,bn)输出位oi二元加法流密码(续)n2.工作原理 移位寄存器中所有位右移一位,最移位寄存器中所有位右移一位,最右边移出的位是输出位,最左端的一位右边移出的位是输出位

31、,最左端的一位由反馈函数的输出填充,此过程称为进由反馈函数的输出填充,此过程称为进动一拍。反馈函数动一拍。反馈函数f(b1,bn)是是n元元(b1,bn)的布尔函数。移位寄存器根的布尔函数。移位寄存器根据需要不断地进动据需要不断地进动m拍,便有拍,便有m位的输位的输出,形成输出序列出,形成输出序列o1 o2 om。二元加法流密码(续)n例1 如图所示为一个3-级反馈移位寄存器,反馈函数f(x)=b3b2,初态为:100。输出序列生成过程如下:n状态 输出位n100 0n110 0n011 1n101 1n110 0n011 1n101 1n110 0n因此,对应初态(100)的输出序列为:n0

32、011011011(周期为3)b3b2b1t2t3(a)移位寄存器结构图(110)(011)(101)初态(100)(b)状态转移图110(c)序列圈0二元加法流密码(续)3.输出序列的周期 移位寄存器的周期是指输出序列中连续且重复出现部分的长度(位数)。如例1输出序列中连续且重复出现的序列为:011,则其周期为3。其输出序列可表示为:0(011)。将其用图的方式表示出来称为“序列圈”,如图(c)所示。4.状态 某一时刻移位寄存器中所有位的值称为一个状态。n-级的FSR共有2n个状态。3-级移位寄存器的状态共有23=8个,它们分别是:000,001,010,011,100,101,110,11

33、1。但是,并非所有的状态都被用到。如例1除初始状态以外,仅有三个状态周期性地参与了输出序列的产生。二元加法流密码(续)n当反馈移位寄存器的反馈函数是异或变换时,这样的反馈移位寄存器叫线性反馈移位寄存器,如图所示:二元加法流密码(续)移位寄存器中存储器的个数称为移位寄存器的级数,移位寄存器存储的数据为寄存器的状态,状态的顺序从左到佑依次为从最高位到最低位。在所有状态中,叫初态,并且从左到右依次称为第一级、第二级、第n级,亦称为抽头1、抽头2、抽头3、.、抽头n。n级线性反馈移位寄存器的有效状态为 个。它主要是用来产生周期大,统计性能好的序列。二元加法流密码(续)n非线性组合部分主要是增加密钥流的

34、复杂程度,使密钥流能够抵抗各种攻击(对流密码的攻击手段主要是对密钥流进行攻击)。n以线性反馈移位寄存器产生的序列为基序列,经过不规则采样、函数变换等(即非线性变换),就可以得到实用安全的密钥流。n不规则采样是在控制序列下,对被采样序列进行采样输出,得到的序列称为输出序列。n控制序列的控制方式有钟控方式、抽取方式等,函数变换有前馈变换、有记忆变换等。二元加法流密码(续)n代表性的序列模型 1、钟控模型 当LFSR-1输出1时,时钟信号被采样,即能通过“与门”驱动LFSR-2进动一拍;当LFSR-1为0时,时钟信号不被采样,即不能通过“与门”,此时LFSR-2不进动,重复输出前一位。钟控发生器的示

35、意图如下:n2、前馈模型 Geffe发生器是前馈序列的典型模型,其前馈函数g(x)=(x1 x2)(x2 x3)为非线性函数,即当LFSR-2输出1时,g(x)输出位是LFSR-1的输出位;当LFSR-2输出0时,g(x)输出位是LFSR-3的输出位。Geffe发生器示意图如下:2.4.3 几种常见的流密码算法1.A5算法n法国,欧洲数字蜂窝移动电话系统(GSM)中使用的序列密码加密算法 n3个LFSR,移位寄存器的长度分别是19、22和23,但抽头都较少 2.Rambutan算法n英国的算法,由通信电子安全组织设计 n5个LFSR组成,每个LFSR长度大约为80-级,而且有10个抽头。3.R

36、C4算法n由Ron Rivest于1987年为RSA数据安全公司设计的可变密钥长度的序列密码,广泛用于商业密码产品中。4.SEAL算法nIBM公司的Phil Rogaway和Don Coppersmith设计的一种易于用软件实现的序列密码。n是一个伪随机函数簇。2.5 信息隐藏技术n本节友情提示 2.5.1信息隐藏技术的发展 2.5.2信息隐藏的特点 2.5.3信息隐藏的方法 2.5.4信息隐藏的攻击信息隐藏的定义n信息隐藏信息隐藏(Information Hiding)或更严格地称为信息伪装信息伪装(Steganography:该单词来源于古希腊,意思是将有用或重要的信息隐藏于其他信息里面以

37、掩饰其存在),顾名思义就是将秘密信息秘密地隐藏于另一非机密的文件内容之中,其形式可为任何一种数字媒体,如图象、声音、视频或一般的文档等等。其首要目标是隐藏的技术要好,也就是使加入隐藏信息后的媒体目标的降质尽可能小,使人无法看到和听到隐藏的数据,达到令人难以察觉的目的。2.5.1信息隐藏技术的发展历史背景历史背景:1.最早记载例子:480B.C希腊人在蜡板上隐写 2.不可见墨水(17世纪):3.微缩胶片与微缩小点编码(1857年):4.藏头诗、乐谱、文字材料、纸张水印:信息时代信息时代:1.数字媒体(图象音频视频文档)具有大量冗余空间 2.数字媒体的版权保护:3.信息安全、信息战争、个人隐私保护

38、的需要信息隐藏技术的发展(续)n信息隐藏主要分为隐写术(Steganography)和数字水印(Digital Watermark)两个分支。n隐写术 Simmons提出的囚犯问题 n数字水印 数字水印技术通过在数字作品中加入一个不可察觉的标识信息(版权标识或序列号等),需要时可以通过算法提出标识信息来进行验证,作为指证非法复制的证据。2.5.2信息隐藏的特点n不破坏载体的正常使用不破坏载体的正常使用 由于不破坏载体的正常使用,就不会轻易引起别人的注意,能达到信息隐藏的效果。同时,这个特点也是衡量是否是信息隐藏的标准。n载体具有某种冗余性载体具有某种冗余性 通常好多对象都在某个方面满足一定条件

39、的情况下,具有某些程度的冗余,如空间冗余、数据冗余等,寻找和利用这种冗余就成信息隐藏的一个主要工作。信息隐藏的特点(续)n载体具有某种相对的稳定量 这只是针对具有健壮性(Robustness)要求的信息隐藏应用,如数字水印等。寻找载体对某个或某些应用中的相对不变量,如果这种相对不变量在满足正常条件的应用时仍具有一定的冗余空间,那么这些冗余空间就成为隐藏信息的最佳场所。n具有很强的针对性。任何信息隐藏方法都具有很多附加条件,都是在某种情况下,针对某类对象的一个应用。出于这个特点,各种检测和攻击技术才有了立足之地。例如StirMarK水印攻击软件。2.5.3信息隐藏的方法n信息隐藏的算法主要分为两

40、类:1.空间域方法 通过改变载体信息的空间域特性来隐藏信息;2.变换域方法 通过改变数据(主要指图像、音频、视 频等)变换域的一些系数来隐藏信息。信息隐藏的方法1 空间域算法空间域算法(1)最低有效位(LSB)方法1.利用原数据的最低几位来隐藏信息。2.对于数字图像,就是通过修改表示数字图像颜色(或者颜色分量)的较低位平面,即通过调整数字图像中对感知不重要的像素低比特位来表达水印的信息,达到嵌入水印信息的目的。3.优点是算法简单,计算量小,计算速度通常比较快,而且提取信息时通常不需要原始图像。4.缺点是很脆弱,无法经受一些无损和有损的信息处理。信息隐藏的方法n(2)文档结构微调方法 由Bras

41、sil等人首先提出了三种在通用文档图像中隐藏特定二进制信息的技术。n行移编码 垂直移动文本行的位置;n字移编码,水平调整字符位置和距离;n特征编码,观察文本文档并选择其中一些特征量,根据要嵌入的信息修改这些特征,例如轻微改变字体的形状等。该方法仅适用于文档图像类。2 变换域算法变换域算法离散傅里叶变换(DFT)方法 对于二维数字图像 ,其二维DFT将空域的图像转换成频域的DFT系数 ,变换公式如下:反变换的公式如下:,n离散余弦变换(DCT)方法n数字图像可看作是一个二元函数在离散网格点处的采样值,可以表示为一个非负矩阵。n二维离散余弦变换定义如下:n逆变换定义为:上述式中:且 其中 为图像的

42、像素值,为图像做DCT变换后的系数。n离散小波变换(DWT)方法n小波变换是一种变分辨率的,将时域与频域相联合分析方法,时间窗的大小随频率自动进行调整,更加符合人眼视觉特性。n小波分析在时、频域同时具有良好的局部性。n目前,小波分析已经广泛应用于数字图像和视频的压缩编码、计算机视觉、纹理特征识别等领域。n与空间域的方法比较,变换域的方法具有如下优点:n在变换域中嵌入的水印信号能量能够分布到空间域的所有像素上,有利于保证隐藏信息的不可见性;n在变换域,人类视觉系统(VHS)的某些特性(如频率掩蔽效应)可以更方便地结合到水印编码过程中,因而其隐蔽性更好;n变换域的方法可与国际数据压缩标准兼容,从而

43、易实现在压缩域(compressed domain)内的水印算法,同时,也能抵抗相应的有损压缩。2.5.4信息隐藏的攻击n信息隐藏的研究分为两种:1.隐藏技术 主要研究向载体对象中嵌入秘密信息 2.隐藏攻击技术 主要研究对隐藏信息的检测、破解秘密信息或通过对隐藏对象处理从而破坏隐藏的信息和阻止秘密通信。n信息隐藏攻击者的主要目的为:n检测隐藏信息的存在性;n估计隐藏信息的长度和提取隐藏信息;n在不对隐藏对象做大的改动的前提下,删除或扰乱隐藏对象中的嵌入信息 n一般称前两种为主动攻击,最后一种为被动攻击 本章小结n密码学中常见的体制有两种:一种是对称密码体制(单钥密码体制),另一种是非对称密码体

44、制(公钥密码体制)。n按照对数据的操作模式分类密码有两种:分组密码和流密码。n混淆(Confusion)和弥散(Diffusion)是指导设计密码体系的两个基本原则。n分组密码的工作模式一般有四种:电子密码本模式(ECB),密码分组连接模式(CBC)模式,密码反馈模式(CFB)模式和输出反馈模式(OFB)模式。密码分组连接模式(CBC)模式,密码反馈模式(CFB)模式,输出反馈模式(OFB)模式。n对分组密码常见的攻击方法有:1、强力攻击2、差分密码分析攻击3、线性密码分析攻击nDES、3DES、IDEA、AES属于单钥密码算法,RSA、EIGamal、McEliece、ECC属于公钥密码算法

45、。nIDEA采用三种操作混合运算执行加密功能。密钥长度是128比特,是DES的两倍。其安全性评估比DES容易。nAES算法的信息块长度和加密密钥是可变的,他们都可以可以是128比特、192比特、256比特。在抵抗差分密码分析及线性密码分析的能力方面比DES更有效,已经替代DES成为新的数据加密标准。n公开密钥加密算法的核心是运用单向陷门函数。nRSA算法的安全性是建立在数论难题“大数分解和素性检测”的基础上,ElGamal算法的安全性是建立在有限域上的离散对数问题求解之上,ECC算法的安全性是建立在椭圆曲线离散对数问题求解之上。n序列密码算法的安全强度完全决定于它所产生的伪随机序列的好坏。n现代密码系统的安全性基于Kerchhoff假设下达到安全的系统。n加密使有用的信息变为看上去无用的乱码,使得攻击者无法读懂信息的内容从而保护信息,但加密同时也暗示攻击者所截获的信息是重要信息,从而引起攻击者的兴趣,攻击者可能在破译失败的情况下将信息破坏掉;而信息隐藏则是将有用的信息隐藏在其他信息中,使攻击者无法发现,不仅实现了信息的保密,也保护了通信本身。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁