APP下载

基于PKI的签密体制

2013-09-17杨世平

通信技术 2013年1期
关键词:数字签名私钥公钥

雷 咏, 杨世平

(贵州大学 a.计算机科学与信息学院;b.明德学院,贵州 贵阳 550025)

0 引言

信息安全指通过计算机技术,网络技术,密码技术和网络安全技术等保护网络信息在传输、交换和存储过程中的机密性、完整性、可用性、可控性和不可抵赖性等,如:①机密性是指网络信息只为授权用户使用,不能泄露给非授权的用户、实体或进程,不能被非法利用,采用的技术手段是加密传输,数据的保密存储等;②完整性指网络信息未经授权不能进行改变的特性,即信息在传输或存储过程中,不能被偶然或蓄意地修改、删除、伪造、重排、插入等破坏和丢失的特性。简单地说,完整性就是要求网络信息保存原样不变;③可用性就是保证信息及服务可被授权用户使用的特性;④可控性是指网络信息的信息流向、信息传播和信息内容等具有可控制能力的特性;⑤不可抵赖性也称作不可否认性,是指网络用户不能否认或抵赖自己的操作和作出的承诺,包括信息发送方不能否认已经发过的信息,信息接收方不能否认已经接收的信息[1]。为了满足以上五方面的要求,产生了各种相关方面的技术,加密技术和签名技术则是其中最为典型的两大技术。

数字签名技术是信息化建设中的关键安全机制之一[2], 数据加密、数字签名方案是保障通讯数据真实可靠的关键[3],它们各自实现不同的安全需求。

加密技术是一种将原始信息经过相应的“规则”转换成“乱码”,到达目的地后再用相同的规则还原出原始信息的一种安全保密手段。包括两个基本元素,算法和密钥。结合算法和密钥即可将容易理解的信息即明文转换为不可理解的乱码即密文。算法是将普通可以理解的信息与一串数字(密钥)结合,产生不可理解的密文的步骤。密钥是用来对数据进行编码和解码的一种算法。密钥加密技术的密码体制分为对称密钥体制和非对称密钥体制两种。相应地,对数据加密的技术分为两类,即对称加密(私人密钥加密)和非对称加密(公开密钥加密)。对称加密的加密密钥和解密密钥相同,密钥必须保密。而非对称加密的加密密钥和解密密钥不同,加密密钥可以公开而解密密钥需要保密。对称加密以数据加密标准(DES,Data Encryption Standard)算法为典型代表,非对称加密通常以RSA(Rivest Shamir Ad1eman)算法为代表。由于除了发送方和接受方知道公共的加密算法和密钥,因此加密技术很好的保证了信息的机密性。

签名技术则是保证不可抵赖性的有效手段。众所周知,在人们的生活中,通过签字,印章等保证信息的不可抵赖性。签名能防止通信双方发生如否认、伪造、冒充以及篡改等行为。在公钥密码学中,密钥是有公开密钥和私有密钥组成的密钥对。数字签名就是发送方用私有密钥进行加密,接收方用公开密钥进行解密。这一过程与加密过程刚好相反。由于私钥是个人秘密所有,用其公钥能正确解密则证明该消息是此人签名的。由于其他人没有该私钥,则签名个人无法抵赖其发送过的消息。同时,从公开密钥不能推算出私有密钥,因此公开密钥不会损害私有密钥的安全。基于公钥密码体制和私钥密码体制都可以获得数字签名,目前主要是基于公钥密码体制的数字签名。包括普通数字签名和特殊数字签名。普通数字签名算法有RSA、ElGamal、Fiat-Shamir、Guillou- Quisquarter、Schnorr、Ong-Schnorr-Shamir数字签名算法、Des/DSA,椭圆曲线数字签名算法和有限自动机数字签名算法等。特殊数字签名有盲签名、代理签名、群签名、不可否认签名、公平盲签名、门限签名、具有消息恢复功能的签名等。数字签名保证了信息传递过程中的完整性,身份认证和防抵赖。

