电子签名的技术实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电子签名的技术实现
电子签名的技术实现
一、电子签名的实现方法
目前,可以通过多种技术手段实现电子签名,在确认了签署者的确切身份后,电子签名承认人们可以用多种不同的方法签署一份电子记录。方法有:基于PKI的公钥密码技术的数字签名;以生物特征统计学为基础的识别标识;手印、声音印记或视网膜扫描的识别;一个让收件人能识别发件人身份的密码代号、密码或个人识别码PIN;基于量子力学的计算机等等。但比较成熟的,使用方便具有可操作性的,在世界先进国家和我国普遍使用的电子签名技术还是基于PKI(PublicKeyInfrastructino)的数字签名技术。
1、手写签名或图章的模式识别
将手写签名或印章作为图象,用光扫描转换后在数据库中加以存储,当对此人进行验证时,用光扫描输入,并将原数据库中对应图象调出,用模式识别的数学计算方法,进行比对,以确认该签名或印章的真伪。这种方法曾经在银行会计柜台使用,由于需要大容量数据库存储以及每次手写签名和盖印的差异性,证明了这种方法不适用于互联网上传输。
2、生物识别技术
生物识别技术是利用人体生物特征进行身份认证的一种技术,生物特征是一个人与他人不同的唯一表徵,它是可以测量、自动识别和验证的。生物识别系统对生物特征进行取样,提取其唯一的特征进行数字化处理,转换成数字代码,并进一步将这些代码组成特征模板存于数据库中,人们同识别系统交互进行身份认证时,识别系统获取其特征并与数据库中的特征模板进行比对,以确定是否匹配,从而决定确定或否认此人。生物识别技术主要有以下几种:
(1)指纹识别技术。每个人的指纹皮肤纹路是唯一的,并且终身不变,通过将他的指纹和预先保存在数据库中的指纹采用指纹识别算法进行比对,便可验
证他的真实身份。在身份识别的前提下,可以将纸质公文或数据电文按手印签
名或放于IC卡中签名。这种签名需要大容量数据库支持,适于本地面对面处理,不适宜网上传输。
(2)视网膜识别技术。视网膜识别技术利用激光照射眼球的背面,扫描摄取几百个视网膜的特征点,经数字化处理后形成记忆模板存储于数据库中,供以
后的比对验证。视网膜是一种极其稳定的生物特征,作为身份认证是精确度较
高的识别技术。但使用困难,不适用于直接数字签名和网络传输。
(3)声音识别技术。声音识别技术是一种行为识别技术,用声音录入设备反
复不断地测量、记录声音波形变化,进行频谱分析,经数字化处理之后作成声
音模板加以存储。使用时将现场采集到的声音同登记过的声音模板进行精确的
匹配,识别身份。这种技术精确度较差,使用困难,不适用于直接数字签名和
网络传输。
以上身份识别方法适用于面对面场合,不适用远程网络认证及大规模人群
认证。
3、密码、密码代号或个人识别码。
传统的对称密钥加/解密的身份识别和签名方法。甲方需要乙方签名一份电子文件,甲方可产生一个随机码传送给乙方,乙方用事先双方约定好的对称密
钥加密该随机码和电子文件回送给甲方,甲方用同样对称密钥解密后得到电文
并核对随机码,如随机码核对正确,甲方即可认为该电文来自乙方。适用远程
网络传输,对称密钥管理困难,不适合大规模人群认证。
在对称密钥加/解密认证中,在实际应用方面经常采用的是ID+PIN(身份唯
一标识+口令)。即发方用对称密钥加密ID和PIN发给收方,收方解密后与后台存放的ID和口令进行比对,达到认证的目的。人们在日常生活中使用的银行卡就是用的这种认证方法。适用远程网络传输,对称密钥管理困难,不适用于电
子签名。
4、基于量子力学的计算机
量子计算机是以量子力学原理直接进行计算的计算机.使用一种新的量子密码的编码方法,即利用光子的相位特性编码。由于量子力学的随机性非常特殊,无论多么聪明的窃听者,在破译这种密码时都会留下痕迹,甚至在密码被窃听的同时会自动改变。可以说,这将是世界上最安全的密码认证和签名方法。但是,这种计算机还只是停留在理论研究阶段,离实际应用还很遥远。
5、基于PKI的电子签名
基于PKI(公钥基础设施)的电子签名被称作"数字签名"。有人称"电子签名"就是"数字签名"是错误的。数字签名只是电子签名的一种特定形式。因为电子签名虽然获得了技术中立性,但也带来使用的不便,法律上又对电子签名作了进一步规定,如上述联合国贸发会的《电子签名示范法》和欧盟的《电子签名共同框架指令》中就规定了"可靠电子签名"和"高级电子签名"。实际上就是规定了数字签名的功能,这种规定使数字签名获得了更好的应用安全性和可操作性。目前,具有实际意义的电子签名只有公钥密码理论。所以,目前国内外普遍使用的、技术成熟的、可实际使用的还是基于PKI的数字签名技术。作为公钥基础设施PKI可提供多种网上安全服务,如认证、数据保密性、数据完整性和不可否认性。其中都用到了数字签名技术。这也是本文叙述的重点。
二、数字签名的技术保障
1、什么是数字签名
数字签名在ISO7498-2标准中定义为:"附加在数据单元上的一些数据,或是对数据单元所作的密码变换,这种数据和变换允许数据单元的接收者用以确认数据单元来源和数据单元的完整性,并保护数据,防止被人(例如接收者)进行伪造"。美国电子签名标准(DSS,FIPS186-2)对数字签名作了如下解释:"利用一套规则和一个参数对数据计算所得的结果,用此结果能够确认签名者的身份和数据的完整性"。按上述定义PKI提供可以提供数据单元的密码变换,并能使接收者判断数据来源及对数据进行验证。
PKI的核心执行机构是电子认证服务提供者,即通称为认证机构
CA(Certificate Authority),PKI签名的核心元素是由CA签发的数字证书。它所提供的PKI服务就是认证、数据完整性、数据保密性和不可否认性。它的
作法就是利用证书公钥和与之对应的私钥进行加/解密,并产生对数字电文的签名及验证签名。数字签名是利用公钥密码技术和其他密码算法生成一系列符号
及代码组成电子密码进行签名,来代替书写签名和印章;这种电子式的签名还
可进行技术验证,其验证的准确度对手工签名和图章的验证无法比拟的。这种
签名方法可在很大的可信PKI域人群中进行认证,或在多个可信的PKI域中进
行交叉认证,它特别适用于互联网和广域网上的安全认证和传输。
2、公钥密码技术原理
公开密钥密码理论是1976年美国发表的RSA算法,它是以三个发明人的名字命名的,后来又有椭圆算法ECC,但常用的、成熟的公钥算法是RSA。它与传统的对称密钥算法有本质的区别,对称密钥算法常用的是DES算法,加/解密时用的是同一个密钥。而公钥算法利用的是非对称的密钥,即利用两个足够大的
质数与被加密原文相乘生产的积来加/解密。这两个质数无论是用哪一个与被加密的原文相乘(模乘),即对原文件加密,均可由另一个质数再相乘来进行解密。但是,若想用这个乘积来求出另一个质数,就要进行对大数分解质因子,分解
一个大数的质因子是十分困难的,若选用的质数足够大,这种求解几乎是不可
能的。因此,将这两个质数称密钥对,其中一个采用私密的安全介质保密存储
起来,应不对任何外人泄露,简称为"私钥";另一个密钥可以公开发表,用数
字证书的方式发布在称之为"网上黄页"的目录服务器上,用LDAP协议进行查询,也可在网上请对方发送信息时主动将该公钥证书传送给对方,这个密钥称之为"公钥"。
公/私密钥对的用法是,当发方向收方通信时发方用收方的公钥对原文进行加密,收方收到发方的密文后,用自己的私钥进行解密,其中他人是无法解密的,因为他人不拥有自己的私钥,这就是用公钥加密,私钥解密用于通信;而
用私钥加密文件公钥解密则是用于签名,即发方向收方签发文件时,发方用自
己的私钥加密文件传送给收方,收方用发方的公钥进行解密。
但是,在实际应用操作中发出的文件签名并非是对原文本身进行加密,而
是要对原文进行所谓的"哈希"(Hash)运算,即对原文作数字摘要。该密码算法
也称单向散列运算,其运算结果称为哈希值,或称数字摘要,也有人将其称为"数字指纹"。哈希值有固定的长度,运算是不可逆的,不同的明文其哈希值是不