《PCI数据加密技术与应用.ppt》由会员分享,可在线阅读,更多相关《PCI数据加密技术与应用.ppt(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第九章数据加密技术与应用计算机网络安全主要涉及传输中的数据和存储中的数据安全,它要求防止攻击者非法地获悉数据与修改数据。为此需要做到数据的保密性和完整性。可通过现代密码学解决以上存在的问题。密码学不仅是编码与破译的学问,而且包括密钥的管理安全、协议设计安全、单向散列函数、数字签名与认证、鉴别技术等内容。一、概述1、基本概念明文:信息的原始形式(记为P)。密文:明文经过变换加密后的形式(记为C)。加密:由明文变成密文的过程(记为E)。加密通常是由加密算法来实现的。解密:由密文还原成明文的过程(记为D),解密通常是由解密算法来实现的。密钥:为了有效地控制加密和解密算法的实现,在其处理过程中要有通信
2、双方掌握的专门信息参与,这种专门信息称为密钥(key,记为K)。通信加密:在传输过程中的数据加密。文件加密:将存储的数据进行加密。按通信层次分:按通信层次分:结点加密:OSI模型的一、二层(物理层和链路层)数据加密,仅对报文加密。链路加密:链路层进行数据加密。对数据和协议信息加密。端端加密:六、七层(表示层和应用层)加密。面向网络高层主体加密,协议信息不加密。任何加密系统应满足的基本要求:(1)密码系统是容易使用的(2)加、解密换必须对所有密钥均有效。(3)密码系统的安全性仅仅依赖密钥的保密,而与算法无关。数据加密常用的算法:(1)传统密钥加密算法(2)对称密钥加密算法(3)公开密钥加密算法
3、2数据加密模型密码技术通过信息的变换或编码,将机密的敏感信息变换成黑客难以读憧购乱码型文字,以此达到两个目的:其一,使不知道如何解密的黑客不可能从其截获的乱码中得到任何有意义的信息;其二,使黑容不可能伪造任何乱码型的信息。一般把要加密的报文(称为明文,P),按照以密钥(key)为参数的函数进行变换,通过加密过程而产生的输出称为密文(C)或密码文件。破译密码的技术称为密码分析。把设计密码的技术(加密技术)和破译密码的技术(密码分析)总称为密码技术;加密算法和解密算法是在密钥的控制下进行的,加密和解密过程中使用的密钥分别称为加密密钥和解密密钥。二、传统的加密方法传统的加密方法,其密钥是由简单的字符
4、串组成的,它可以选择许多加密形式中的一种。只要有必要,就可以经常改变密钥。因此,这种基本加密模型是稳定的,是人所共知的,它的好处就在于可以秘密而又方便地变换密钥,从而达到保密的目的。传统的加密方法可以分为两大类:替代密码替代密码和换位密码换位密码。1、替代密码替代密码替代密码替代密码替代密码是用一组密文字母来代替一组明文字母以是用一组密文字母来代替一组明文字母以隐藏明文,但保持明文字母的位置不变。隐藏明文,但保持明文字母的位置不变。在替代法加密体制中,使用了密钥字母表。它可以在替代法加密体制中,使用了密钥字母表。它可以由一个明文字母表构成,也可以由多个明文字母表由一个明文字母表构成,也可以由多
5、个明文字母表构成。由一个字母表构成的替代密码,称为构成。由一个字母表构成的替代密码,称为单表密单表密单表密单表密码码码码,其替代过程就是在明文和密码字符之间进行一,其替代过程就是在明文和密码字符之间进行一对一的映射。如果是由多个字母对一的映射。如果是由多个字母 表构成的替代密表构成的替代密码,称为码,称为多表密码多表密码多表密码多表密码,其替代过程与前者不同之处在,其替代过程与前者不同之处在于明文的同一字符可在密码文中表现为多种字符。于明文的同一字符可在密码文中表现为多种字符。因此,在明码文与密码文的字符之间的映射是一对因此,在明码文与密码文的字符之间的映射是一对多的。多的。(1)单表替代密码
6、凯撒密码是最古老的替代密码,以英文26个字母为例,它用D表示a,用E表示b,用F表示c,用C表示z,密文字母相对明文字母循环左移了3位,因此,又称为循环移位密码。这种映射关系表示为如下函数:F(a)=(a十k)modn其中:a表示明文字母,n为字符集中字母个数,k为密钥。凯撒密码映射表凯撒密码映射表明文明文A AB BC CD DE EF FG GH HI IJ JK KL LMM位置数位置数0 01 12 23 34 45 56 67 78 89 9101011111212密密文文D DE EF FG GH HI IJ JK KL LMMN NO OP P明文明文N NO OP PQ QR
7、RS ST TU UV VWWX XY YZ Z位置数位置数13131414151516161717181819192020 2121 2222232324242525密文密文Q QR RS ST TU UV VWWX XY YZ ZA AB BC C假设假设假设假设k=3k=3,则明文则明文则明文则明文P=COMPUTER SYSTEMSP=COMPUTER SYSTEMS可加密为:可加密为:可加密为:可加密为:f(C)=(2+3)mod 26=5=Ff(C)=(2+3)mod 26=5=F f(O)=(14+3)mod 26=17=R f(O)=(14+3)mod 26=17=R f(S)
8、=(18+3)mod 26=21=V f(S)=(18+3)mod 26=21=V所以密文所以密文所以密文所以密文C=C=E Ek k(P(P)=FRPSXWHUVBVWHPV)=FRPSXWHUVBVWHPV 由前表可知,由密文C恢复明文非常容易。显然,只要知道密钥K,就可构造一张映射表。其加密和解密均可根据此映射表进行。凯撤密码的优点是密钥简单易记。但它的密码文与明码文的对应关系过于简单,故安全性很差。(2)多表替代密码周期替代密码是一种常用的多表替代密码,又称费杰尔密码。循环的使用有限个字母来实现替代。采用的算法:f(a)=(a+Bi)modn(i=1,2,3n)例如,COOKIE为密钥
9、,重复使用密钥进行加密和解密。密钥COOKIECOOKIECOO明文COMPUTERSYSTEMS密文ECA.G.AG费杰尔密码表行行 列列ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZAABCDEFGHIJKLMNOPQRSTUVWXYZAABCDEFGHIJKLMNOPQRSTUVWXYZBBCDEFGHIJKLMNOPQRSTUVWXYZABBCDEFGHIJKLMNOPQRSTUVWXYZACCDEFGHIJKLMNOPQRSTUVWXYZABCCDEFGHIJKLMNOPQRSTUVWXYZAB.MMNOPQRSTUVWXYZ
10、ABCDEFGHIJKLMMNOPQRSTUVWXYZABCDEFGHIJKLOOPQRSTUVWXYZABCDEFGHIJKLMNOOPQRSTUVWXYZABCDEFGHIJKLMNSSTUVWXYZABCDEFGHIJKLMNOPQRSSTUVWXYZABCDEFGHIJKLMNOPQR加密过程:加密过程:以明文字母选择列,以密钥字母选择行,两者的交点就是加密生成的密文。解密过程:解密过程:以密钥字母选择行,从中找到密码文字母,密码文字母所在列的列名即为明码文字母。2、换位密码换位密码是采用移位法进行加密的。它把明文中的字母重新排列,本身不变,但位置变了,换位密码是靠重新安排字母的次序,
11、而不是隐藏他们。最简单的例子是:把明文中的字母的顺序倒过来写,然后以固定长度的字母组发送或记录,如:明文:computersystems密文:smetsysretupmoc换位密码有列换位法列换位法和矩阵换位法矩阵换位法两种。(1)列换位法将明文字符分割成为若干个(例如5个)一列的分组,并按一组后面跟着另一组的形式排好,形式如下:c1c2c3c4c5c6c7c8c9c10最后,不全的组可以用不常使用的字符或a,b,c填满。密文是取各列来产生的:c1c6c2c7c3c8.c5c10.例:明文:WHERE ARE YOU FROM 进行排列:W H E R E A R EY O U FR O M
12、A则密文为:WEYRHAOOERUMREFA 密钥为4 (2)矩阵换位法把明文中的字母按给定的顺序安排在一矩阵中,然后用另一种顺序选出矩阵的字母来产生密文。例:明文ENGINEERING按行排在34矩阵中,最后一行不全用ABC填充。12341234ENGI给置换f=(1234)(2413)NIEGNEERERNEINGANAIG得到密文:NIEGERNENAIG密钥为:mxn=34,以及f=(1234)(2413)即:k=(mn,f)三、数据加密标准DES与IDEA1、数据加密标准数据加密标准DES思想思想数据加密标准DES(Data Encryption Standard)是美国国家标准局开
13、始研究除国防部以外的其他部门的计算机系统的数据加密标准。1977年1月,美国政府采纳1BM公司设计的方案作为非机密数据的正式数据加密标准(DES)。DES被授权用于所有公开的和私人的非保密通信场合,后来它又曾被国际标准组织采纳为国际标准。对加密算法要求要达到以下几点:对加密算法要求要达到以下几点:(1)必须提供高度的安全性;(2)具有相当高的复杂性,使得破译的开销超过可能获得的利益,同时又便于理解和掌握;(3)安全性应不依赖于算法的保密,其加密的安全性仅以加密密钥的保密为基础;(4)必须适用于不同的用户和不同的场合;(5)实现经济、运行有效;(6)必须能够验证,允许出口。DESDES是是一一种
14、种单单钥钥密密码码算算法法,它它是是一一种种典典型型的的按按分分组组方方式式工工作作的的密密码码,是是两两种种基基本本的的加加密密组组块块替替代代和和换换位位的的细细致致而而复复杂杂的的结结构构。它它通通过过反反复复依依次次应应用用这这两两项项技技术术来来提提高高其其强强度度,经经过过总总共共1616轮轮的的替替代代和和换换位位的的变变换换后后,使使得得密密码码分分析析者者无无法法获获得得该该算算法法一一般般特特性以外更多的信息。性以外更多的信息。对对于于这这种种加加密密,除除了了尝尝试试所所有有可可能能的的密密钥钥外外,还还没没有有已已知知技技术术可可以以求求得得所所用用的的密密钥钥。当当用
15、用5656位位密密钥钥时时,可可能能的的组组合合大大于于7 72102106 6种种,所所以以想想用用穷穷举举法法来来确确定定某某一一密密钥钥的的机机会会是是极极小小的的。如如果果采采用用穷穷举举法法进进行行攻攻击击的的话话,即即使使:一一微微秒秒能能穷穷举举一一个个密密钥钥,也也要要 花花费费22832283年年的的时时间间。因因此此,这这种种加加密密几几乎乎不不存存在在什什么威胁。么威胁。DESDES算法现已在算法现已在VLSIVLSI芯片上实现了。芯片上实现了。2、DES算法算法DES算法是对称的,既可用于加密又可用于解密。DES算法将输入的明文分为64位的数据分组,使用64位的密钥进行
16、变换,每个64 位明文分组数据经过初始置换、16次迭代和逆初始置换3个主要阶段,最后输出得到64位密文。DES加加密密算算法法过过程程:初始置换IP、16次迭代过程、逆置换。3、DES的安全性评论的安全性评论DESDES的设计是密码学历史上的一个创新。自从的设计是密码学历史上的一个创新。自从DESDES问世至今,对它多次的分析研究,从未发现其算法问世至今,对它多次的分析研究,从未发现其算法上的破绽。利用穷举法搜索攻击,只能说明上的破绽。利用穷举法搜索攻击,只能说明5656位的位的密钥可能太少;密钥可能太少;DESDES的迭代次数可能太少;的迭代次数可能太少;但直到但直到19981998年,电子
17、边境基金会(年,电子边境基金会(EFFEFF)动用一台动用一台价值价值2525万美元的高速电脑,在万美元的高速电脑,在56h56h内利用穷尽搜索内利用穷尽搜索的方法破译的方法破译5656位密钥长度的位密钥长度的DESDES,才证明上述论断。才证明上述论断。19821982年,已经有办法攻破年,已经有办法攻破4 4次迭代的次迭代的DESDES系统了。系统了。19851985年,对于年,对于6 6次迭代的次迭代的DESDES系统也已破译。系统也已破译。19901990年,以色列学者发明并运用差分分析方法证明,通年,以色列学者发明并运用差分分析方法证明,通过已知明文攻击,任何少于过已知明文攻击,任何
18、少于1616次迭代的次迭代的DESDES算法都算法都可以用比穷举法更有效的方法。可以用比穷举法更有效的方法。4、IDEA算法算法IDEA算法又叫国际数据加密算法,是瑞士联邦技术学院开发的一种面向数据分组块的数据加密标准。相对于DES的56位密钥,它使用128位密钥,每次加密一个64位的数据块。IDEA算法的安全性相对DES算法有很大的提高,其密钥是128位,在穷举攻击的情况下,需要经过2128次加密才能恢复出密钥。假设一台计算机每秒产生和运行10亿个密钥,它将检测1013年。四、公开密钥加密算法公开密钥密码体制是现代密码学的最重要的发明。与“公开密钥密码体制”相对应的是“传统密码体制”,又称“
19、对称密钥密码体制”。其中用于加密的密钥与用于解密的密钥完全一样,在对称密钥密码体制中,加密运算与解密运算使用同样的密钥。通常,使用的加密算法比较简便高效,密钥简短,破译极其困难。但是,在公开的计算机网络上安全地传送和保管密钥是一个严峻的问题。在“公开密钥密码体制”中,加密密钥不同于解密密钥,加密密钥公之于众,谁都可以用;而解密密钥只有解密人自己知道。它们分别称为“公开密钥”(publickey)和“秘密密钥”(private一key)。1公开密钥加密算法的特点公开密钥密码体制算法:使用一个加密算法公开密钥密码体制算法:使用一个加密算法E E和一个和一个解密算法解密算法D D,它们彼此完全不同,
20、根据已选定的,它们彼此完全不同,根据已选定的E E和和D D,即使已知,即使已知E E的完整描述,也不可能推导出的完整描述,也不可能推导出D D。密钥对密钥对产生源产生源2使用公开密钥加密算法进行数字签名书信或文件是根据亲笔签名或印章来证明其真实性的。但在计算机网络中传送的文件又如何盖章呢?这就是数字签名所要解决的问题。数字签名必须保证做到以下3点:(1)接收者能够核实发送者对报文的签名;(2)发送者事后不能抵赖对报文的签名;(3)接收者不能伪造对报文的签名。3RSA密码系统RSA算法是最著名的公开密码体制。基于大数分解的难度。其公开密钥和私人密钥是一对大素数的函数,从一个公开密钥和密文中恢复
21、出明文的难度等价于分解两个大素数之积。RSA算法过程:首先是设计密钥,然后是对消息加密,最后是对密文解密。(1)设计密钥在离线方式下,先产生两个足够大的强质数p、q。可得p与q的乘积为n=pxq。再由p和q算出另一个数z=(p-1)(q-1),然后再选取一个与z互素互素的奇数e,称e为公开指数;从这个e值可以找出另一个值d,并能满足ed=1 mod(z)条件。舍弃p和q(但绝不能泄露)。由此而得到的两组数(n,e)和(n,d)分别被称为公开密钥和秘密密钥,或简称公钥和私钥。(2)加密对于明文M,用公钥(n,e)加密可得到密文C。C=Mmod(n)e(3)解密对于密文C,用私钥(n,d)解密可得
22、到明文M。M=Cmod(n)当定义用私钥(n,d)先进行解密后,然后用公钥(n,e)进行加密,就是数字签名。d(4)举例说明选取p=3,q=5,则n=pxq=15,z=(p-1)(q-1)=8选取e=11(大于p和q的质数),通过d11=1mod8,计算出d=3得到公开密钥:(n,e)=(15,11)私人密钥:(n,d)=(15,3)假定明文M为整数13。则密文C为C=Mmodn=13mod15=1,792,160,394,037mod15=7复原明文M为:M=Cmodn=7mod15=343mod15=13e11d3(5)优缺点优点优点 RSA算法是第一个能同时用于加密和数字签名的算法,也易
23、于理解和操作。RSA是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。该算法的加密密钥和加密算法分开,使得密钥分配更为方便。它特别符合计算机网络环境。对于网上的大量用户,可以将加密密钥用电话簿的方式印出。如果某用户想与另一用户进行保密通信,只需从公钥簿上查出对方的加密密钥,用它对所传送的信息加密发出即可。对方收到信息后,用仅为自己所知的解密密钥将信息脱密,了解报文的内容。由此可看出,RSA算法解决了大量网络用户密钥管理的难题,这是公钥密码系统相对于对称密码系统最突出的优点。缺点缺点1)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。2)安全性,RSA的安全性依赖于大数的因子分解,但并没有从理论上证明破译RSA的难度与大数分解难度等价。目前,人们已能分解140多个十进制位的大素数,这就要求使用更长的密钥,速度更慢;另外,目前人们正在积极寻找攻击RSA的方法,如选择密文攻击。3)速度太慢,RSA的分组长度太大。为了速度问题,目前人们广泛使用单,公钥密码结合使用的方法,优缺点互补:单钥密码加密速度快,人们用它来加密较长的文件,然后用RSA来给文件密钥加密,极好的解决了单钥密码的密钥分发问题。
限制150内