您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 《物联网信息安全》(桂小林版)(第3章)-数据安全详解
西安交通大学桂小林1桂小林11物联网信息安全(第3章)桂小林西安交通大学电子与信息工程学院计算机科学与技术系2014.9.13西安交通大学桂小林2第3章数据安全桂小林西安交通大学2014-09-13西安交通大学桂小林33.1基本概念简单介绍密码学的知识西安交通大学桂小林43.1密码学的基本概念密码学(Cryptology)是一门古老的科学,大概自人类社会出现战争便产生了密码,以后逐渐形成一门独立的学科。第二次世界大战的爆发促进了密码学的飞速发展,在战争期间德国人共生产了大约10多万部“ENIGMA”密码机。西安交通大学桂小林5密码学的发展历史大致可以分为三个阶段:1)在1949年之前,是密码发展的第一阶段——古典密码体制。古典密码体制是通过某种方式的文字置换进行,这种置换一般是通过某种手工或机械变换方式进行转换,同时简单地使用了数学运算。虽然在古代加密方法中已体现了密码学的若干要素,但它只是一门艺术,而不是一门科学。2)从1949年到1975年,是密码学发展的第二阶段。1949年Shannon发表了题为《保密通信的信息理论》的著名论文,把密码学置于坚实的数学基础之上,标志着密码学作为一门学科的形成,这是密码学的第一次飞跃3)1976年至今,W.Diffie和M.Hellman在《密码编码学新方向》一文中提出了公开密钥的思想,这是密码学的第二次飞跃。1977年美国数据加密标准(DES)的公布使密码学的研究公开,密码学得到了迅速地发展。1994年美国联邦政府颁布的密钥托管加密标准(EES)和数字签名标准(DSS)以及2001年颁布的高级数据加密标准(AES),都是密码学发展史上一个个重要的里程碑。西安交通大学桂小林6西安交通大学桂小林73.2密码模型西安交通大学桂小林83.3经典密码体制经典密码体制(或称古典密码体制)采用手工或者机械操作实现加解密,相对简单。回顾和研究这些密码体制的原理和技术,对于理解、设计和分析现代密码学仍然有借鉴意义。变换和置换(transpositionandsubstitutionciphers)是两种主要的古典数据编码方法,是组成简单密码的基础。西安交通大学桂小林91)基于变换的加密方法变换密码是将明文字母互相换位,明文的字母保持相同,但顺序被打乱了。西安交通大学桂小林102)基于置换的加密方法置换密码就是明文中每一个字符被替换成密文中的另外一个字符,代替后的各字母保持原来位置。对密文进行逆替换就可恢复出明文。有四种类型的置换密码:1)单表置换密码:就是明文的一个字符用相应的一个密文字符代替。加密过程中是从明文字母表到密文字母表的一一映射。2)同音置换密码:它与简单置换密码系统相似,唯一的不同是单个字符明文可以映射成密文的几个字符之一,例如A可能对应于5、13、25或56,“B”可能对应于7、19、31或42,所以,同音代替的密文并不唯一。3)多字母组置换密码:字符块被成组加密,例如“ABA”可能对应于“RTQ”,ABB可能对应于“SLL”等。多字母置换密码是字母成组加密,在第一次世界大战中英国人就采用这种密码。4)多表置换密码:由多个简单的置换密码构成,例如,可能有5个被使用的不同的简单置换密码,单独的一个字符用来改变明文的每个字符的位置。西安交通大学桂小林11在置换密码中,数据本身并没有改变,它只是被安排成另一种不同的格式,有许多种不同的置换密码,有一种是用凯撒大帝的名字JuliasCaesar命名的,即凯撒密码。它的原理是每一个字母都用其前面的第三个字母代替,如果到了最后那个字母,则又从头开始算。字母可以被在它前面的第n个字母所代替,在凯撒的密码中n就是3。例如:明文:meetmeafterthetogaparty密文:PHHWPHDIWHUWKHWRJDSDUWB如果已知某给定密文是Caesar密码,穷举攻击是很容易实现的,因为只要简单地测试所有25种可能的密钥即可。西安交通大学桂小林1220世纪早期密码机西安交通大学桂小林133.4现代密码学现代密码技术的主要是指用电子技术、计算机技术等实现。现代密码学的最重要的原则之一是“一切秘密寓于密钥之中”,也就是说算法和其他所有参数都是可以公开的,只有密钥匙保密的。一个好的密码体制只通过保密密钥就能保证加密消息的安全。加密完成后,只有知道密钥的人才能正解密。任何人只要能够获得密钥就能解密消息,隐私密钥对于密码系统至关重要。密钥的传递必须通过安全的信道进行。西安交通大学桂小林141)流密码流密码(StreamCipher)也称序列密码,是对称密码算法的一种。流密码具有实现简单、便于硬件实施、加解密处理速度快、没有或只有有限的错误传播等特点,因此在实际应用中,特别是专用或机密机构中保持着优势,典型的应用领域包括无线通信、外交通信。密钥流产生器密钥k明文m密文c异或运算西安交通大学桂小林15西安交通大学桂小林162)分组密码分组密码就是数据在密钥的作用下,一组一组等长地被处理,且通常情况是明、密文等长。这样做的好处是处理速度快,节约了存储,避免了带宽的浪费。因此,其也成为许多密码组件的基础。另外,由于其固有的特点(高强度、高速率、便于软硬件实现)而成为标准化进程的首选体制。分组密码又可分为三类:置换密码、替换密码和乘积密码。西安交通大学桂小林17DES算法数据加密标准DES(DataEncryptionStandard)DES是一个分组加密算法,它以64位为分组对数据加密。同时DES也是一个对称算法,即加密和解密用的是同一个算法。它的密钥长度是56位(因为每个分组第8位都用作奇偶校验),可以是任意的56位的数,而且可以任意时候改变。18DES的描述DES利用56比特串长度的密钥K来加密长度为64位的明文,得到长度为64位的密文输入64比特明文数据初始置换IP在密钥控制下16轮迭代初始逆置换IP-1输出64比特密文数据DES算法框图交换左右32比特西安交通大学桂小林19DES算法:置换20初始置换IP和初始逆置换IP—1Li-1(32比特)Ri-1(32比特)Li(32比特)48比特寄存器扩充/置换运算48比特寄存器子密钥Ki(48比特)32比特寄存器代换/选择运算置换运算PRi(32比特)Li=Ri-1DES的一轮迭代轮函数F西安交通大学桂小林22DES算法:轮函数FE盒(3248bits)S盒(4832bits)P盒置换西安交通大学桂小林23DES算法:轮函数F第二步:将第一步输出结果的48位二进制数据与48位子密钥Ki按位作异或运算,结果自然为48位。然后将运算结果的48位二进制数据自左到右6位分为一组,共分8组。第三步:将8组6位的二进制数据分别进入8个不同的S盒,每个S盒输入6位数据,输出4位数据(S盒相对复杂,后面单独阐述),然后再将8个S盒输出的8组4位数据,依次连接,重新合并为32位数据。西安交通大学桂小林24DES算法:轮函数FS1-S8盒S10123456789101112131415014413121511831061259071015741421311061211953824114813621115129731050315128249175113141006131)S盒是DES的核心部分。通过S盒定义的非线性替换,DES实现了明文消息在密文消息空间上的随机非线性分布。2)S盒的非线性替换特征意味着,给定一组输入-输出值,很难预计所有S盒的输出。3)共有8种不同的S盒,每个S盒将接收的6位数据输入,通过定义的非线性映射变换为4位的输出。4)一个S盒有一个16列4行数表,它的每个元素是一个四位二进制数,通常为表示为十进制数0-15。5)S1盒如表所示,S盒与P盒的设计准则,IBM公司已经公布,感兴趣的同学可以查阅相关资料。25S-Box-iS-box:64(压缩)26S-Box-ii27S-Box对每个盒,6比特输入中的第1和第6比特组成的二进制数确定的行,中间4位二进制数用来确定的列。相应行、列位置的十进制数的4位二进制数表示作为输出。例如S2的输入为101001,则行数和列数的二进制表示分别是11和0100,即第3行和第4列,的第3行和第4列的十进制数为3,用4位二进制数表示为0011,所以的输出为0011。子密钥的产生k1(56位)(48位)ki(56位)(48位)64位密钥置换选择1C0(28位)D0(28位)循环左移循环左移C1(28位)D1(28位)循环左移循环左移Ci(28位)Di(28位)置换选择2置换选择2密钥表的计算逻辑循环左移:11912110232112421225213262142721528216129置换选择1(PC-1)和置换选择2(PC-2)总结-DES示意图31DES的安全性分析DES的安全性完全依赖于密钥,与算法本身没有关系。主要研究内容:密钥的互补性;弱密钥与半弱密钥;密文-明文相关性;密文-密钥相关性;S-盒的设计;密钥搜索。32弱密钥弱密钥:由密钥k确定的加密函数与解密函数相同,即。DES的弱密钥:如果各轮产生的子密钥一样,则加密函数与解密函数相同。DES至少有4个弱密钥:01010101010101011f1f1f1f0e0e0e0ee0e0e0e0f1f1f1f1fefefefefefefefe)()(1kkDESDES33半弱密钥半弱密钥:对于密钥k,存在一个不同的密钥,满足。DES的半弱密钥:子密钥生成过程中只能产生两个不同的子密钥或四个不同的子密钥,互为对合。DES至少有12个半弱密钥。*k)()(*kkDESDES34S-盒的设计原则S-盒的设计原理没有公开,一些原则如下:•所有S-盒的每一行是0,1,…,15的一个置换;•所有S-盒的输出都不是输入的线性函数或仿射函数;•S-盒的输入改变任意一位都会引起输出中至少两位发生变化;•对于任何输入x(6位),S(x)与S(x⊕001100)至少有两位不同;•对于任何输入x(6位),S(x)与S(x⊕00ef00)不相等,e,f取0或1;•对于任意一个输入位保持不变而其他五位变化时,输出中0和1的数目几乎相等。35针对DES的攻击方法攻击DES的方法主要有:密钥穷搜索攻击,DES算法总的密钥量为,1998年使用高级计算机的情况下,破译DES只需56小时;差分攻击;线性攻击,较有效的方法;相关密钥攻击等。175610236DES的破译1990年,以色列密码学家EliBiham和AdiShamir提出了差分密码分析法,可对DES进行选择明文攻击。线性密码分析比差分密码分析更有效西安交通大学桂小林37RSA算法RSA算法是1978年有Rivest、Shamir和Adleman提出的一种以数论构造的,并用他们三人的名字的首字母来命名。理论基础:整数素因子分解困难问题。给定大数n=pq,其中p和q为大素数,则由n计算p和q是非常困难的,即目前还没有算法能够在多项式时间内有效求解该问题。整个RSA密码体制主要由密钥产生算法、加密算法和解密算法三部分组成。西安交通大学桂小林38RSA算法西安交通大学桂小林39RSA算法西安交通大学桂小林40THANKS!Q,A
本文标题:《物联网信息安全》(桂小林版)(第3章)-数据安全详解
链接地址:https://www.777doc.com/doc-5493902 .html