公钥密码体制研究综述

2009-07-29 07:11温雅敏
科技经济市场 2009年6期

温雅敏

摘要:公钥密码体制对于保证网络信息安全起到了非常重要的作用,本文结合笔者学习密码学基础的一些体会,对公钥密码体制的基本概念,发展现状、及未来的发展展望做个简单地概述。

关键词:公钥密码体制;RSA;离散对数;椭圆曲线

1引言

密码已有几千年的历史。在很长一段时间里,密码都是作为一种隐蔽通信技术。直到20世纪50年代,1949

年,信息论创始人Shannon发表的经典论文“保密通信的信息理论”,将密码学的研究引入了科学的轨道。密码才发展成为一门完整的、成熟的学科。整体而言,安全与秘密通讯的学科包括密码编码学(cryptography)与密码分析学(cryptoanalysis),统称为密码学(Cryptology)。1976年,著名学者Diffie和 Hellman“密码学新方向”的发表,奠定了公钥密码学的基础;Diffie和Hellman描述了几个可能用来实现公钥密码的数学变换,称之为单向陷门函数,简单地理解即是从x计算y=f(x)是容易的,而从y计算出x是困难的,单向陷门函数的概念使得公钥密码系统成为可能。[1]

随着计算机网络迅猛发展及电子商务应用的需求,网络信息安全保密性要求日益提高,公钥密码体制在数字签名和公开信道密钥建立上的两个重要应用,保证网上数据传输的完整性、有效性和不可否认性,对促进网络安全电子商务的发展也就起到了不可替代的巨大作用。本文结合笔者在密码学基础学习的基础上,对公钥密码体制的基本概念,发展现状、及未来发展的展望做个简单地概述。

2基础知识

保密是密码学的核心,而加密是获得信息保密的实用工具。现代加密技术主要分为两种体制,一种是称为对称密码体制(又称为单钥密码体制),另一种也是我们重点介绍的称为非对称密码体制(又称为双钥/公钥密码体制),我们在此分别对这两个概念做个简单的总结。

2.1对称密码体制

对称密码体制是一种传统密码体制,也称为单钥/私钥密码体制。在对称加密系统中,加密和解密采用相同的密钥,密文发送者必须和密文接收者分享密文的该加密密钥。因为加解密密钥相同,需要通信的双方必须选择和保存他们共同的密钥,各方必须信任对方不会将密钥泄密出去,这样就可以实现数据的机密性和完整性。然而,这需要通信双方在基于对称密码体制进行保密通信以前,必须首先生成它们之间共享的正确密钥,这需要在网络应用中不依赖于物理地传输,即要建立安全的密钥信道保证密钥的保密性和可靠性。这也是对称密码体制的一个不足之处。

2.2非对称密码体制

非对称密码体制也称为公钥加密技术,该技术就是针对私钥密码体制的缺陷被提出来的。在公钥加密系统中,加密和解密是相对独立的,加密和解密会使用两把不同的密钥,加密密钥(公开密钥)向公众公开,谁都可以使用,解密密钥(秘密密钥)只有解密人自己知道,非法使用者根据公开的加密密钥无法推算出解密密钥,顾其可称为公钥密码体制。

2.3对称与非对称密码体制比较

采用分组密码、序列密码等对称密码体制时,加解密双方所用的密钥都是秘密的,而且需要定期更换,新的密钥总是要通过某种秘密渠道分配使用方,在传递的过程中,稍有不慎,就容易泄露。公钥密码加密密钥通常是公开的,而解密密钥是秘密的,由用户自己保存,不需要往返交换和传递,大大减少了密钥泄露的危险性。同时,在网络通信中使用对称密码体制时,网络内任何两个用户都需要使用互不相同的密钥,只有这样,才能保证不被第三方窃听,因而N个用户就要使用N(N-1)/2个密钥。

对称密钥技术由于其自身的局限性,无法提供数字签名的功能。这是因为数字签名是网络应用中表征人或机构的真实性、唯一性和私有性的重要手段,而对称密钥技术中的密钥至少需要在交互双方之间共享,不满足惟一性、私有性,无法用于实现数字签名。相比之下,公钥密码技术由于存在一对公钥和私钥,私钥可以表征惟一性和私有性,而且经私钥加密的数据只能用与之对应的公钥来验证,其他人无法仿冒,因此广泛用于实现网络中的数字签名服务。另外,公钥密码体制的一个重要优点就是易于建立两个相距遥远的终端用户间的密钥信道,而不需要他们彼此见面或者使用在线认证服务,这正好克服了传统对称技术的缺点。

3公钥密码体制的研究现状

