郑美玲 陈 瀚 俞洪水 朱健萍*
(广西壮族自治区食品药品检验所,广西 南宁 530021)
电子签章系统是以数字签名、数字水印技术为核心,以印章图像为载体,基于COM中间件技术对电子图章的版权保护机制,实现对特定文件的签名、加密和认证。任何未通过认证的用户,均无法获取文件信息,从而达到了保护文件隐私与机密的目的。随着加密技术的日益成熟,电子签章系统的安全性也得到了进一步提升。现阶段常用的电子签章系统,已经形成了PKI与数字水印两大技术体系,每个体系下又包含了数字认证、数字签名、易损水印、鲁邦水印等多种类型。熟练运用这些技术,将使电子签章系统的实用价值得到更好体现。
由CA(证书授权中心)签发的数字证书,可用于验证互联网环境下个人或企业的身份信息。用户使用公钥对一些涉密文件进行加密,生成数字证书;当需要获取文件内容时,必须提供与公钥匹配的私钥,将数字证书成功解密,否则就无法读取文件内容,从而达到了保密目的。在PKI 体系中,CA 作为数字证书签发、认证、管理的机构,发挥着关键作用。用户在向CA 提出数字证书申请后,CA 会根据提交的申请资料进行验证,确定申请者身份信息无误后,提供一对可用于文件加密的公钥和解密的私钥。
数字签名是基于公钥密码理论发展而来的一种加密技术,基于PKI的数字签名,其加密过程为:基于MD5 算法,从原始文件中提取关键信息,利用私钥对这些信息进行签名。将原始文件、数字签名同时发送出去。当另一方顺利接收后,首先验证数字证书,若通过CA 认证后,再利用私钥对数字签名进行解密。完成解密后可得到关键信息,将此信息与原始文件的关键信息进行对比。如果两者完全匹配,则说明文件的完整度、安全性良好。基于数字签名的文件加密技术,除了具有良好的机密性外,还体现出可认证性、防伪造性与抗抵赖性等特点。
作为信息隐藏学的核心技术之一,数字水印的基本原理是将一些容易被识别的标志性信息,通过算法加密的方式将其嵌入到需要被保护的数字文件中,既不影响原内容的使用,同时又不容易被读取、篡改,从而达到了保护数字文件、防止信息窃取的目的。数字水印的认证流程可归纳为三个步骤:第一步是生成水印,并对其做简单处理。用户可通过自定义信息的方式,确定数字水印的类型。同时提取图像特征值,将两者结合得到原始的数字水印。此时水印的加密效果一般,为此还需要通过预处理,得到标准化的水印信息。第二步是将生成的数字水印,嵌入到目标文件中,并在嵌入完毕后检测水印的完整性。借助于特定的算法,将水印嵌入到宿主图像中,同时得到带有水印的宿主图像。利用检测认证算法对水印图像的清晰度、完整性等进行检测。第三步是根据检测结果,若水印图像嵌入效果良好,则完成数字水印加密操作。若水印图像有变形、失真问题,则重新修改。整个流程如图1 所示。
图1 数字水印认证流程
对数字水印实用效果的评估主要参考以下几个指标:(1)易损性。根据嵌入电子文件中的水印信息,被损坏、篡改的难易程度,判断数字水印的性能。若数字水印的可识别性好、篡改难度大,则说明在文件保护方面的性能优良。(2)安全性。以水印算法的复杂程度来定性表示安全性能。通常来说,数字水印的加密算法越复杂,则篡改数字水印的难度越大,因此水印系统的抗攻击能力越强,即安全性好。(3)失真性。采用水印提取技术,对电子文件中嵌入的数字水印进行提取(ω′),然后将提取水印与原水印(ω)进行对比,得出数字水印的失真性(NC),计算公式为:
以实际用途作为划分依据,数字水印可分为两种类型:(1)易损水印,多应用在互联网、新媒体领域,例如对网络上传播的各类图片、视频等添加水印,其作用主要是判断图片、视频的所有权归属。这类水印容易被修改和复制,因此对文件的加密保护效果并不高;(2)鲁棒水印,除了用户识别外,更多的是应用在数字作品的知识产权保护方面。在添加鲁棒水印时,需要经过滤波、缩放、压缩等一系列处理,流程越复杂,则篡改难度越大,从而在版权保护方面发挥的作用越明显。当数字产品的版权发生争议时,可根据鲁棒水印判断真正的版权所有者。
融合了PKI与数字水印技术的电子签章系统,共分为服务器端和客户端两大模块。其中,在服务器端有一台签章证书管理器,主要负责签章证书的新建、查看、删除、导出等任务。同时,提供专门的新建证书库,用于存放所有经由该签章证书管理器签发的证书,方便进行查询、调用。在客户端,又包括了手写签名、MyAddin 组件、seal 控件三个模块。其中,MyAddin 组件的功能是对用户提交的待加密文档,进行验证、签名、盖章和解锁;而seal 控件的主要作用是对电子签章进行验证、锁定、解锁、查看等。具体组成如图2 所示。
图2 电子签章系统的组织架构
公文流转是电子签章系统的关键组成,支持文件盖章、签名、验证等一系列功能的实现。公文流转模块的设计内容如下:(1)用户向CA 提交使用签章证书的申请,并且将个人身份信息、工作单位等相关证明资料一并发送。CA 会对上述资料进行审核,若发现信息不符,则驳回申请。若信息符合,则颁发签章证书,用户得到一对公钥和私钥。而签章证书的备份则留存在专门的服务器内。整个流程如图3 所示。(2)用户在待处理的文件上盖上签章,同时利用MD5 算法提取关键信息。使用公钥进行RSA 签名,将带有个人信息的水印嵌入到签章图像中,完成对文件的加密。之后将加密文件发送出去。(3)接收者打开文档时,通过CA 验证数字签名,验证通过后使用配对的私钥进行解密。将解密所得关键信息,与发送者提供的原始关键信息进行对比,两者一致则表明验证成功。
图3 签章证书申请流程
该模块提供的功能包括签章证书的新建、查看、导出、删除等。对于普通电子文件来说,基于Word 文档的签章保护是一种常用方法。利用Word 内置的二次开发接口,将MyAddin 组件插入到Word 程序中,其结构如图4 所示。
图4 插入到Word 中的MyAddin 组件
从签章证书数据库中,挑选具有使用版权的签章证书,与待处理的电子文件进行绑定。将带有数字水印的签章图片,嵌入到文档中。在文档盖章的同时,还可以进行手动或自动签名。最后确认签名完成,验证文档的完整性。
信息时代为防止数据泄露、保护文件隐私,需要使用到各种各样的加密技术。电子签章系统是一种应用广泛且保密效果较为理想的技术,其中又涵盖了PKI与数字水印两种核心技术。前者以数字签名、数字证书、时间戳服务等为主,后者则包含了易损水印、鲁邦水印等。运用电子签章系统对电子文档进行认证,只有掌握私钥的用户才能将其解密,从而极大保障了文件内容的隐私与安全。