新闻分类:
新闻分类: 全部 行业新闻 公司新闻
数字签名的实现方式

目前,数字签名技术大多基于哈希摘要和非对称密钥体制来实现。如果签名者想要对某个文件进行数字签名,他必须首先从某个可信的第三方机构(数字证书认证中心CA)取得私钥和公钥,这需要用到PKI技术。 1.有哈希算法的数字签名与验证哈希函数是一种“压缩函数”,利用哈希函数可以把任意长度的输入经由散列函数算法变换成固定长度的输出,该输出的哈希值就是消息摘要,也称数字摘要。在正式的数字签名中,发送方首先对发送文件采用哈希算法,得到一个固定长度的消息摘要, 再用自己的密钥(SK)对消息摘要进行签名,形成发送方的数字签名。数字签名将作为附件和原文一起发送给接收方;接收方首先用发送方的公钥数字卡名进行解密得到发送方的数字摘要,然后用相同的哈希函数对原文进行哈希计算,得到一个新的消息摘要,*后将消息摘要与收到的消息摘要作比较。 2.基于非对称密钥加密体制的数字签名与验证发送方首先将原文用自己的私钥加密的到数字签名,然后将原文和数字签名一起发送给接收方。接收方用发送方的公钥对数字签名进行解密,*后将原文进行比较。签名数字是目前电子商务、电子政务中应用普遍、技术成熟、可操作性强的一种电子签名方法。它采用了规范化的程序和科学化的方法,用于鉴定签名人的身份以及对一项电子数据内容的认可。使用数字签名技术能够验证文件的原文在传输过程中有无变动,确保传输电子文件的完整性、真实性和不可抵赖性。 综上所述,数字签名和加密有所不同。加密的目的是保护信息不被非授权用户存取,而签名的目的是使消息的接收者确信信息的发送者是谁、信息是否被他人篡改。另外,信息加解密可能是一次性的,所以要求它在解密之前是安全的即可;而一个签名的信息(比如文件、合同等)很可能再签署了很多年后才验证其有效性,而且还可能要进行多次验证。因此签名的安全性和防伪造性的要求更高。

数字签名技术概述

数字签名(又称公钥数字签名、电子签章)是一种类似写在纸上的普通的物理签名。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。数字签名的具体实现是,发送方通过某种密码运算生成一系列信息附在原文一起发送,这段信息类似现实中的签名或印章,接收方对其验证来判断原文的真伪。简单地说,所谓数字签名就是附加在数据单元上的一些数据,或是对数据单元所做的密码变换。这种数据或变换允许数据单元的接收者用以确认数据单元的来源和数据的完整性并保护数据,防止被人(例如接收者)进行伪造。它是对电子形式的消息进行签名的一种方法,一个签名消息能在一个通信网络中传输。基于公钥密码体制和私钥密码体制都可以获得数字签名,主要是基于公钥密码体制的数字签名。包括普通数字签名和特殊数字签名。普通数字签名算法有RSA、E1 Gamal、Fiat-Shamir、Ong-Schnorr-Shamir等数字签名算法、Des/DSA,椭圆曲线数字签名算法和有限自动机数字签名算法等。特殊数字签名有盲签名、代理签名、群签名、不可否认签名、公平盲签名、门限签名、具有消息恢复功能的签名等,它与具体应用环境密切相关。鉴于数字签名的应用涉及法律问题,美国联邦政府基于有限域上的离散对数问题制定了自己的数字签名标准(DSS)。 数字签名的主要功能是:(1)保证信息传输的完整性,(2)进行身份认证;(3)防止交易中的抵赖发生。 在通信中使用数字签名一般基于以下原因: (1)鉴权。公钥加密系统允许任何人在发送信息时使用公钥进行加密,数字签名能够让信息接收者确认发送者的身份,当然,接收者不可能百分之百确信发送者的真实身份,而只能在密码系统未被破译的情况下才有理由确信。 (2)完整性。传输数据的双方都希望确认消息在传输的过程中未被修改。加密使得第三方想要读取数据十分困难,然而第三方仍然能采取可行的方法在传输的过程中修改数据。 (3)不可抵赖。在密文背景下,抵赖这个词指的是不承认与消息有关的举动(即声称消息来自第三方)。消息的接收方可以通过数字签名来防止所有后续的抵赖行为,因为接收方可以出示签名给别人来证明信息的来源。 每个人都有一对“钥匙”(数字身份),其中一个只有她/他本人知道(密钥),另一个是公开的(公钥)。签名的时候用密钥,验证答名的时候用公钥。又因为任何人都可以落款声称她/他就是你,因此公钥必须以接受者信任的人(身份认证机构)来注册。注册后身份认证机构发出数字证书,对文件签名后,把此数字证书连同文件及签名一起发给接受者,接受者向身份认证机构求证是否真是用密钥签发的文件。