近代公钥密码系统的研究中,其安全性都是基于难解的困难问题的。如:(1)大整数因子分解问题;(2)计算有限域的离散对数问题;(3)平方剩余问题;(4)椭圆曲线的离散对数问题等。基于这些问题,各种公钥密码体制相继研究出来,主要集中在以下的几个方面:(1)RSA公钥体制的研究;(2)椭圆曲线密码体制ECC的研究;(3)各种公钥密码体制的研究(量子密码,NTRU,基于辫群的密码体制等;(4)数字签名研究。在此,我们对几个主要的密码体制做个介绍。

3.1 RSA密码体制

RSA密码系统是较早提出的一种公开钥密码系统。RSA是建立在“大整数的素因子分解是困难问题”基础上的,RSA算法的安全性基于RSA问题(开e次方根的问题),而RSA问题的困难性又依赖于整数分解的困难性。所以,RSA需要选择合适的安全参数,才能保证RSA有足够的中长期安全,所使用的RSA密钥至少需要|N|=1024bit,且它的两个素因子p和q的长度要相等。

具体的教科书式的RSA算法可简单描述如下:公钥(N,e),私钥d(满足ed=1 mod (p-1)(q-1));加密:c=me(mod N);解密: m=cd(mod N)。两个素数p和q不再需要,可以舍弃,但绝不能泄漏。加密消息m时,首先将它分成若干比N小的数据分组,对每个分组分别实施上述加解密过程,加密后的密文c,将由相同长度的分组ci组成。

当然,当可证明安全的概念引入后,这种教科书式的加密体制在实际应用中证明是不安全的。目前,作为RSA加密标准的是RSA-OAEP方案。

3.2基于椭圆曲线离散对数的密码体制[2]

椭圆曲线在代数学和几何学上已有一百五十多年的研究历史,有着复杂的数学背景,涉及到数论、群论和射影几何等学科。1985年,N.Koblitz和V.Miller分别提出了椭圆曲线密码体制(Elliptic Curve Cryptosystem,ECC),其安全性依赖于椭圆曲线群上离散对数问题(ECDLP)的难解性,即已知椭圆曲线上的点p和kp计算k的困难程度。不过在当时一直没有像RSA等密码系统一样受到重视。但从现在来看,ECC是目前已知的公钥密码体制中,对每一比特所提供加密强度最高的一种体制,它具有安全性高、计算量小、存储空间占用小、带宽要求低等特点,这些优点使得椭圆曲线公钥密码体制将应用到越来越多的领域。如存储空间小,这对于加密算法在IC卡上的应用具有特别重要的意义,带宽要求低使ECC在无线网络领域具有广泛的应用前景。

目前,求解椭圆曲线离散对数问题(ECDLP)的算法主要有小步—大步法、Pollardρ方法、Pohlig-Hellman算法和MOV归约攻击等。在这些算法中,Pollardρ方法是目前求解一般ECDLP的最有效算法,它的时间复杂度为O(sqrt(πn/2))数级的。Wiene和Zuccherato将该算法时间复杂度改进为O(sqrt(πn)/2),Pollardρ算法可以并行实现,使用r个处理器的运行时间大概是O(sqrt(πn)/2r)。但在使用ECC时,椭圆曲线的选择上一定要避免超奇异曲线和奇异曲线,这两种曲线是不宜用于密码体制的椭圆曲线,它们的ECDLP相对容易,易遭到特定算法的攻击。另外,ECDLP是否存在亚指数时间算法是有待证明的问题,因为它关系ECC未来的安全性。

4公钥密码学体制的应用

公钥密码体制主要服务于以下几个方面:(1)数据加密;(2)数字签名、身份认证与识别;(3)密钥分配。由于公钥密码体制用于数据加密的密钥生成成本较高,其主要用于数字签名和密钥分配。当然,数字签名和密钥分配都有自己的研究体系,形成了各自的理论框架。目前数字签名的研究内容非常丰富,包括普通签名和特殊签名。特殊签名有盲签名、代理签名、群签名、不可否认签名、公平盲签名、门限签名、具有消息恢复功能的签名等,它与具体应用环境密切相关。显然,数字签名的应用涉及到法律问题,美国联邦政府基于有限域上的离散对数问题制定了自己的数字签名标准(DSS),部分州已制定了数字签名法。数字签名涉及的内容非常丰富,也是近年来公钥密码学领域的主要研究热点。

密钥管理中还有一种很重要的技术就是秘密共享技术,是由安全多方计算技术的引入而发展而来的一种分割秘密的技术,目的是阻止秘密过于集中,自从1979年Shamir提出这种思想以来,秘密共享理论和技术达到了空前的发展和应用,特别是其应用至今人们仍十分关注。我国学者在这些方面也做了一些跟踪研究,发表了很多论文,按照X. 509标准实现了一些CA。但没有听说过哪个部门有制定数字签名法的意向。目前人们关注的是数字签名和密钥分配的具体应用以及潜信道的深入研究。

5结束语

公钥密码体制是非常重要的一种技术,它实现了数字签名的概念,提供了对称密钥协定的切实可行的机制,使安全通信成为可能。密钥对的思想也实现了其他的服务和协议,包括:机密性、数据完整性、安全伪随机数发生器和零知识证明等[3]。

目前,公钥密码的重点研究方向,理论方面[4]:(1)用于设计公钥密码的新的数学模型和陷门单向函数的研究;(2)公钥密码的安全性评估问题,特别是椭圆曲线公钥密码的安全评估问题。应用方面:(1)针对实际应用环境的快速实现的公钥密码设计;(2)公钥密码在当今热点技术如网络安全、电子商务、PKI、信息及身份认证等中的应用,这方面还将是持续研究热点。

参考文献:

[1]Wenbo Mao著,王继林等译.现代密码学理论与实践.北京:电子工业出版社,2004(7).

[2]卓泽朋等.公钥密码体制的现状与发展[J].电脑知识与技术,2006(12).

[3]毕仁平.公钥密码体制综述及展望[J].广西轻工业,2007(4):55-57.

[4]冯登国.国内外密码学研究现状及发展趋势[J].通信学报,2002,23(5):18-26.