[精选]第2章信息安全机制56813

上传人:沈*** 文档编号:243984308 上传时间:2024-10-01 格式:PPTX 页数:73 大小:547.07KB
返回 下载 相关 举报
[精选]第2章信息安全机制56813_第1页
第1页 / 共73页
[精选]第2章信息安全机制56813_第2页
第2页 / 共73页
[精选]第2章信息安全机制56813_第3页
第3页 / 共73页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,第,2,章,信息安全机制,本章学习目标,通过本章学习,读者应该掌握以下内容:,对称加密机制及典型算法,非对称加密机制及算法,数字签名的原理,数据完整性验证的原理及典型算法,PGP,的使用,一个密码体制被定义为一对,数据变换,。,2.1 加密机制,2.1.1 密码学基础知识,明文,明文,密文,加密变换,解密变换,加密变换,将,明文,和一个称为,加密密钥,的独立数据值作为输入,输出密文;,解密变换,将,密文,和一个称为,解密密钥,的数据值作为输入 。,加密,解密,M:明文 C:密文 K,E,:加密密钥 K,D,:解密密钥,M,C,K,E,K,D,C,M,加 密,解 密,密码算法用于加密和解密的数学函数。,受限制的算法,密码的安全性依赖于密码,算法,的保密,其保密性依赖于算法的安全性,不易控制。,基于密钥的算法,密码体制的加密及解密,算法公开,,而,密钥,(即算法中的若干个可变参数)保密,其安全性依赖于密钥的安全性。,2.1.2 对称加密算法,加密:,E,k,(M)=C,解密:,D,k,(C)=M,序列密码算法(,stream cipher,),分组密码算法,(block cipher),对称密码算法有很多种,:,DES、Triple DES、IDEA、RC2、RC4、,RC5、RC6、GOST、FEAL、LOKI,加密过程,加密过程主要是,重复,使用,混乱,和,扩散,两种技术。,混乱,是改变信息块,使输出位和输入位无,明显的统计关系。,扩散,是将明文位和密钥的效应传播到密,文的其它位。,DES,是对称密钥加密的算法,,DES,算法大致可以分成四个部分:,(1)初始,变换,(2)迭代过程,(3)逆置换和,(4)子密钥生成,2.1.3 DES,算法,DES,算法描述,(1),初始,变换,:,首先把明文分成若干个,64 位的分组,,然后通过一个,初始变换(IP),将一个明文分组分成左半部分(L,0,)和右半部分(R,0,),各为32bit。,(2),迭代过程:,对L,i,、R,i,然后进行,16轮,完全相同的运算(称为,函数f,),在运算过程中数据与密钥相结合。,(3),逆置换和 :,经过16轮运算,左、右两部分合在一起经过一个,末转换,(初始转换的逆置换IP,-1,),输出一个64bit的密文分组。,图,6.5,DES,加密原理示意图,返回本节,密钥位移位,从密钥的,56,位中选出,48,位,。通过一个,扩展置换,将数据的左半部分扩展成,48,位,并通过一个,异或操作,与,48,位密钥结合,通过,8个S盒,(substitution box),将这,48,位替代成新的,32,位,再依照,P-盒置换,一次。,然后通过另一个异或运算,将复杂函数f的输出与左半部分结合成为新的右半部分。,每一轮的运算过程:,三重DES,如上所言,DES一个致命的缺陷就是,密钥长度短,。对于当前的计算能力,56位的密钥长度已经抗不住穷举攻击,而DES又不支持变长密钥。但算法可以一次使用多个密钥,从而等同于更长的密钥。,三重DES算法表示为:,C=E,K3,(D,K2,(E,K1,(M),通常取K,3,=K,1,,则上式变为:,C=E,K1,(D,K2,(E,K1,(M),DES 的加密强度,1995年,一百万美元制造出的机器平均3.5小时(最多不超过7小时),能破译56位密钥的DES算法。,1997年1月28日美国RSA公司悬赏1万美元破译56位DES密码,1997年3月13日,Internet数万志愿者协助科罗拉多州1程序员,96天破译。,研究还发现,机器的价格和破译速度之比是成线性的。,摩尔定律:大约每经18个月计算机的计算能力就会翻一番。,这意味着每5年价格就会下降到原来的百分之十,所以在1995年所需要的一百万美元到了2000年就只用花十万美元。,2002年11月8日的新闻说到,,破解109位密码,1万台PC要花费549天,。那么,单台PC破解109位密码的能力也就需要549万天,约合15041年多一点。,现在的技术先进多了,普通PC的运算能力也比文中提到的100万美元的机器强。使用普通PC现在穷举56位DES大约需要2.5小时(每秒运算30,000次DES算法)。,使用快速DES算法可以把破解速度再提高100倍。,应该如何决定密钥的长度呢?密钥的长度应该是越大越好!如果你的软硬件允许,就应该使用128位的密钥。,加密成本低,速度快.,个人的电脑都能够承受128位密钥的对称加密算法的加/解密运算,,无论是速度还是成本上,56位和128位位密钥的加密差别不大。,2.1.4,RC5,算法,RC5,是,Ron Revist,发明的。,RC5,是,具有参数变量,的,分组,密码算法,其中可变的参量为:,分组的大小、密钥的大小,和,加密的轮次,。该算法主要使用了三种运算:,异或、加、循环,。,研究表明:,对15轮的,RC5,,差分攻击需要,2,68,个明文,而这里最多只可能有,2,64,个明文,所以对,15,轮以上的,RC5,的攻击是失败的。,Rivest,推荐至少使用,12,轮。,2.1.5,非对称加密体制,公开密钥体制把信息的,加密密钥和解密密钥分离,,通信的每一方都拥有这样的一对密钥。,加密密钥,可以像电话号码一样对外,公开,,由发送方用来加密要发送的原始数据;,解密密钥,则由接收方秘密,保密,,作为解密时的私用密钥。,2.1.5,非对称加密体制,公开密钥加密算法的核心是一种特殊的数学函数,单向陷门函数,(,trap-door one way function,)。,该函数从一个方向求值是容易的,但其,逆变换却是极其困难,的,因此利用公开的加密密钥只能作正向变换,而逆变换只有依赖于私用的解密密钥这一“陷门”才能实现。,2.1.5,非对称加密体制,优点:,无需对密钥通信进行保密,,所需传输的只有公开密钥。,这种密钥体制还可以用于,数字签名,,即信息的接收者能够验证发送者的身份,而发送者在发送已签名的信息后不能否认。,被认为是一种比较理想的的计算密码的方法。,2.1.5,非对称加密体制,缺陷:加密和解密的,运算时间比较长,,这在一定程度上限制了它的应用范围。,公认比较安全的是RSA算法,及其变种Rabin算法。算法表示为:,E,k1,(M)=C,D,k2,(C)=M,D,k2,(E,k1,(M)=M,(k1和k2为一对密钥中的私有密钥和公开密钥),2.1.6 RSA,算法,RSA算法的思路如下:为了产生两个密钥,先,取两个大素数,p和q,。为了获得最大程度的安全性,两数的长度一样。计算乘积,n=p*q,随机选取,加密密钥,e,,,使e和(p-1)*(q-1)互素,。,计算解密密钥d,d满足ed1 mod (p-1)(q-1),即,de,-1,mod (p-1)(q-1)(或ed mod z =1,),。则,e和n为公开密钥,,,d是私人密钥,。,注:1、两个大数p和q,应立即丢弃,不让人知道。,2、一般选择公开密钥,e比私人密钥d小。最常选用的e值有三个3,17,65537。,2.1.6 RSA,算法,加密消息时,首先将消息分成比n小的数据分组(采用二进制数,选到小于n的2的最大次幂),设m,i,表示消息分组,c,i,表示加密后的密文,它与m,i,具有相同的长度。,加密过程:c,i,=m,i,e,(mod n),解密过程:m,i,=c,i,d,(mod n),2.1.6 RSA,算法,举例1:,取两个质数,p,=11,,q,=13,,p和q的乘积为,n,=pq=143,,z,=(p-1)(q-1)=120;,随机,选,e,=7 (与z=120互质的数),则公开密钥=(n,e)=(143,7),选取d, 使得 (ed) mod Z=1,因为ed=7103=721,满足ed mod z =1;,(即721 mod 120=1成立),p所以对于这个e值,可以算出其逆:d=103。,则秘密密钥=(n,d)=(143,103)。,举例1:,取两个质数,p,=11,,q,=13,p和q的乘积为,n,=pq=143,,z,=(p-1)(q-1)=120;,随机,选,e,=7 (与z=120互质的数),则公开密钥=(n,e)=(143,7)。,选取d, 使得 (ed) mod Z=1,因为ed=7103=721,满足ed mod z =1;(即721 mod 120=1成立),所以对于这个e值,可以算出其逆:d=103。,则秘密密钥=(n,d)=(143,103)。,公开密钥=(n,e)=(143,7),加密过程:c,i,=m,i,e,(mod n),= m,i,7,(mod 143),秘密密钥=(n,d)=(143,103),解密过程:m,i,=c,i,d,(mod n),= c,i,103,(mod 143),RSA的速度和安全性,硬件实现 : RSA 比DES 慢1000倍,软件实现 : RSA 比DES 慢100倍,RSA-129(429位二进制,110位十进制,),已由包括五大洲43个国家600多人参加,用1600台电脑同时产生820条指令数据,通过Internet网,耗时8个月,于1994年4月2日利用二次筛法分解出为64位和65位的两个因子,原来估计要用4亿年。,(所给密文的译文为“这些魔文是容易受惊的鱼鹰”。这是有史以来最大规模的数学运算。),RSA的速度和安全性,RSA,-,640 ( 193,位十进制,),由,德国信息技术安全局的一个小组,于,2005,年11月,,用80个Opetron CPU算了5个月,他们将因此而获得20000美元的奖金,。,310 7418240490 0437213507 5003588856 7930037346 0228427275 4572016194 8823206440 5180815045 5634682967 1723286782 4379162728 3803341547 1073108501 9195485290 0733772482 2783525742 3864540146 9173660247 7652346609,RSA 2048 ( 617,位十进制,)的分解奖金高达20万美元。,2.1.7 密钥与密码破译方法,1、密钥的穷尽搜索,破译密文最简单的方法,就是尝试所有可能的钥匙组合。,2、密码分析,在不知道钥匙的情况下,利用数学方法破译密文或找到秘密钥匙的方法,称为密码分析。,密码分析有两个基本目标:利用密文,发现明文,利用密文发现钥匙。,3、其它密码破译方法(欺骗偷窥垃圾分析),2.2 数据完整性机制,密码学除了为数据提供,保密,方法以外,还可以用于其他的作用:,鉴别,(Authentication),:消息的接收者可以确定消息的来源,攻击者不可能伪装成他人。,抗抵赖,(,Nonrepudiation),:发送者事后不能否认自己已发送的消息。,完整性,(Integrity),:消息的接收者能够验证消息在传送过程中是否被修改;攻击者不可能用假消息来代替合法的消息。,2.2.1,数据完整性验证,消息的发送者用要发送的消息和一定的算法生成一个,附件,,并将附件与消息一起发送出去;消息的接收者收到消息和附件后,用同样的算法与接收到的消息生成一个新的附件;把新的附件与接收到的附件相比较。,2.2.2 单向散列函数,单向散列函数(,one-way hash function),也叫压缩函数、收缩函数,是现代密码学的中心。,散列函数,是把,可变长度,的输入串(叫做,预映射,)转换成,固定长度,的输出串(叫做,散列值,)的一种函数。,利用单向散列函数生成消息指纹可有两种情况:,不带密钥的单向散列函数,,这种情况下,任何人都能验证消息的散列值;,带密钥的散列函数,,散列值是预映射和密钥的函数,这样只有拥有密钥的人才能验证散列值。,单向散列函数的算法实现有很多种,如Snefru算法、N-Hash算法、MD2算法、MD4算法、MD5算法,SHA-1算法等等。,填充消息,使用其长度恰好为一个比512的倍数仅小64bit的数。,填充前消息,“1”,所需位数的“0”,64bit填充前消息的长度值,这样填充后,可使消息的长度恰好为512的整数倍,且保证不同消息在填充后不相同。,2.2.3,消息摘要算法,MD5,算法描述:,MD5以,512bit,的分组来处理,输入,文本,每一分组又划分为,16个32bit,的子分组。算法的,输出,由,4个32bit,分组组成,将它们级联形成一个128bit的散列值。,进入算法主循环,循环次数 消息中512bit分组的数目。,将链接变量A、B、C、D分别复制给a、b、c、d,,每次循环,进行,四轮运算,每轮16次操作,,分别针对一个512bit消息分组中的16个32bit子分组。,每次操作过程如下:,对a、b、c、d中,任意三个,作,一次非线性函数运算,所得结果第四个变量消息的一个子分组常数,所得结果,向左环移,一个,不定数, a、b、c、d中,任意一个,a、b、c、d中,任意一个,A、B、C、D (分别)a、b、c、d,再对下一个子分组继续运行算法,2.3 数字签名机制,数字签名(Digital Signature)是解决网络通信中特有的安全问题的有效方法。特别是针对通信双方发生,争执,时可能产生的如下安全问题:,冒充,否认,伪造,公证,2.3 数字签名机制,数字签名机制需要实现以下几个目的:,l,可信,:消息的接收者通过签名可以确信消息确实来自于声明的发送者。,l,不可伪造,:签名应是独一无二的,其它人无法假冒和伪造。,l,不可重用,:签名是消息的一部分,不能被挪用到其它的文件上。,l,不可抵赖,:签名者事后不能否认自己签过的文件。,2.3.1 数字签名的基本原理,数字签名实际上是附加在数据单元上的一些数据或是对数据单元所作的密码变换,,这种数据或变换能使数据单元的接收者确认数据单元的,来源和数据的完整性,,,并保护数据,防止被人(如接收者)伪造。,签名机制的本质特征是该签名只有,通过签名者的私有信息才能产生,,也就是说,一个签名者的,签名只能唯一地由他自己产生,。当收发双方发生争议时,第三方(仲裁机构)就能够根据消息上的数字签名来裁定这条消息是否确实由发送方发出,从而实现抗抵赖服务。另外,数字签名应是所发送数据的函数,即,签名与消息相关,,从而防止数字签名的伪造和重用。,2.3.2 数字签名的实现方法,实现数字签名有很多方法,目前数字签名采用较多的是公钥加密技术,如基于RSA Data Security公司的PKCS(Public Key Cryptography Standards)、DSA(Digital Signature Algorithm)、x.509、PGP(Pretty Good Privacy)。,1994年美国标准与技术协会公布了数字签名标准(DSS)而使公钥加密技术广泛应用。同时应用散列算法(Hash)也是实现数字签名的一种方法,2.3.2 数字签名的实现方法,1、使用对称加密和仲裁者实现数字签名,是否可以实现数字签名的目的呢?,第三方是A、B双方都信赖的;,A与第三方之间使用的签名不可为他人伪造;,A与B之间,A的签名不可为B伪造;,A与B之间,A的签名不可抵赖。,2、使用公开密钥体制进行数字签名,公开密钥体制的发明,使数字签名变得更简单,它不再需要第三方去签名和验证。签名的实现过程如下:,l,A,用他的私人密钥加密消息,从而对文件签名;,l,A,将签名的消息发送给,B,;,l,B,用,A,的公开密钥解消息,从而验证签名,是否可以实现数字签名的目的呢?,A的签名他人不可伪造;,B可确定消息来源,即可信;,A不可抵赖;,A的签名不可重用。,3、使用公开密钥体制与单向散列函数进行数字签名,采用公开密钥的数字签名,假设A(公开密钥为E,A,秘密密钥为D,A,)要发送一个电子文件P给B(公开密钥为E,B,秘密密钥为D,B,)。A、B双方只需经过下面三个步骤即可,A用其私钥加密文件P,这便是签字过程,A将加密的文件送到B,B用A的公钥解开A送来的文件,其中密钥之间应满足,D,A,(E,A,(P)=P和D,B,(E,B,(P)=P,E,A,(D,A,(P)=P和E,B,(D,B,(P)=P,采用公开密钥的数字签名,签字是可以被确认的,因为B是用A的公钥解开加密文件的,这说明原文件只能被A的私钥加密而只有A才知道自己的私钥。,签字是无法被伪造的,因为只有A知道自己的私钥。因此只有A能用自己的私钥加密一个文件。,签字是无法重复使用的,签字在这里就是一个加密过程,自己无法重复使用。,文件被签字以后是无法被篡改的,因为加密后的文件被改动后是无法被A的公钥解开的。,签字具有无可否认性,因为除A以外无人能用A的私钥加密一个文件。,数字签名标准,DSA(Digital Signature Algorithm)被美国国家标准技术研究所(NIST)作为DSS。,DSS最早发表于1991年,并根据公众对该体制安全性担心的反应在1993年进行了修改。1996年又进行了更进一步的小修改。,DSA算法,算法中应用了下述参数:,p:L位长的素数。L是64的倍数,范围是512到1024;,q:p - 1的160bits的素因子;,g:g=,h,(p-1)/q,mod p,h满足h1;,x:秘密密钥,正整数,x q;,y:y =,g,x,mod p,( p, q, g, y )为公钥;,k为随机数,0kq;,H(x):单向Hash函数。,DSA算法,签名过程如下:,产生随机数k,k q;,计算 r = (,g,k,modp)modq,s = ( k,-1,(H(m)+xr)modq,签名结果是( m, r, s )。,验证时计算,w = s,-1,modq,u1 = (H(m)w)modq,u2 = (r w) mod q,v = (g,u1,y,u2,)modp)modq,若v = r,则认为签名有效。,DSA算法示例,选择p=124540019,q=17389;q是p-1的一个因子,p-1/q=7162.,A选择一个随机数k=110217528; g=k,7162,modp =10083255;选择x=12496,y=,g,12496,modp= 119946265.秘密密钥为12496.,A产生签名。取随机数k=9557,计算r=34.假设计算出的Hash值h(m)=5246,则s=13049.因此消息m的签名为(34;13049),3、使用公开密钥体制与单向散列函数进行数字签名,4、加入时间标记的签名,验证签名的时效性,5、多重签名,多人签名一份文件,6、盲签名,2.4,复合型加密系统,PGP,2.4.1 PGP,简介,2.4.2 PGP,应用系统介绍,一、申请钥匙对 pgpkeys,Server, send to 上载公钥,Server, search 搜索别人的公钥,Server, search 搜索别人的公钥,二、加密和签名邮件,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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