PKI的应用

1.PKI的应用领域作为一种基础设施,PKI的应用范围非常广泛,并且在不断发展之中,下面给出几个应用实例。 (1)虚拟专用网络(VPN)VPN是一种架构在公用通信基础设施上的专用数据通信网络,利用网络层安全协议(尤其是IPSec)和建立在PKI上的加密与签名技术来获得机密性保护。基于PKI技术的IPSec协议现在已经成为架构VPN 的基础,它可以为路由器之间、防火墙之间或者路由器和防火墙之间提供经过加密和认证的通信。虽然它的实现会复杂一些,但其安全性比其他协议都完善得多。 (2)安全电子邮件。作为 Internet上恨有效的应用,电子邮件凭借其易用、低成本和高效已经成为现代商业中的一种标准信息交换工具。随着Internet 的持续增长,商业机构或政府机构都开始用电子邮件交换一些秘密的或是有商业价值的信息,这就引出了一些安全方面的问题,包括:消息和附件可以在不为通信双方所知的情况下被读取、篡改或拦截;发信人的身份无法确认。电子邮件的安全需求也是机密、完整认证和不可否认,而这些都可以利用PKI技术来获得。目前发展很快的安全电子邮件协议是S/MIME (The Secure Multipurpose Internet Mail Extension),这是一个允许发送加密和有签名邮件的协议。该协议的实现要依赖于PKI技术。 (3)Web安全。浏览Web页面是人们常用的访问Internet的方式。如果要通过Web进行一些商业交易,该如何保证交易的安全呢?为了透明地解决Web的安全问题,在两个实体进行通信之前,先要建立SSL 连接,以此实现对应用层透明的安全通信。利用PKI技术,SSL 协议允许在浏览器和服务器之间进行加密通信。此外服务器和浏览器通信时双方可以通过数字证书确认对方的身份。结合SSL 协议和数字证书,PKI技术可以保证Web交易多方面的安全需求,使Web上的交易和面对面的交易一样安全。 2. PKI在DRM中的应用用户的DRM 代理访问权利发布中心(Rights Issuer,RI)获得权利对象(Right Object,RO),RO 的产生与管理由RI负责。商业应用方式下这个过程是以缴费的方式进行的。证书机构CA负责数字证书的发放、验证,并协同RI和用户相互认证以建立信任关系。RI用户的公钥对RO加密然后利用信息摘要的方法获得RO的哈希值并用RI自身私钥对RO进行签名。用户接收到RO后,使用RI的公钥验证RI的签名并利用用户的公钥对RO解密。用户从RO中获得内容的信息摘要及对称加密密钥。然后利用该对称加密密钥解密内容对象,并将内容信息摘要与接收的内容进行比较以保证内容没有被更改。DRM代理记录RO中的利约束并控制内容的使用。需要说明的是,采用了PKI的OMA DRM2.0在增强安全性的同时,也增大了DRM 系统署的复杂度。因此,目前支持DRM1.0的手机终端较多,而支持ORM2.0的设备却不多见。

PKI的认证中心CA

