1. 前言
互联网与生俱有的开放性、交互性和分散性特征使人类所憧憬的信息共享、开放、灵活和快速等需求得到满足。网络环境为信息共享、信息交流、信息服务创造了理想空间,网络技术的迅速发展和广泛应用,为人类社会的进步提供了巨大推动力。然而,正是由于互联网的上述特性,产生了许多安全问题:
(1)在互联网上交换文件,电子文件的接受者能否确定自己收到的文件的真实性。
(2)即使文件可以确认发文单位,然而又能否保证文件内容在网络传输中是否因为技术或者人为的因素发生变化。
因此,如何保证文件的真实性、不可否认性和不可篡改性,已成为网络环境下各类应用系统所必须要解决的信息安全问题。类似于现实中需要签章和签名来证明文件的有效性,在电子文档中也需要电子签章和电子签名。并且由于加入了电子证书验证和加密保护,电子签章和电子签名比传统的签章和签名具有更高的安全性和保密性。
2. 需求分析
电子签章,泛指所有以电子形式存在,依附在电子文件并与其逻辑关联,可用以辨识电子文件签署者身份,保证文件的完整性,并表示签署者同意电子文件所陈述事实的内容。一般来说,对电子签章的认定,都是从技术角度而言的。主要是指通过特定的技术方案来鉴别当事人的身份及确保文件内容不被篡改的安全保障措施。
电子签章系统的应用,主要在于保证文档的完整性、不可否认性和不可篡改性,因此,其主要功能应该有文档验证、印章验证、文档保护、痕迹保留等。根据用户的需求,可以看到用户对电子签章系统的潜在需求是:
(1)安全性:电子签章系统必须采用先进有效的技术手段,保证各种加密算法、协议的高安全强度,最终实现各项安全功能。
(2)标准化:电子签章系统应当保证所采用的各项技术符合国际、国内的标准,对外提供标准化的二次开发接口,所采用的标准及实施方案具有国家的各项管理条例。
(3)统一性:电子签章系统必须一并解决各项安全需求。
(4)模块化:电子签章系统应当是相应独立的功能模块,应用系统预留接口后,将来可以简单接入。独立中间件或硬件设备可以完成电子印章的所有功能。
(5)动态性:电子签章系统应当采用模块化设计,所采用的技术应当保证兼容性,当安全需求发生变化时,能够在保证统一性的前提下动态升级。
(6)黑盒性:电子签章系统的技术内容是复杂的,但是在系统的使用过程中,应当保证对用户透明,便于用户实施。
(7)易部署:电子签章系统应当是产品化的安全服务平台,保证系统的实施过程简化。
3. 系统组成

电子签章系统结合电子签名技术与图形处理技术,实现图形化的电子印章与电子手写签名,电子印章图形与用户的公私钥经过安全处理后存放于客户端智能密码钥匙中,并进行相关的运算,完成文档保护、文档签章及文档验证等主要功能。并通过印章管理中心软件实现印章的发放、存储、管理、审计等集中控制功能,保证系统各个环节中印章的安全性、有效性与规范性。其工作流程如下:
1、客户端智能密码钥匙自身产生或从外部获取证书(公钥)/私钥对。
2、通过印章管理中心软件对用户进行注册,并将印章加密签名后导入客户端智能密码钥匙的印章专用存储区。
3、应用程序直接调用智能密码钥匙的签章、验证等函数,实现文档签章、文档验证、文档保护等功能。
电子签章系统主要包括电子印章管理系统、客户端签章应用软件和客户端智能密码钥匙组成。电子签章系统客户端应用已包装成中间件软件,与Microsoft
WORD、Microsoft Excel无缝连接,在其它应用中直接调用客户端函数即可实现数字签名、电子签章、签名验证等功能。
3.1. 电子印章管理系统

实现电子印章的申请、审批、制作、发放、挂失等功能。生成印章图形,向客户端智能密码钥匙中灌制印章图形,同时,对印章图形进行加密、签名,保证印章图形的安全性。
3.2. 客户端签章软件


