浅谈数据加密与数字签名技术及其区别

2014-03-19 04:34:48郭建海
网络安全技术与应用 2014年1期
关键词:发送者数字签名加密技术

郭建海

(中国人民银行兰州中心支行 甘肃 730000)

1 数据加密

1.1 基本概念

加密是一种限制对数据的访问权的技术。原始数据(也称为明文,plaintext)被加密设备(硬件或软件)和密钥加密而产生的经过编码的数据称为密文(ciphertext)。将密文还原为原始明文的过程称为解密,它是加密的反向处理,但解密者必须利用相同类型的加密设备和密钥对密文进行解密。

加密的基本功能包括:

(1)防止不速之客查看机密的数据文件;

(2)防止机密数据被泄露或篡改;

(3)防止特权用户(如系统管理员)查看私人数据文件;(4)使入侵者不能轻易地查找一个系统的文件。

1.2 加密技术分类

数据加密技术从技术上的实现分为在软件和硬件两方面。按作用不同,数据加密技术主要分为数据传输、数据存储、数据完整性的鉴别以及密钥管理技术这四种。

在网络应用中一般采取两种加密形式:对称密钥和公开密钥,采用何种加密算法则要结合具体应用环境和系统,而不能简单地根据其加密强度来作出判断。因为除了加密算法本身之外,密钥合理分配、加密效率与现有系统的结合性,以及投入产出分析都应在实际环境中具体考虑。

对于对称密钥加密。其常见加密标准为 DES等,当使用DES时,用户和接受方采用64位密钥对报文加密和解密,当对安全性有特殊要求时,则要采取IDEA和三重DES等。作为传统企业网络广泛应用的加密技术,秘密密钥效率高,它采用KDC来集中管理和分发密钥并以此为基础验证身份,但是并不适合Internet环境。

在 Internet中使用更多的是公钥系统,即公开密钥加密,它的加密密钥和解密密钥是不同的。一般对于每个用户生成一对密钥后,将其中一个作为公钥公开,另外一个则作为私钥由属主保存。公开密钥算法有很多,一些算法如著名的背包算法和 McELiece算法都被破译,目前公认比较安全的公开密钥算法主要就是RSA算法及其变种Rabin算法,离散对数算法等。由于加密强度高,而且并不要求通信双方事先要建立某种信任关系或共享某种秘密,因此十分适合Internet网上使用。

1.3 常见加密体制的技术实现

所谓常规密钥密码体制,即加密密钥与解密密钥是相同的。

在早期的常规密钥密码体制中,典型的有代替密码,其原理可以用一个例子来说明:

将字母a,b,c,d,…,w,x,y,z的自然顺序保持不变,但使之与D,E,F,G,…,Z,A,B,C分别对应(即相差3个字符)。若明文为student则对应的密文为VWXGHQW(此时密钥为3)。

由于英文字母中各字母出现的频度早已有人进行过统计,所以根据字母频度表可以很容易对这种代替密码进行破译。

2 数据加密标准DES

DES算法原是 IBM 公司为保护产品的机密于 1971年至1972年研制成功的,后被美国国家标准局和国家安全局选为数据加密标准,并于1977年颁布使用。ISO也已将DES作为数据加密标准。

DES对64位二进制数据加密,产生64位密文数据。使用的密钥为64位,实际密钥长度为56位(有8位用于奇偶校验)。解密时的过程和加密时相似,但密钥的顺序正好相反。

DES的保密性仅取决于对密钥的保密,而算法是公开的。DES内部的复杂结构是至今没有找到捷径破译方法的根本原因。现在DES可由软件和硬件实现。美国AT&T首先用LSI芯片实现了DES的全部工作模式,该产品称为数据加密处理机DEP。

3 公开密钥密码体制

公开密钥(public key)密码体制出现于1976年。它最主要的特点就是加密和解密使用不同的密钥,每个用户保存着一对密钥:公开密钥PK和秘密密钥SK,因此,这种体制又称为双钥或非对称密钥密码体制。

在这种体制中,PK是公开信息,用作加密密钥,而SK需要由用户自己保密,用作解密密钥。加密算法E和解密算法D也都是公开的。虽然SK与PK是成对出现,但却不能根据PK计算出SK。公开密钥算法的特点如下:

(1)用加密密钥PK对明文X加密后,再用解密密钥SK解密,即可恢复出明文,或写为:DSK(EPK(X))=X

(2)加密密钥不能用来解密,即DPK(EPK(X))≠X

(3)在计算机上可以容易地产生成对的PK和SK。

(4)从已知的PK实际上不可能推导出SK。

(5)加密和解密的运算可以对调,即:EPK(DSK(X))=X

在公开密钥密码体制中,最有名的一种是RSA体制。RSA算法是第一个既能用于数据加密也能用于数字签名的算法,因此它为公用网络上信息的加密和鉴别提供了一种基本的方法。它已被ISO/TC97的数据加密技术分委员会SC20推荐为公开密钥数据加密标准。

4 数字签名

4.1 基本概念

日常生活中,通常通过对某一文档进行手写签名来保证文档的真实有效性,可以对签字方进行约束,防止其抵赖行为,并把文档与签名同时发送以作为日后查证的依据。在网络环境中,可以用电子数字签名来模拟手写签名,从而为电子商务提供不可否认服务。数字签名,就是通过在数据单元上附加数据,或对数据单元进行秘密变换,从而使接收者可以确认数据来源和完整性。简单说来,数字签名是防止他人对传输的文件进行破坏,以及确定发信人的身份的手段。