认证中心CA作为PKI的核心部分,CA实现了PKI中一些很重要的功能,概括的说,认证中心(CA)的功能有:证书发放、证书更新、证书撤销和证书验证。 CA的核心功能就是发放和管理数字证书,具体描述如下。(1)接收验证用户数字证书的申请。(2)确定是否接受用户数字证书的申请——证书的审批。(3)向申请者颁发、拒绝颁发数字证书——证书的发放。(4)接收、处理用户的数字证书更新请求——证书的更新。(5)接收用户数字证书的查询、撤销。(6)产生和发布证书废止列表(CRL)。(7)数字证书的归档。(8)密钥归档。(9)历史数归档。 认证中心CA为了实现其功能,主要由以下三部分组成。(1)注册服务器:通过Web Server建立的站点,可为客户提供24小时x7天不间断服务。客户在网上提出证书申请和填写相应的证书申请表。(2)证书申请受理和审核机构:负责证书的申请和审核。它的主要功能是接受客户证书申请并进行审核。(3)认证中心服务器:是数字证书生成、发放的运行实体,同时提供发放证书的管理、证书废止列表(CRL)的生成和处理等服务。 在具体实施时,CA必须做到以下几点。(1)验证并标识证书申请者的身份。(2)确保CA用于签名证书的非对称密钥的质量。(3)确保整个签证过程的安全性,确保签名私钥的安全性。(4)证书资料信息(包括公钥证书序列号,CA标识等)的管理。(5)确定并检查证书的有效期限。(6)确保证书主体标识的唯一性,防止重名。(7)发布并维护作废证书列表。(8)对整个证书签发过程做日志记录。(9)向申请人发出通知。在这其中很重要的是CA自己的一对密钥的管理,它必须确保其高度的机密性,防止他方伪造证书。CA的公钥在网上公开,因此整个网络系统必须保证完整性。CA的数字签名保证了证书(实质是持有者的公钥)的合法性和权威性。 用户的公钥有两种产生的方式。(1)用户自己生成密钥队,然后将公钥以安全的方式传送给CA,该过程必须保证用户公钥的验证性和完整性。(2)CA替用户生成密钥队,然后将其以安全的方式传送给用户,该过程必须确保密钥对的机密性、完整性和可验证性。该方式下由于用户的私钥为CA所产生,所以对CA的可信性有更高的要求。CA必须在事后销毁用户的私钥。一般而言公钥有两大类用途,就像本文前面所述,一个是用于验证数字签名,一个是用于加密信息。相应的在CA系统中也需要配置用于数字签名/验证签名的密钥对和用于数据加密/脱密的密钥对,分别称为签名密钥对和加密密钥对。由于两种密钥对的功能不同,管理起来也不大相同,所以在CA中为一个用户配置两对密钥、两张证书。 CA中比较重要的几个概念点有:证书库。证书库是CA颁发证书和撤销证书的集中存放地,它像网上的“白页”一样,是网上的一种公共信息库,供广大公众进行开放式查询。这是非常关键的一点,因为构建CA的根本目的就是获得他人的公钥。时下通常的做法是将证书和证书撤销信息发布到一个数据库中,成为目录服务器,它采用LDAP目录访问协议,其标准格式采用X.500系列。随着该数据库的增大,可以采用分布式存放,即采用数据库镜像技术,将其中一部分与本组织有关的证书和证书撤销列表存放到本地,以提高证书的查询效率,这一点是任何一个大规模的PKI系统成功实施的基本需求,也是创建一个有效的认证机构CA的关键技术之一。 另一个重要的概念是证书的撤销。由于现实生活中的一些原因,比如说私钥的泄漏,当事人的失踪死亡等情况的发生,应当对其证书进行撤销。这种撤销应该是及时的,因为如果撤销延迟的话,会使得不再有效的证书仍被使用,将造成一定而损失。在CA中,证书的撤销使用的手段是证书撤销列表或称为CRL。即将作废的证书放入CRL中,并及时公布于众,根据实使际情况不同可以采取周期性发布机制和在线查询机制两种方式。 密钥的备份和恢复也是很重要的一个环节。如果用户由于某种原因丢失了机密数据的密钥,那么被加密文将无法解开,这将造成数据丢失。为了避免这种情况的发生,PKI提供了密钥备份用于解密密钥的恢复机制。这工作也是应该由可信的机构CA来完成的,而且,密钥的备份与恢复只能针对解密密钥,而签名密钥不能做备份,因为签名密钥用于具有不可否认性的证明,如果存有备份的话,将会不利于保证不可否认性。 还有,一个证书的有效期是有限的,这样的规定既有理论上的原因,又有实际操作的因素。在理论上诸如关于当前非对称算法和密钥长度的可破译性分析,同时在实际应用中,证明密钥必须有一定的更换频度,才能得到密钥使用的安全性。因此一个已颁发的证书需要有过期的措施,以便更换新的证书。为了解决密钥更新的复杂性和人工干预的麻烦,应由PKI本身自动完成密钥或证书的更新,完全不需要用户的干预。它的指导思想是:无论用户的证书用于何种目的,在认证时,都会在线自动检查有效期,当失效日期到来之前的某时间间隔内,自动启动更新程序,生成一个新的证书来替代旧证书。  

PKI的组成

