·建站首页 ·钻石 ·繁體
您的位置: 中国建站之家 -> 网络安全 -> 网络安全 -> RSA公钥密码体制安全性分析

RSA公钥密码体制安全性分析

作者:不详  来源:本站整理  发布时间:2005-7-15 19:00:50  发布人:admin

摘要:随着通信的飞速发展,信息安全也越来越显得重要。计算机密码体制的基本思想就是将要保护的信息变成伪装信息,只有合法的接收者才能从中得到真实的信息。密码体制有对称密钥体制和非对称密钥体制之分,本文所重点讲述的RSA公钥体制便为非对称密钥体制,也叫做公开密钥体系。

关键词:RSA公钥密码体制 优势 安全性

引言

RSA密码系统是较早提出的一种公开钥密码系统。1978年,美国麻省理工学院(MIT)的Rivest,Shamir和Adleman在题为《获得数字签名和公开钥密码系统的方法》的论文中提出了基于数论的非对称(公开钥)密码体制,称为RSA密码体制。RSA是建立在“大整数的素因子分解是困难问题” 基础上的,是一种分组密码体制。

介绍公钥密码体制(背景)

1、对称密码体制

对称密码体制是一种传统密码体制,也称为私钥密码体制。在对称加密系统中,加密和解密采用相同的密钥。因为加解密密钥相同,需要通信的双方必须选择和保存他们共同的密钥,各方必须信任对方不会将密钥泄密出去,这样就可以实现数据的机密性和完整性。对于具有n个用户的网络,需要n(n-1)/2个密钥,在用户群不是很大的情况下,对称加密系统是有效的。但是对于大型网络,当用户群很大,分布很广时,密钥的分配和保存就成了问题。对机密信息进行加密和验证随报文一起发送报文摘要(或散列值)来实现。比较典型的算法有DES(Data Encryption Standard数据加密标准)算法及其变形Triple DES(三重DES),GDES(广义DES);欧洲的IDEA;日本的FEAL N、RC5等。DES标准由美国国家标准局提出,主要应用于银行业的电子资金转帐(EFT)领域。DES的密钥长度为56bit。Triple DES使用两个独立的56bit密钥对交换的信息进行3次加密,从而使其有效长度达到112bit。RC2和RC4方法是RSA数据安全公司的对称加密专利算法,它们采用可变密钥长度的算法。通过规定不同的密钥长度,,C2和RC4能够提高或降低安全的程度。对称密码算法的优点是计算开销小,加密速度快,是目前用于信息加密的主要算法。它的局限性在于它存在着通信的贸易双方之间确保密钥安全交换的问题。此外,某一贸易方有几个贸易关系,他就要维护几个专用密钥。它也没法鉴别贸易发起方或贸易最终方,因为贸易的双方的密钥相同。另外,由于对称加密系统仅能用于对数据进行加解密处理,提供数据的机密性,不能用于数字签名。因而人们迫切需要寻找新的密码体制。

2、非对称密码体制

非对称密码体制也叫公钥加密技术,该技术就是针对私钥密码体制的缺陷被提出来的。在公钥加密系统中,加密和解密是相对独立的,加密和解密会使用两把不同的密钥,加密密钥(公开密钥)向公众公开,谁都可以使用,解密密钥(秘密密钥)只有解密人自己知道,非法使用者根据公开的加密密钥无法推算出解密密钥,顾其可称为公钥密码体制。如果一个人选择并公布了他的公钥,另外任何人都可以用这一公钥来加密传送给那个人的消息。私钥是秘密保存的,只有私钥的所有者才能利用私钥对密文进行解密。公钥密码体制的算法中最著名的代表是RSA系统,此外还有:背包密码、McEliece密码、Diffe_Hellman、 Rabin、零知识证明、椭圆曲线、EIGamal算法等。公钥密钥的密钥管理比较简单,并且可以方便的实现数字签名和验证。但算法复杂,加密数据的速率较低。公钥加密系统不存在对称加密系统中密钥的分配和保存问题,对于具有n个用户的网络,仅需要2n个密钥。公钥加密系统除了用于数据加密外,还可用于数字签名。公钥加密系统可提供以下功能:A、机密性(Confidentiality):保证非授权人员不能非法获取信息,通过数据加密来实现;B、确认(Authentication):保证对方属于所声称的实体,通过数字签名来实现;C、数据完整性(Data integrity):保证信息内容不被篡改,入侵者不可能用假消息代替合法消息,通过数字签名来实现;D、不可抵赖性(Nonrepudiation):发送者不可能事后否认他发送过消息,消息的接受者可以向中立的第三方证实所指的发送者确实发出了消息,通过数字签名来实现。可见公钥加密系统满足信息安全的所有主要目标。

RSA公钥密码体制的优势(意义)

1 解决大规模网络应用中密钥的分发和管理问题

采用分组密码、序列密码等对称密码体制时,加解密双方所用的密钥都是秘密的,而且需要定期更换,新的密钥总是要通过某种秘密渠道分配给使用方,在传递的过程中,稍有不慎,就容易泄露。

公钥密码加密密钥通常是公开的,而解密密钥是秘密的,由用户自己保存,不需要往返交换和传递,大大减少了密钥泄露的危险性。同时,在网络通信中使用对称密码体制时,网络内任何两个用户都需要使用互不相同的密钥,只有这样,才能保证不被第三方窃听,因而N个用户就要使用N(N–1)/2个密钥。在大型网络中,如果有100万个用户,则要使用4950万个密钥,密钥量太大,难以管理,而且使用起来非常麻烦。采用公钥密码体制,N个用户只需要产生N对密钥。仍以100万个用户为例,只需100万对密钥,需要秘密保存的仅100万个私钥,二者相差近50倍,数量大大减少,而且分发简单,安全性好。由此可见,只有公钥密码才能方便、可靠地解决大规模网络应用中密钥的分发和管理问题。

2 实现网络中的数字签名机制

对称密钥技术由于其自身的局限性,无法提供网络中的数字签名。这是因为数字签名是网络中表征人或机构的真实性的重要手段,数字签名的数据需要有惟一性、私有性,而对称密钥技术中的密钥至少需要在交互双方之间共享,因此,不满足惟一性、私有性,无法用做网络中的数字签名。相比之下,公钥密码技术由于存在一对公钥和私钥,私钥可以表征惟一性和私有性,而且经私钥加密的数据只能用与之对应的公钥来验证,其他人无法仿冒,所以,可以用做网络中的数字签名服务。

具体而言,一段消息以发送方的私钥加密之后,任何拥有与该私钥相对应的公钥的人均可将它解密。由于该私钥只有发送方拥有,且该私钥是密藏不公开的,所以,以该私钥加密的信息可看做发送方对该信息的签名,其作用和现实中的手工签名一样有效而且具有不可抵赖性。

一种具体的做法是:认证服务器和用户各持有自己的证书,用户端将一个随机数用自己的私钥签名后和证书一起用服务器的公钥加密后传输到服务器;使用服务器的公钥加密保证了只有认证服务器才能进行解密,使用用户的密钥签名保证了数据是由

[1] [2]  下一页

将本文收藏到QQ书签与更多好友分享