要想同时保证数据的机密性,完整性,可认证性和防抵赖性,传统的方法就是先对消息进行签名,然后再把签名后的消息进行加密处理,这种方法被称之为“先签名后加密”。但是这种方法的计算量比较大,效率低,同时其通信成本也比较高。从而产生了数字签密。数字签密具有更高的效率,更高的安全性,同时降低了通信成本等,因此得到了广泛的应用。根据公钥认证方法,目前比较合理的划分方式是将签密体制分为基于PKI的签密体制、基于身份的签密体制和无证书的签密体制。如果与特殊的签名或者加密方案相结合便形成特殊的签密方案,如代理签密,环签密,盲签密等等。

基于PKI的签密体制在很好地提供机密性、完整性、认证和不可否认性的同时,能较好地提高效率和成本,同时易于实现。

1 PKI技术

公钥基础设施(PKI,Public Key Infrastructure)的核心的技术基础是基于公钥密码学的”加密”和”签名”技术。通过”解密”和”签名”技术的结合试用就可解决网络的问题:①身份认证;②信息传输、存储的完整性,信息传输、存储的机密性;③操作的不可否认性[4]。

PKI的加密解密和签名验证过程如图1、图2所示。

图2 PKI签名、验证过程

发送方用公钥对消息原文进行加密从而得到消息密文,由于除发送方与接收方以外的其他人不知道加密算法,没有解密私钥,因此只有拥有私钥的接收方才能正确“翻译”出原始信息,从而保证了信息的安全性和机密性。

而签名验证过程则正好与加密解密过程相反,签名方通过摘要运算从消息原文中提取出摘要,用私钥对摘要进行加密形成签名后将消息原文与签名一起发送给接收方,接收方用相同的摘要运算从消息原文中生成摘要,同时用公钥对签名进行解密,若解密出来的摘要与运算生成的摘要一致则证明消息为发送方发送。

2 基于PKI的签密体制

PKI能够实现加密和签名,但是将加密和签名分开运算使得通信成本高,计算效率低。签密能同时完成加密和签名,效率和成本都得到很大提高。

如图3所示,左侧表示发送方在发送之前对消息明文所做的加密和签名,经过网络传输后接受方接受到的为消息密文。接受者要知道消息的内容、消息的发送者是谁以及消息是否完整等等就必须对消息密文进行解密与验证。在图中,加密和解密的算法可以根据实际的需要合理的选择。对称加密算法具有效率高,但是密钥的传输安全性差等特点,而非对称加密算法安全性高于对称加密算法,但其加密的效率却远远低于加密算法。因此,可以结合不同算法的优点,设计出混合的签密方案,从而提高各方面的性能。

农村经济发展在当前改革发展中有了更为明确的方向,供给侧结构性改革工作的开展给农业经济发展工作更是带来了全新的动力和帮助。

图3 基于PKI的签密体制

3 模型算法

不管是安全性,机密性,完整性等等,都是通过某些算法来实现的。基于PKI的签密方案应由三个算法构成:密钥生成算法,用于产生发送方和接收方的公钥/私钥对;签密算法,该算法用于将消息明文转换为密文;解签密算法,该算法用于还原出消息原文。三个算法必须满足签密体制的一致性约束。三个算法具体作用详见图4。

图4 PKI签密算法

密钥生成算法:在密码系统中,密钥是整个密码系统中的关键元素,是保证信息安全性,机密性和通信双方不可抵赖性的重要依据。所有的过程都必须有密钥的参与才能进行,是系统必不可缺的组成部分,是整个签密系统的基础。

密钥生成算法是用于产生密钥的算法,从图4中可以清楚的知道密钥生成算法的作用。该算法需要输入一个参数,通过此参数计算生成发送方和接收方的公钥/私钥对。发送方的私钥和接收方的公钥用于对消息的签密,而发送方的公钥和接收方的私钥则用于对签密密文的解签密。