PKI公钥基础设施是提供公钥加密和数字签名服务的系统或平台,目的是为了管理密钥和证书。一个机构通过采用PKI框架管理密钥和证书可以建立一个安全的网络环境。PKI主要包括四个部分: x.509格式的证书(x.509 V3)和证书废止列表CRL (X.509 V2);CA操作协议;CA管理协议政策制定。 一个典型、完整、有效的PKI 应用系统至少应具有以下五个部分。(1)认证中心CA (Certificate Authority)CA是PKI的核心,CA负责管理PKI结构下的所有用户(包括各种应用程序)的证书,把用户的公钥和用户的其他信息捆绑在一起,在网上验证用户的身份,CA还要负责用户证书的黑名单登记和黑名单发布。 (2)X.500目录服务器X.500目录服务器用于发布用户的证书和黑名单信息,用户通过标准的LDAP协议查询自己或其他人的证书和下载黑名单信息。 (3)具有高强度密码算法(SSL)的安全WWW服务器Secure Socket Layer (SSL)协议起初由Netscape企业发展,现已成为网络用来鉴别网站和网页浏览者身份,以及在浏览器使用者及网页服务器之间加密通信的全球化标准。 (4) Web(安全通信平台)Web有Web Client端和 Web Server端两部分,分别安装在客户端和服务器端,诵过具有高强度密码算法的SSL 协议保证客户端和服务器端数据的机密性、完整性、身份验证。 (5)自开发安全应用系统自开发安全应用系统是指各行业自开发的各种具体应用系统,例如银行、证券的应用系统等。完整的 PKI包括认证政策的制定(包括遵循的技术标准、各CA 之间的上下级或同级关系、安全策略、安全程度、服务对象、管理原则和框架等),认证规则、运作制度的制定,所涉及的各方法律关系内容以及技术的实现等。 建立一个有实际使用价值的PKI 网络安全环境,必须满足以下8个基本条件。(1)能够签发基于公钥密钥体制的数字证书。(2)具有数字证书的存取环境和途径。(3)能够进行证书作废处理。(4)实现密钥备份和恢复。(5)支持不可否认的数字签名。(6)公开密钥对和数字证书的自动更新。(7)公开密钥对的归档管理。(8)支持数字证书和交叉认证等。

PKI的基本概念

PKI的提出是为了解决Internet中的安全问题。随着Internet的普及,人们通过因特网进行沟通越来越多,相应的通过网络进行商务活动即电子商务也得到广泛的发展。电子商务对我国企业开拓国际国内市场、利用好国内外各种资源提供了千载难逢的良机。电子商务对企业来说真正体现了平等竞争、高效率、低成本、高质量的优势,能让企业在激烈的市场竞争中把握商机、脱颖而出。发达国家已经把电子商务作为21世纪国家经济的增长重点,我国的有关部门也正在大力推进我国企业发展电子商务。然而随着电子商务的飞速发展也相应引发了一些Internet安全问题。 概括起来,进行电子交易的互联网用户所面临的安全问题有:①保密性:如何保证电子商务中设计的大量保密信息在公开网络的传输过程中不被窃取;②完整性:如何保证电子商务中所传输的交易信息不被中途篡改及通过重复发送进行虚假交易;③身份认证与授权:在电子商务的交易过程中,如何让对方进行认证,以保证交易双方身份的正确性;④抗抵赖:在电子商务的交易完成后,如何保证交易的任何一方无法否认已发生的交易。 这些问题将在很大程度上限制电子商务的进一步发展,因此如何保证Internet网上信息传输的安全,已成为发展电子商务的重要环节。为解决这些internet的安全问题,世界各国对其进行了多年的研究,初步形成了一套完整的Internet安全解决方案,即时下被广泛采用的PKI技术(Public Key Infrastructure,公钥基础设施),PKI技术采用证书管理公钥,通过第三方的可信任机构——认证中心CA(Certificate Authority),把用户的公钥和用户的其他标识信息(如名称、E-mail、身份证号等)捆绑在一起,在Internet网上验证用户的身份。眼下,通用的办法是采用基于PKI结构结合数字证书,通过把要传输的数字信息进行加密,保证信息传输的保密性、完整性,签名保证身份的真实性和抗抵赖。 PKI公钥基础设施是一个利用公钥概念和加密技术提供安全服务的具有通用性的安全基础设施,它是在网络协议层上实施安全机制的网络安全平台。从工程的角度来说,PKI是创建、颁发、管理、撤销公钥证书所涉及的所有软硬件的集合体。PKI的应用非常广泛, 其为网上金融、网上银行、网上证券、电子商务、电子政务等网络中的数据交换提供安全服务功能。PKI作为安全基础设施,能够提供身份认证、数据完整性、数据保密性、数据公正性、不可抵赖性和时间戳六种安全服务。