ESeal4Word、ESeal4Excel分别是为Word、Excel设计的独立应用程序插件,可以实现在Word、Excel文档内加盖电子印章,对文档进行签署,一旦被绑定的文档内容发生改变(非法篡改或传输错误),签章将失效。
3.3. AuthNet智能密码钥匙

用于实现电子印章签署、验证、保护、存储等功能。
4. 系统功能
4.1. 文档签章
在文档的任意地方签署公章、私章或个人手写签名(简称图章)。图章透明显示,效果如同纸质盖章或签名。支持多个单位或个人会签,签署前图章可移动,一旦签署则图章不能移动。
4.2. 文档验证
对文档中的签名进行验证,如果文档在签署后被修改过,则签名将失效,图章上将显示明显的失效标记。
4.3. 印章认证
认证电子图章的真实性。
4.4. 撤消签章
签署者可以撤销签章,撤销后可以对文档进行修改、移动图章。
4.5. 删除印章
将印章从文档中删除,只有签署者未对文档进行签章时,才可以执行此功能。
4.6. 签章时间
查看签署者签署文档的时间。
4.7. 文档锁定
文档锁定功能主要用于保护文档不被篡改。一旦文档锁定,则文档将不可更改,只有签署者方可解锁。
4.8. 痕迹保留
记录签章以来对文档的修改痕迹。
4.9. 打印控制
可以控制是否允许打印、打印预览以及设置打印份数。
4.10. 印章设置
设置印章图像是否显示印章名称及签署时间。
4.11. 电子印章的集中管理和分组验证
通过印章管理中心对电子印章进行集中的申请、注册、管理、签名和加密保护等,并通过智能管理工具对系统中的电子印章进行分组注册、分组管理和分组验证,适用于大型系统中的分布式应用。
5. 技术路线
5.1. 数字签名