签密算法:签密算法能同时完成加密和签名两个步骤。此算法需要输入三个参数:发送方私钥、消息明文、接收方公钥,输出签密成功后的密文。发送方用自己的私钥与接收方的公钥对消息明文进行签密,形成除接收方外无法被还原理解的密文。

解签密算法:解签密算法输入一个签密过的密文,发送方的公钥以及接收方的私钥,经算法计算,输出一个消息明文。接收方用自己的私钥与发送方的公钥对消息密文进行解签密,验证消息的正确性和消息完整性。解签密算法需要同时具有解密和验证签名两个功能。

签密体制的一致性约束是指持有密钥对的通信双方,如果发送方能用签密算法签密一个消息,那接收方一定能用对应的解签密算法还原出消息原文[5]。只要通信双方拥有正确的密钥,那签密算法与解签密算法就具有可逆性。

现以基于椭圆曲线密码体制的签密方案[6]为例说明几个算法的作用。

该方案分为三个阶段: 系统初始化阶段、签密阶段和签密消息验证恢复阶段。它由一个可信中心CA、签密者A和接收者B来实施。

(1)系统初始化阶段

1)可信中心CA选取有限域qF上一条安全的椭圆曲线E(qF),保证该椭圆曲线的离散对数问题是难解的。在E(qF)上选一基点G,G的阶数为n(n为一个大素数)。

2)签密者A和接收者B为系统中的两个用户。A和B分别选取作为私钥,计算作为公钥, 并发送给CA。

3)CA公开(qF),G, n,AY,BY 。

(2)签密阶段

签密者A对消息M签密并发送给指定的接收者B。首先签密者A选取随机数并计算1V K G=⋅,这里是取椭圆曲线上点的X坐标的函数;然后计算签密消息(,)r s如下:

A发送1(,,)V r s给B,这里的(,)r s是M的签密消息,因为消息被隐藏在r中。

(3)签密消息的验证恢复阶段

接收者B接收到签密消息(,)r s及1V后,计算:是否成立来验证签密消息(,)r s的有效性,因为如果签密消息(,)r s有效,则有:

首先通过验证

4 结语

本文对信息安全中的加密技术,签名技术等做了简单的介绍,对比指出签密的好处;详细地说明了基于PKI的签密体制的特点以及算法描述;并以基于椭圆曲线密码体制的签密方案举例说明s基于PKI的签密体制中的算法的重要作用。

[1] 赵泽茂.数字签名[M].北京:科学出版社,2007.

[2] 龙芳.数字签名算法研究[J].信息安全与通信保密,2002(05):143-145.

[3] 肖龙,华云,王雁涛.一种基于环Zn上圆锥曲线的新型数字签名方案[J].通信技术,2008,41(01):127-128.

[4] 关振胜.公钥基础设施PKI和认证机构CA[M].北京:电子工业出版社,2002.

[5] 李发根,钟笛.数字签密综述[J].理论研究,2011(12):1-8.

[6] 戴元军,杨成.基于椭圆曲线密码体制的(t,n)门限签密方案[J].计算机应用研究,2004(09):142-143.

[7] 张军和,赵方,彭亚雄.基于PKI的CA系统在企业办公系统的应用[J].通信技术,2011,44(12):93-94,97.

[8] 刘华春.基于PKI的IPSec-VPN的研究与设计[J].通信技术,2009,42(01):259-260,263.

猜你喜欢

数字签名私钥公钥
清扫机器人避障系统区块链私钥分片存储方法
比特币的安全性到底有多高
基于正交拉丁方理论的数字签名分组批量验证
案例教学法在公钥密码体制难点教学中的应用——以ssh服务中双向认证为例
Spatially defined single-cell transcriptional profiling characterizes diverse chondrocyte subtypes and nucleus pulposus progenitors in human intervertebral discs
交通运输行业数字签名系统的设计与实现分析
浅析计算机安全防护中数字签名技术的应用
一种基于混沌的公钥加密方案
神奇的公钥密码
一种基于虚拟私钥的OpenSSL与CSP交互方案