数字签名技术是实现交易安全的核心技术之一,它的实现基础就是加密技术。基于公钥密码体制和私钥密码体制都可以获得数字签名,目前的数字签名主要是建立在公共密钥体制基础上,它是公用密钥加密技术的另一类应用。包括普通数字签名和特殊数字签名。数字签名是目前电子商务、电子政务中应用最普遍、技术最成熟的、可操作性最强的一种电子签名方法,用于鉴定签名人的身份及对一项电子数据内容的认可。它还能验证出文件的原文中传输过程中有无变动,确保传输电子文件的完整性、真实性和不可抵赖性。

4.2 工作原理

数字签名采用了双重加密的方法来实现防伪、防赖。其原理为:(1)被发送文件用SHA编码加密产生128bit的数字摘要。(2)发送方用自己的私用密钥对摘要再加密,这就形成了数字签名。

(3)将原文和加密的摘要同时传给对方。

(4)对方用发送方的公共密钥对摘要解密,同时对收到的文件使用SHA编码加密产生又一摘要。

(5)将解密后的摘要和收到的文件在接收方重新加密产生的摘要相互对比。如两者一致,则说明传送过程中信息没有破坏或篡改过,否则不然。

4.3 基本算法

应用广泛的数字签名方法主要有三种,即:RSA签名、DSS签名和Hash签名。这三种算法可单独使用,也可综合在一起使用。用RSA或其它公开密钥密码算法的最大方便是没有密钥分配问题(网络越复杂、网络用户越多,其优点越明显)。因为公开密钥加密使用两个不同的密钥,其中有一个是公开的,另一个是保密的。公开密钥可以保存在系统目录内、未加密的电子邮件信息中、电话黄页(商业电话)上或公告牌里,网上的任何用户都可获得公开密钥。而私有密钥是用户专用的,由用户本身持有,它可以对由公开密钥加密信息进行解密。RSA算法中数字签名技术实际上是通过一个哈希函数来实现的。数字签名的特点是它代表了文件的特征,文件如果发生改变,数字签名的值也将发生变化。不同的文件将得到不同的数字签名。DSS数字签名是由美国国家标准化研究院和国家安全局共同开发的。由于它是由美国政府颁布实施的,主要用于与美国政府做生意的公司,其他公司则较少使用,它只是一个签名系统,而且美国政府不提倡使用任何削弱政府窃听能力的加密软件,认为这才符合美国的国家利益。Hash签名是最主要的数字签名方法,也称之为数字摘要法(Digital Digest)或数字指纹法(Digital Finger Print)。它与RSA数字签名是单独的签名不同,该数字签名方法是将数字签名与要发送的信息紧密联系在一起,它更适合于电子商务活动。

5 数据加密与数字签名技术的联系与区别

下面主要介绍基于公开密钥密码体制的数据加密与数字签名技术的联系与实现过程上的区别。

5.1 数字加密的主要过程

(1)当信息发送者需要发送信息时,首先生成一个对称密钥,用该对称密钥加密要发送的报文;

(2)信息发送者用信息接收者的公钥加密上述对称密钥;

(3)信息发送者将第一步和第二步的结果结合在一起传给信息接收者,称为数字信封;

(4)信息接收者使用自己的私钥解密被加密的对称密钥,再用此对称密钥解密被发送方加密的密文,得到真正的原文。

5.2 数字签名的主要过程

(1)信息发送者使用一单向散列函数(HASH函数)对信息生成信息摘要;

(2)信息发送者使用自己的私钥签名信息摘要;

(3)信息发送者把信息本身和已签名的信息摘要一起发送出去;

(4)信息接收者通过使用与信息发送者使用的同一个单向散列函数(HASH函数)对接收的信息本身生成新的信息摘要,再使用信息发送者的公钥对信息摘要进行验证,以确认信息发送者的身份和信息是否被修改过。

5.3 联系与区别

数字签名的实现基础是加密技术。上述数字签名和数字加密的过程虽然都使用公开密钥体系,但实现的过程正好相反,使用的密钥对也不同。数字签名使用的是发送方的密钥对,发送方用自己的私有密钥进行加密,接收方用发送方的公开密钥进行解密,这是一个一对多的关系,任何拥有发送方公开密钥的人都可以验证数字签名的正确性。数字加密则使用的是接收方的密钥对,这是多对一的关系,任何知道接收方公开密钥的人都可以向接收方发送加密信息,只有唯一拥有接收方私有密钥的人才能对信息解密。另外,数字签名只采用了非对称密钥加密算法,它能保证发送信息的完整性、身份认证和不可否认性,而数字加密采用了对称密钥加密算法和非对称密钥加密算法相结合的方法,它能保证发送信息保密性。

[1]Oded Goldreich. 密码学基础(第二卷•中文版). 人民邮电出版社.2005.

[2]曲蕴慧,白新国. 浅谈数字签名技术的原理及应用. 福建电脑.2010.

猜你喜欢
发送者数字签名加密技术
海洋水文信息加密技术方案设计与测试
网络表情符号的作用
表情符号的使用角度对亲密度感知的影响
论《聊斋志异》梦境叙事
蒲松龄研究(2020年3期)2020-10-28 01:38:41
浅析计算机安全防护中数字签名技术的应用
数据加密技术在计算机网络通信安全中的应用
电子制作(2018年16期)2018-09-26 03:27:10
基于数字签名的QR码水印认证系统
在计算机网络安全中数据加密技术的应用
基于四叉树网格加密技术的混凝土细观模型
基于概率论的发送者匿名性度量模型
河南科技(2014年5期)2014-02-27 14:08:47