数字签名的目的是保证信息的完整性和真实性。数字签名是公开密钥加密技术与HASH运算相结合的产物。HASH函数是能把信息集合提炼为一个固定长度数字串的单向不可逆数学函数。首先,用HASH函数把要签署的文件内容提炼为一个固定长度的数字,称为文摘。签字人用公开密钥系统中的私钥来加密这个文摘,生成所谓的“数字签字”。
收件人在收到经数字签名的文件以后,对此数字签名进行鉴定。用签名人的公钥解开“数字签名”,获得文摘;重新计算文件的文摘,比较其结果。如果完全相符,文件内容的完整性、正确性和签字的真实性都得到了保障。因为如果文件被改动,或者有人在没有私钥的情况下冒充签字,都将使数字签名的鉴定过程失败。
在某种意义上,数字签名比手签字或印章更为有效。一份10余页的手签文件很难保证每页的内容均不会被改动或替换,但数字签名却能保证文件的每一字符都未经过任何改动。
5.2. PKI体系介绍
PKI(Public key Infrastructure)全称为公钥基础设施,而CA认证机构则是PKI的核心执行机构,是PKI的主要组成部分,业界人士通常称它为认证中心。从广义上讲,认证中心还应该包括证书申请注册机构RA(Registration
Authority),它是数字证书的申请注册、证书签发和管理机构。CA的主要职责包括:
■ 验证并标识证书申请者的身份。对证书申请者的信用度、申请证书的目的、身份的真实可靠性等问题进行审查,确保证书与身份绑定的正确性。
■ 确保CA用于签名证书的非对称密钥的质量和安全性。为了防止被破译,CA用于签名的私钥长度必须足够长并且私钥必须由硬件卡产生,私钥不出卡。
■ 管理证书信息资料。管理证书序号和CA标识,确保证书主体标识的惟一性,防止证书主体名字的重复。在证书使用中确定并检查证书的有效期,保证不使用过期或已作废的证书,确保网上交易的安全。发布和维护作废证书列表(CRL),因某种原因证书要作废,就必须将其作为“黑名单”发布在证书作废列表中,以供交易时在线查询,防止交易风险。对已签发证书的使用全过程进行监视跟踪,作全程日志记录,以备发生交易争端时,提供公正依据,参与仲裁。
由此可见,CA是保证电子印章等应用的权威性、可信任性和公正性的机构和基础构件。
证书是数字证书或电子证书的简称,它符合X.509标准,是网上实体身份的证明。证书是由具备权威性、可信任性和公正性的第三方机构签发的,证书对应公/私钥对,可完成对数据的数字签名和完整性验证,因此,它是权威性的电子文档。
PKI作为安全基础设施,能为不同的用户按不同安全需求提供多种安全服务。这些服务主要包括认证、数据完整性、数据保密性、不可否认性、公正及时间戳服务。
(1)认证
认证服务即身份识别与鉴别,就是确认实体即为自己所声明的实体,鉴别身份的真伪。我们以甲乙双方的认证为例:甲首先要验证乙的证书的真伪,当乙在网上将证书传送给甲时,甲首先要用CA的公钥解开证书上CA的数字签名,如果签名通过验证,则证明乙持有的证书是真的;接着甲还要验证乙身份的真伪,乙可以将自己的口令用自己的私钥进行数字签名传送给甲,甲已经从乙的证书中或从证书库中查得了乙的公钥,甲就可以用乙的公钥来验证乙的数字签名。如果该签名通过验证,乙在网上的身份就确凿无疑。
(2)数据完整性服务
数据完整性服务就是确认数据没有被修改。实现数据完整性服务的主要方法是数字签名,它既可以提供实体认证,又可以保障被签名数据的完整性,这是由密码哈希算法和签名算法提供的保证。哈希算法的特点是输入数据的任何变化都会引起输出数据不可预测的极大变化,而签名是用自己的私钥将该哈希值进行加密,然后与数据一道传送给接受方。如果敏感数据在传输和处理过程中被篡改,接受方就不会收到完整的数据签名,验证就会失败。反之,如果签名通过了验证,就证明接收方收到的是未经修改的完整数据。
(3)数据保密性服务
PKI的保密性服务采用了“数字信封”机制,即发送方先产生一个对称密钥,并用该对称密钥加密敏感数据。同时,发送方还用接收方的公钥加密对称密钥,就像把它装入一个“数字信封”。然后,把被加密的对称密钥(“数字信封”)和被加密的敏感数据一起传送给接收方。接收方用自己的私钥拆开“数字信封”,并得到对称密钥,再用对称密钥解开被加密的敏感数据。
(4)不可否认性服务
不可否认性服务是指从技术上保证实体对其行为的认可。在这中间,人们更关注的是数据来源的不可否认性、接收的不可否认性以及接收后的不可否认性。此外还有传输的不可否认性、创建的不可否认性和同意的不可否认性。
(5)公证服务
PKI中的公证服务与一般社会公证人提供的服务有所不同,PKI中支持的公证服务是指“数据认证”,也就是说,公证人要证明的是数据的有效性和正确性,这种公证取决于数据验证的方式。例如,在PKI
中被验证的数据是基于哈希值的数字签名、公钥在数学上的正确性和签名私钥的合法性。
电子印章系统正是使用了以上的服务所实现的保证文档安全、完整、不可否认和公正的综合应用系统。
6. 系统特点
合法性:严格遵循《中华人民共和国电子签名法》关于电子签名的规范,同时支持RSA算法和国密办允许算法,符合国家安全标准。
安全性:公私钥生成与存储均在钥匙内进行,私钥不能以任何形式导出,确保私钥安全;加密、签名运算通过钥匙内部硬件实现,确保运算的安全;电子印章存于钥匙内,确保印章的安全。
可控性:通过电子印章管理系统对电子印章进行集中管理,统一灌制。
严密性:通过电子签章服务器验证电子印章的有效性与真实性,防止伪造或无效电子印章的使用。
易用性:只要使用鼠标和输入PIN码,就可以使用电子印章的各项功能,使得非专业操作人员也能轻松使用
实用性:电子印章透明显示,支持各类图章、名章、手写签名等,电子签章后文档可自动保护。
开放性:支持PKI体系,拥有丰富、简便的开发接口,方便与应用系统的集成。