(通信与信息系统专业论文)可视化电子签章系统设计与实现.pdf_第1页
(通信与信息系统专业论文)可视化电子签章系统设计与实现.pdf_第2页
(通信与信息系统专业论文)可视化电子签章系统设计与实现.pdf_第3页
(通信与信息系统专业论文)可视化电子签章系统设计与实现.pdf_第4页
(通信与信息系统专业论文)可视化电子签章系统设计与实现.pdf_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

武汉理工大学硕十学位论文 摘要 随着计算机技术以及互联网对人们日常生活影响的加深,电子商务与电子 政务正变得越来越重要,电子商务与电子政务的安全性要求也变得越来越高。 为了解决现有的电子签章系统不能对文档格式中的重要信息进行保护的问题, 提出了对现有电子签章系统的相关改进。 论文首先说明了课题的研究背景、发展现状以及论文所作的主要工作。然 后介绍了课题所设计的几个基本理论知识,具体讲述了数字签名的实现原理, 数字水印的基本模型以及c o m 技术的形成以及发展流程。系统设计内容中,结 合现有电子签章系统的特点,介绍了本课题中系统设计的主要目标,完成系统 设计流程图以及系统功能模块的划分。根据电子签章系统的功能以及系统流程 将电子签章系统划分为四个基本模块:消息摘要值计算模块,数字签名生成模 块,数字水印嵌入及提取模块,电子签章嵌入及识别模块。其中消息摘要值计 算模块主要需要设计如何提取文档需要保护的内容;数字签名生成模块首先是 数字签名算法的设计,在数字签名算法确定以后,对消息摘要值计算模块中的 结果进行签名;数字水印嵌入及提取模块主要负责用适当的数字水印嵌入及提 取算法将签名结果作为水印信息嵌入到图章图片中:电子签章嵌入及识别模块 主要负责将电子签章作为一个相对独立的对象在文档中进行相关操作。论文理 论分析中,分别分析了签章域数字水印算法分析以及对一种自证明数字签名算 法的改进,并且完成一种基于椭圆曲线密码体制的自证明数字签名算法分析。 论文系统实现部分,针对w o r d2 0 0 3 采用c o m 技术制作插件,通过v b a 实现 对文档的控制,结合消息摘要值计算函数以及数字签名与数字水印等理论分别 完成了四个模块的设计内容。论文的创新点和特色之处归纳为以下三个方面: 第一,在系统中采用基于椭圆曲线的自证明数字签名算法,使系统具备较 短密钥和较高安全性。 第二,能够实现对文档关键格式信息的保护,从而可以抵抗针对文档文字 格式的攻击。 第三,系统采用数字水印的方式完成签名信息的嵌入,具备一定的扩展性。 关键字:电子签章,c o m ,v b a ,自证明数字签名 a bs t r a c t w i t ht h ed e e p e n i n gi m p a c to np e o p l e sd a i l yl i v e sb yc o m p u t e rt e c h n o l o g y a n d h l t e m e t e - c o m m e r c ea n de - g o v e r n m e n ti sb e c o m i n gm o r ea n dm o r ei m p o r t a n t ,a tt h e s a m e t i m e m es e c u r i t yr e q u i r e m e n t sa r eb e c o m i n gh i g h e ra n dh i g h e r i no r d e rt os o l v e t h ep r o b l e mt h a te x i s t i n ge - s i g n a t u r es y s t e m sc a nn o tp r o t e c ts o m ei m p o r t a n t m t o r m o ft h et e x tf o r m a t ,p r o p o s e ds o m er e l a t e di m p r o v e m e n t p a p e rf i r s t l yi n t r o d u c eb a c k g r o u n do f t h i st o p i c s ,d e v e l o p m e n ts h a t u s ,a n dm a i nw o r k s o ft h i sp a p e r a n dt h e ng i v ei n t r o d u c t i o n sa b o u tt h eb a s i ct h e o r e t i c a lk n o w l e d g e , w h i c he l a b o r a t eo nt h er e a l i z a t i o no fp r i n c i p l e so fd i g i t a ls i g n a t u r e s ,t h eb a s i c m o d e l o fd i g i t a lw a t e r m a r k i n g ,a sw e l l a st h ef o r m a t i o na n dd e v e l o p m e n to fc o m t e c h n o l o g y i nt h ec o n t e n to fs y s t e md e s i g n ,c o m b i n e dw i t ht h ec h a r a c t e r i s t i c so f t h e e x i s t i n ge l e c t r o n i cs i g n a t u r es y s t e m s ,m a i n l yd e s c r i b e st h em a i no b j e c t i v eo fs y s t e m d e s i g n ,s y s t e md e s i g n f l o wa sw e l la st h ed e l i n e a t i o no fs y s t e m f u n c t i o n m o d u l e a c c o r d i n gt ot h ef u n c t i o n so fe - s i g n a t u r es y s t e ma n dt h es y s t e mp r o c e s s e s , t h ee l e c t r o n i cs i g n a t u r es y s t e n li sd i v i d e di n t of o u rb a s i cm o d u l e s :m e s s a g ed i g e s t v a l u ec a l c u l a t i n gm o d u l e ,d i g i t a ls i g n a t u r eg e n e r a t i n gm o d u l e ,d i g i t a lw a t e r m a r k e m b e d d i n ga n de x t r a c t i n gm o d u l e ,d i 酣a 1s i g n a t u r ee m b e d d i n g a n di d e n t i f y i n g m o d u l e i nm e s s a g ed i g e s tv a l u ec a l c u l a t i n gm o d u l e w en e e dt od e s i g nh o wt oe x t r a c t m ec o n t e n to ft h ed o c u m e n tt h a t n e e dt op r o t e c t ;i nd i g i t a ls i g n a t u r eg e n e r a t i n g m o d u l ew ef i r s t l yn e e dt od e s i g nd i g i t a ls i g n a t u r ea l g o r i t h m ,a n dt h e ns i g n a t u r et h e r e s u l to fm e s s a g ed i g e s tv a l u ec a l c u l a t i n g ;d i g i t a l w a t e r m a r ke m b e d d i n ga n d e x t r a c t i o nm o d u l ei sm a i n l yr e s p o n s i b l ef o rc h o o s i n gd i g i t a lw a t e r m a r ke m b e d d i n g a n de x t r a c t i n ga l g o r i t h ms i g n a t u r ea n de m b e d i n gr e s u l to fs i g n a t u r i n gt h e i n f o r m a t i o n a saw a t e m l a r ki n t ot h es e a lp i c t u r e ;d i g i t a ls i g n a t u r ee m b e d d i n ga n di d e n t i f y i n g m o d u l ei sm a i n l yr e s p o n s i b l ef o ro p e r a t i n gt h ee l e c t r o n i cs i g n a t u r e a sar e l a t i v e l y i n d e p e n d e n to b j e c t i nt h ed o c u m e n t i nt h e o r ya n a l y s i s ,a n a l y z e t h ed i g i t a l w a t e 锄a r l ( i n ga l g o r i t h mi ne s i g n a t u r ed o m a i na n di m p r o v e o n es e l f - c e r t i f i e dd i g i t a l s i g n a t u r ea l g o r i t h m ,a n da n a l y z eas e l f - c e r t i f i e d d i g i t a ls i g n a t u r ea l g o r i t h md e s i g n l l 一一亟坚墨兰叁堂堡主堂堡堡茎 一一 _ _ - - _ _ _ _ 一。一 b a s e do ne l l i p t i cc u r v ec r y p t o g r a p h y i ni m p l e m e n t a t i o n so ft h es y s t e md e s i g n s m a l ( i n gu s eo fc o mt e c h n o l o g yt od e s i g nw o r d2 0 0 3p l u g - i n i ns y s t e md e s i g n i n g ,a n d t h r o u g hv b at e c h n o l o g yt o a c h i e v ec o n t r o lo ft h ed o c u m e n t ,c o m b i n a tm e s s a g e d i g e s tv a l u ec a l c u l a t i o nf u n c t i o n s ,a n dd i g i t a ls i g n a t u r e s ,d i g i t a lw a t e r m a r k i n g a n d o t h e rt h e o t i e st oc o m p l e t e dt h ed e s i g no ft h e f o u rm o d u l e s t h ei n n o v a t i o na n d c h a r a c t e r i s t i e so ft h ep a p e rr e f l e c t si nt h ef o l l o w i n gt h r e ea s p e c t s : f i r s t i nt h es y s t e mu s i n gt h es e l f - c e r t i f i e dd i g i t a ls i g n a t u r ea l g o r i t b _ mb a s e d o ne l l i p t i cc u l w e ,a l l o w i n gt h es y s t e mw h i rs h o r t e rk e y sa n dh i g h e l s e c u r i t y s e c o n d c a l lp r o t e c t et h ei n f o r m a t i o no fk e yf o r m a to ft h ed o c u m e n t ,s oa b l e t or e s p o n dt oa t t a c k sa g a i n s tt h ed o c u m e n tf o r m a t t h i r d ,t h es y s t e ma c c o m p l i s h e de m b e d i n gs i g n a t u r ei n f o r m a t i o nb a s e do n d i g i t a l ,h a v i n g c e r t a i nd e g r e eo fe x p a n s i b i l i t y k e yw o r d s :e l e c t r o n i cs i g n a t u r e s ,c o m ,v b a ,s e l f - c e r t i f i e dd i g i t a ls i g n a t u r e , i i i 独创性声明 本人声明,所呈交的论文是本人在导师指导下进行的研究工作及 取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外, 论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得 武汉理工大学或其它教育机构的学位或证书而使用过的材料。与我一 同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说 明并表示了谢意。 学位论文使用授权书 本人完全了解武汉理工大学有关保留、使用学位论文的规定,即: 学校有权保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和借阅。本人授权武汉理工大学可以将本学位论文的 全部内容编入有关数据库进行检索,可以采用影印、缩印或其他复制 手段保存或汇编本学位论文。同时授权经武汉理工大学认可的国家有 关机构或论文数据库使用或收录本学位论文,并向社会公众提供信息 服务。 ( 保密的论文在解密后应遵守此规定) 研究生( 签名) :钢饭邪一导师( 签名) 形笱幺矗日期 武汉理r 大学硕士学位论文 1 1 研究背景 第1 章引言 计算机技术、信息技术、网络技术的飞速发展使得计算机和网络对于日常生 活的各个方面都有了较大程度的影响。作为影响结果之一的电子商务和电子政 务的发展也是非常的迅速。电子商务和电子政务中的重要信息一般是以电子文 本、文档的形式存储和传输的。其安全性问题具体表现在文本、文档的内容的 完整性,可靠性等【l 】。传统的政务和商务活动中,我们通过手写签名或者加盖印 章的方式来保证文档的真实可靠,而在现代的政务和商务活动中,由于合作的 范围扩大,很多时候活动的双方是通过电子文档的方式来传递资料或者信息的, 为了保证资料或者信息的真实可靠就必须要给电子文档“签名”或者“盖章 , 这也是数字签名和电子签章技术分别实现的功能。 电子签章的产生有着特殊的背景。数字签名能解决签名的否认、伪造、篡 改及冒充问题,可以起到印章的法律功划2 1 。但数字签名结果是不可视的计算机 数据,它只是在机器与机器或者说是计算机系统与系统之间存在着。将数字签 名与印章( 签名) 图片以及被盖章文件绑定在一起就产生了电子签章,它是现代计 算机密码学与印鉴文化相结合的产物,电子签章相对于数字签名来说更接近现 实生活。在电子签章系统的设计中需要考虑的问题很多,其中比较重要的有消 息摘要值、数字水印嵌入及提取,数字签名算法设计以及签章模块的识别等。 消息摘要值算法的选取主要是为了将文本中相对重要信息压缩,以加快系统的 运行速度。因为消息摘要值有着数字指纹的功能,能够从任意长度文本中计算 得出固定长度文本,而且文本中的内容只要发生很小的变化,消息摘要值计算 结果就会有很大的变动。而数字水印的使用时为了确保签章图片的“版权 ,因 为数字水印信息为签名者的对消息摘要值数字签名结果。电子签章系统中设计 签章的嵌入及识别模块需要综合v b a 的知识实现。可以说电子签章系统的设计 结合了c o m 组件技术,v b a 技术,另外还要对数字水印算法和公钥密码体制 以及数字签名算法有一定的了解。电子签章系统的应用前景非常广泛的,相信 它能够为人们的网络使用带来极大的安全性保证。 武汉理工大学硕士学位论文 1 2 国内外发展现状 目前电子签章技术的发展相当迅速。这种结合了数字签名和数字水印两大技 术的新技术随着数字签名技术和数字水印在各自领域的新发展而不断地改进和 提高,到目前为止已经有许多电子签章系统被设计出来。 我国从2 0 0 3 年6 月1 日起开始实施中华人民共和国电子签章条例, 2 0 0 5 年4 月1 日又启动了中国首部真正意义上的信息化法律电子签名法, 这些都大大加速了电子签章技术的进一步研究及应用。目前,国内已经有多家 公司开发的电子签章系统基本都符合了电子签名法的规范,并应用于各种 组织机构中。但是,国内电子签章技术的发展仍然有许多急需解决的问题,如 国内c a 行业地方性、行业性问题,数字签名信息在电子签章系统中的保护不足 问题,电子签章系统水印嵌入算法相互不同需要各自系统才能进行验证等等p 】。 如果能够有效解决以上各种问题,那么电子签章技术的发展空间也将大大扩展, 不但能用于电子政务、电子商务中,也将进入一般的网络活动中,真正为一般 性网民提过身份证的颁发及验证,规范人们的网络行为,让网络更好的为我们 所用。 电子签章技术与数字签名不同,它在功能上与数字签名是相近的,但是更具 可视化的效果。而图章的应用在欧美地区的使用相对于国内来说并没有那么普 遍,所以他们在电子签章领域的研究也就没有更多的投入。欧美地区等研究的 重点是数字签名。自公钥密码系统提出以后,国外学者在数字签名领域获得了 许多研究成果,这也一定程度上帮助了电子签章技术的发展。在相关法律的制 定方面,1 9 9 7 年8 月德国首先颁布了电子签章法;1 9 9 8 年6 月新加坡通过了电 子签章法;韩国于1 9 9 8 年1 2 月立法通过电子签章法,并于1 9 9 9 年7 月生效; 2 0 0 0 年1 月香港通过了电子签章法;美国、日本于2 0 0 0 年6 月颁布了电子签章 法;欧盟于2 0 0 0 年1 月完成了电子签章法指令的制定,英m ( 2 0 0 0 年7 月) 、法 国( 2 0 0 0 年7 月) 。国外电子签章技术的发展较快的是日本、新加坡等,其中,日 本s h a c h i h a t a ,w a c o m 以及日商岩井3 家公司于2 0 0 2 年7 月2 2 日宣布开发出通 过电子印章在电子文本上盖章的系统“s h a c h i h a t ae 9o nt a b l e t ” 4 - 5 】。国外电子 签章技术的发展也促进了国内相关的研究。而且,近些年来应该说国内外在电 子签章领域的发展都处在个相同的较快发展的阶段,面临的问题和困难是一 样的。主要也是在c a 以及数字签名信息的保护这些问题上需要有所改进。 2 武汉理: 火学硕十学位论文 1 3 论文所作工作 本文的主要工作有以下几个方面: 1 ) 设计出一种对于文字格式中的关键信息进行保护的电子签章系统,能够 保证对包括文档内容以及字体颜色和字体大小的关键信息的修改进行检测,有 效防止电子环境下通过修改字体颜色等欺骗签章的攻击行为发生。 2 1 ) 提出一种基于椭圆曲线的数字签名算法。 3 ) 在签章域讨论数字水印算法的选取,提出一种基于l s b 算法的改进性方 案,该方案比较适合运用于电子签章系统设计。 4 ) 对一种自证明数字签名方案进行了适当改进,改进的方案在不降低原方 案的安全性能前提下能够提高方案的效率。 5 ) 签章系统整体设计与功能模块的划分。所设计系统一共包含消息摘要值 计算模块,数字水印嵌入及提取模块,数字签名生成模块以及电子签章嵌入及 识别模块。 武汉理t 大学硕士学位论文 第2 章可视化电子签章技术基本理论介绍 2 1 公钥密码体制及自证明数字签名 w h i t f i e l dd i f f i e 与m a r t i ne h e l l m a n 于1 9 7 6 年引进了密码学的一种新方 法,称为公开密钥密码。公开密钥密码的的思想是:找到一种系统( 体制) ,从加 密函数e ( k ) 计算脱密函数d ( k ) 在计算上是不可行的。这样ek 可以公布,使得 a l i c e ( 任何人) 用之加密,而只有b o b 一个人知道dk ,并能使之脱密。这类似于: a l i c e ( 任何人) 把一件物品放在金属盒中,然后用b o b 设下的暗码锁住,而b o b 是唯一能打开盒子的人。因为只有他知道暗码。麻省理工的r o nr i v e s t 、a d i s h a m i r 、1 e n a d l e m a n 于1 9 7 7 年提出第一个这样的公钥密码算法r s a ( - - - 位名字 的头字母) ,并成为最为广泛接受的公钥密码算法。在此之后又有很多人沿着这 个思路提出其他的公钥密码系统【6 j 。在公钥密码学中,密钥是由公开密钥和似有 密钥组成的密钥对。数字签名就是用私钥进行加密,接收方用公开密钥进行解 密,由于从公开密钥不能推算出( 计算上不可行) 私有密钥,所以公开密钥不会损 害私有密钥的安全;公开密钥无需保密,可以公开传播,而私有密钥必须保密。 由此当默认用其私有密钥加密消息( 用于数字签名是大都是是加密内容的消息摘 要值) ,能够用他的公开密钥解密他正确解密,就可以肯定该消息是某人签字的, 这就是数字签名的及本原理。因为其他人的公开密钥不可能正确解密该加密过 的消息,其他人也不可能拥有该人的私有密钥而制造出该加密过的消息。 公钥密码体制提出以后,在数字签名方面的研究受到很多学者的关注,期间 有很多研究成果,如r s a ,基于椭圆曲线的密码体制等等。然而,在数字签名的 发展过程中一直存在着被称为“公钥替换攻击”这个潜在的威胁。在公钥替换 攻击中,攻击者的攻击方法为用自己选定的“公钥 替换被攻击用户的真实公 钥。在最初的公钥密码体制中,借助于目录管理员集中管理用户的公钥。但是 这样以来每当用户之间发生通信的时候都要借助于目录管理员,使其通信能力 成为制约整个系统效率的关键,另外,目录管理员的密钥安全程度也可能成为 整个系统安全中的短板。为了突破这些限制,先后有三种不同安全级别的方案 提出来:基于数字证书的公钥密码体制,基于身份的公钥密码体制以及自证明 4 武汉理r 大学硕十学位论文 公钥密码体制。 1 ) 基于数字证书的公钥密码体制 在该密码体制中,c a 是绝对值得信任的第三方机构,由c a 负责数字证书的 颁发,注销等管理操作。例如微软的v b a 项目的证书就是其中的种。安装m s o f f i c e 后在m so f f i c e 工具中可以找到v b a 项目的数字证书,为数字证书取名 后可以自行创建一个数字证书。这个数字证书在没有c a 亦即证书的根目录的签 名认证时是不可信的,证书所包含的内容如图2 - 1 所示: 基于证书的密码体制与早期目录管理员的存在有一定的相似之处,而且存 储管理证书的工程可能较之前更加复杂。 2 ) 基于身份的公钥密码体制 基于身份的公钥密码体制最早在1 9 8 4 年由s h a m i r 提出。在基于身份的公钥 密码体制中,用户的公钥是由用户的一些标示身份的信息如姓名,电子邮件等 信息进过一定的计算方法计算得来,而其私钥是有可信第三方p k g 产生。在这 武汉理t 大学硕十学位论文 个密码体系中,由于公钥可以由用户的身份信息计算的来,因此不需要存储和 管理公钥,相对于基于证书的密码体制更为简单化。但是由于在这个系统中, 私钥由p k g 产生,那么就需要有专门的协议保证p k g 生成的密钥能够安全送达 用户。而且,更重要的是p k g 可以代替这个密码体制中的任意一个用户与其他 用户进行通信,这是基于身份的公钥密码体制所面临的一个较大的问题。 3 ) 自证明公钥密码体制 自证明公钥密码体制由g i r a u l t 在1 9 9 1 年提出。在该密码体制中使用 s c h n o r r 签名方案作为基础,这是一种在随机问答模式下被证明安全的数字签名 方案。在自证明公钥密码体制中,用户自己选取私钥,用户的公钥由用户信息 h a s h 以及用户私钥再加上系统中类似c a 的机构签名所产生的,可以说是由用户 与c a 共同生成。这样在这个系统中,用户的私钥真正意义上的成为私钥,只有 用户本人拥有,而其公钥的产生也有用户的参与。在与其他用户的通信中,由 于用户公钥相当于权威机构的签名,所以通过权威机构的公钥等公开信息就可 以完成认证过程。整个过程不再需要权威机构的介入,这样以来机构的计算量 能大大减少。而且自证明公钥密码体系本身就可以在现有的p k i 基础上建立起 来,所以自证明公钥密码体制有非常广阔的应用前景。 2 2 数字水印技术 数字水印是一种有效的数字产品版权保护和数据安全维护技术,是信息隐藏 技术研究领域的一个重要分支【7 母】。它将具有特定意义的标记( 水印) ,利用数字 嵌入的方法隐藏在数字图像、声音、文档、图书、视频等数字产品中,用以证 明创作者对其作品的所有权,并作为鉴定、起诉非法侵权的证据,同时通过对 水印的检测和分析来保证数字信息的完整可靠性,从而成为知识产权保护和数 字多媒体防伪的有效手段【1 2 1 。 而数字水印又分为很多种。一般来说可以分为可见水印和不可见水印。在不 可见水印种又包含易碎水印或半易碎水印等【l 孓1 5 】。其中易碎水印有个很重要的 特性就是未经授权者很难插入一个伪造的水印而授权者可以很容易地提取出水 印。数字水印嵌入基本模型如图2 2 所示: 6 武汉理1 = 大学硕+ 学位论文 图2 2 数字水印嵌入基本模型 按照数字水印提取时是否需要原始载体信息将数字水印划分为盲数字水印 和非盲数字水印。盲数字水印提取基本模型如图2 3 所示: 图2 3 盲数字水印提取基本模型 非盲数字水印提取基本模型如图2 - 4 所示: 图2 4 非盲数字水印提取基本模型 7 武汉理工大学硕士学位论文 在签章域中水印的作用主要用于认证,称为认证水印。一般选取前文介绍的 易碎水印作为认证水印【1 6 1 8 。认证水印的算法有很多种,按照嵌入域的不同可 以分为空间域认证水印和变换域认证水印。空间域认证水印比较经典的是最低 有效位l s b 替换算法。而变换域比较经典的则是基于离散余弦变换和基于小波 变换的认证水印技术【l 弘2 0 】。如果从认证水印水印信息的性质来划分认证水印的 类型,可以将认证水印划分为与载体信息相关认证水印和自定义认证水印。前 者指水印信息的生成依赖于原始载体信息,是从载体信息中提取出一部分信息 然后经过其他过程生成数字水印信息,即使嵌入方相同,水印信息也会因为载 体的不同而发生变化。本文所用的认证水印即属于这一类,水印信息为文本关 键信息的消息摘要值再经过签名算法生成的签名结果,所以即便签章的嵌入者 不变,但文本内容关键信息不同时水印信息会发生改变。后者指的是水印的信 息为嵌入者自己选定,对于不同的原始载体信息水印信息也都为同一类型,如 单位图标等等。 2 3 组件技术 程序设计方法在不断发生变化,从面向过程到面向对象再到现在常提到的 面向服务。在不同的发展阶段,开发人员在程序中可重用的部分有所不同,面 向过程中,可以重用函数;面向对象中可以重用用户定义的类等,而组件技术 的提出是为了能够使开发人员能够在程序模块这一级别上实现重用【2 卜2 3 1 。组件 技术是软件重用方法中最重要的一种方法,也是分布式计算和w e b 服务的基础。 网络应用中的软件组件,又被称为中间件( m i d d l e w a r e ) t 2 4 。2 5 】。组件技术的应用已 经非常广泛,例如w i n d o w s 编程中使用的公用对话框和a c t i v e 控件等。组件技 术的标准比较常用的为m i c r o s o f t 公司的c o m 技术以及c o r b a 。本系统中开 发中即使用了c o m 组件技术。c o m 技术的发展可以划分为三个阶段: d l l ( d y n a m i cl i n kl i b r a r i e s 动态链接库) ,o l e ( o b j e c tl i n k i n ga n de m b e d d i n g 对 象链接和嵌入) ,c o m ( c o m p o n e n to b j e c tm o d e l 组件对象模型) 。 2 3 1d l l 简介 严格说来,d l l 还不能算作组件技术,但是它却比较早的考虑到软件重用。 d l l 区别于通常所说的静态链接库,在静态库情况下,函数和数据被编译进一 武汉理工人学硕士学位论文 个二进制文件( 通常扩展名为宰l m ) ,编译器在链接过程中将从静态库中恢复这 些函数和数据并把他们和应用程序中的其他模块组合在一起生成可执行文件。 这个过程称为“静态链接”,此时因为应用程序所需的全部内容都是从库中复制 了出来,所以静态库本身并不需要与可执行文件一起发行。也正是由于静态链 接库在链接时程序调用库函数,所以如果每个程序都用到了公共库函数,那么 将形成很大的资源浪费:增加链接器负担,增加内存的开销。d l l 采用动态链 接,对公用的库函数,系统只有一个拷贝( 位于系统目录的木d l l 文件) ,而且只 有在应用程序真正调用时,才加载到内存。在内存中的库函数,也只有一个拷 贝,可供所有运行的程序调用。当再也没有程序需要调用它时,系统会自动将 其卸载,并释放其所占用的内存空间。 应用程序调用d l l 时通过操作系统来实现的,每个d l l 提供一个供外部程 序调用的函数:导出函数。 2 3 2o l e 简介 微软公司1 9 9 1 年推出对象链接和嵌入技术,它是一种相对简单的组件技术, 可以看做c o m 技术的前身。d l l 链接中一般为函数等,但是o l e 技术却允许 客户端程序调用一个服务器端的程序,整个调用过程就像是将服务器端程序嵌 入到客户端程序中。o l e 在刚推出时可以看做一套可扩充的协议,它包含了 o l e c l i d l l 和o l e s v r d l l ,这套协议使客户端程序和服务器段程序之间可 以完成基本的通信,通信机制为动态数据交换d d e 。1 9 9 3 年微软公司对o l e 进行了一定的改进,使得客户端程序与服务器应用程序结合更加紧密,而且还 允许服务器继承客户的主菜单,另外也提供了c + + 的开发接口。o l e 基本调用 过程可用图2 5 表示: 客户端d l l d i ) e 通信机制 服务器端应用 回调ild l l 调用 服务器端d l l 图2 - 5o l e 基本调用过程 9 武汉理工大学硕士学位论文 2 3 3c o m 简介 1 9 9 3 年,微软对原o l e 改进后推出的o l e 2 0 实际已经具有了标准组件的 特性。同年,再0 l e 2 0 的基础上微软公司又推出了c o m 组件对象模型,o l e 成为了c o m 技术在链接和嵌入方面的一个具体应用。c o m 的核心是组件与组 件之前的交互规范,以此同时,c o m 提供c l s d 以便能够通过注册表来确定组 件的位置。c o m 采用自己的i d l 来描述组件的接口,支持多接口以解决版本兼 容问题。c o m 为所有组件定义了一个共同的父接口i u n k n o w n 。g u i d 是个 1 2 8 位整数( 1 6 字节1 ,c o m 将其用于计算机和网络的唯一标识符1 2 6 1 。 在c o m 模型中,所有将c l s i d 传递给c o m 并获得实例化的对象,都被称 为c o m 客户( 程序) 。最简单的实例化方式,是调用c o m 函数c o c r e a t e l n s t a n c e 。 也可以通过调用c o g e t c l a s s o b j e c t 函数来为c l s i d 获得类工厂( c l a s sf a c t o r y ) 对 象的接口指针【27 1 。用类工厂创建对象的过程如图2 - 6 所示: 构造 对象 图2 - 6 用类工厂创建对象 在c o m 技术的基础上,微软也致力于将o f f i c e 打造成为一个开发平台,其 中o f f i c e 插件技术与v b a 技术发展非常迅速。o f f i c e 插件本身也是一种c o m 组件,与其他组件不同的是,o 伍c e 插件必须实现一个i d t e x t e n s i b i l i t y 2 派生接 口,它是用来承载发生在外接程序上的事件通知( 如这些程序被加载、卸载、更 新时等) 。另外,d c o m ,c o m + 等也都是在c o m 技术基础上逐渐发展起来的。 l o 武汉理工人学硕士学位论文 第3 章可视化电子签章系统设计概述 电子签章的产生有着其特殊的背景。现实生活中,常常使用签字或者印章来 对某一纸质文档之类的内容进行确认、证明等。随着现代网络技术、计算机技 术以及信息技术的发展,使得现在越来越多的文档内容实现了无纸化,以电子 文档形式存在的文本内容代替了各种纸质的文档。随着无纸化的推广,其内容 的安全性问题也突显出来。主要包括了电子文档的完整性,可靠性等等。电子 签章就是在人们的这种需求下孕育而生的【2 & 3 1 1 。它是现代科技与印鉴文化相结 合的产物。 3 1 可视化电子签章系统设计目标 传统印鉴文化中的签名与盖章一般来说都是为了保证所签内容的完整性,不 可否认性。作为印鉴文化与现代技术相结合的电子签章系统来说,这些基本的 功能也应该能够具备。另外,基于水印的电子签章系统设计中还应该能够实现 以下目标【3 2 3 6 】: 1 ) 系统能够以可视化的形式显示签名的结果。在系统设计中,运用将签名 相关信息作为水印信息存放于电子图章图片中的方法将签名的结果以可视化的 形式显示出来。 2 ) 系统能够对文档的文本内容提供保护,保证文本内容的完整性。在系统 设计中,使用消息摘要值计算函数对文本内容进行保护,确保能够检测到文档 文本内容的改动,保证文本内容的完整性。 3 ) 系统能够对文档的格式相关信息提过保护。在系统设计中,要求使用某 种方法将文档的一些关键性的格式信息进行保护。保证能够检测到关键格式信 息的变化。 4 ) 系统中,文档的签名行为是不能否认的。在系统设计中,要求文档如果 签名后,签名的操作是不能进行否认的,能够确定签名的操作及签名的操作人。 5 ) 系统以组件的形式嵌入到w o r d 文档中使用。在系统的设计中,要求使用 组件技术,使得系统可以随意嵌入到w o r d 文档中使用,也方便以后功能的扩展。 武汉理工大学硕士学何论文 3 2 系统设计流程图 基于水印的电子签章系统根据操作的不同可以划分为文档签章和文档验证 两个部分。系统文档签章嵌入流程图如图3 1 所示: 签名尊法 图3 1 签章嵌入流程图 在进行文档的签章嵌入操作时,首先选取消息摘要值计算函数。一般来说有 m d 5 算法与s h a l 算法等。根据选取的消息摘要值函数对文档中需要保护的内 容进行求消息摘要值的计算。在本系统设计的设计目标中要求除文本文字内容 外,还要能够对文档的关键格式信息进行保护。因此,图中消息摘要值的内容 也应该是包含了文字内容和关键格式信息的文本内容的消息摘要值。在求得该 消息摘要值后,选择相应的数字签名算法对消息摘要之进行签名操作得到签名 结果。在得到消息摘要值签名结果后,选取相应的图章图片,然后再使用相应 的数字水印嵌入算法将签名结果嵌入到图章图片中生成签章图片。最后,将签 章图片与文档绑定形成签章文档。 签章文档发送给相应的接收者后,接收者按照图3 2 所示的签章验证流程图 对签章文档进行验证: 图3 - 2 签章验证流程图 1 2 武汉理工人学硕士学位论文 接收者接收到签章文档后,首先将签章文档中的文档与签章图片分别提取出 来进行相关的操作。其中,文档部分使用与签章文档相同的消息摘要值计算函 数将文档的文本内容与约定的关键格式信息一起计算得到消息摘要值结果。签 章图片部分则经过与发送者水印嵌入算法相对应的水印提取算法和与发送者签 名算法相对应的解签名算法得到签章文档的原始消息摘要值结果( 在这里暂未考 虑传输错误与攻击者对水印的攻击) 。比对两个消息摘要值的结果以达到对签章 验证的目的。 3 3 系统功能模块划分 根据方案设计的流程图,将基于水印的电子签章系统划分为以下几个模块: 1 ) 消息摘要值计算模块在该模块的设计中主要需要设计如何接收文档 需要保护的内容( 文本内容及关键格式信息) 以及存储消息摘要值的计算结果。 2 ) 数字签名生成模块在该模块的设计中,首先是数字签名算法的设计。 在数字签名算法确定以后,还应该考虑如何对消息摘要值计算模块中的结果进 行相关的签名操作。 3 ) 数字水印嵌入及提取模块在该模块中,主要是负责将数字签名模块中 的签名结果使用适当的数字水印嵌入及提取算法将签名结果作为水印信息嵌入 到图章图片中去。 4 ) 电子签章嵌入及识别模块该模块主要负责将电子签章作为一个相对 独立的对象在文档中进行相关的操作。 以下将详细介绍可视化电子签章系统各个功能模块: 3 3 1 消息摘要值计算模块 消息摘要值计算模块相对比较简单,它主要完成两个方面的内容:首先,确 定该模块中需要对哪些内容计算消息摘要值,其次就是选取什么样的消息摘要 值函数进行相关的计算。 对于第一个方面,在选取消息摘要值计算的对象的时候,主要是从文档所需 要保护的内容的角度出发来考虑。电子签章系统中为了保证文本的完整性,最 重要的就是文字的内容要不能够被修改,或者能够检测到修改并提示。这个在 本系统中也理所应当得以实现。另外,考虑到一种可能的攻击方式,本系统设 计时还将要把关键的格式信息作为消息摘要值计算对象的一部分。这种可能的 武汉理 大学硕十学位论文 攻击方式就是通过改变文字的颜色达到骗取签章的目的。这个主要是利用人眼 无法从同文字颜色一样的文档背景色中找出文字来实现的。例如通常所用文档 的背景色为白色,如果将1 0 0 的最后一个0 的字体颜色改为白的,那么一眼看 上去的话就会认为文本的内容为1 0 ,而不是正确的值1 0 0 。这种攻击方式利用 了人眼识别的特点,而且在电子环境下发生的概率应该远比在纸质文档下发生 的概率要高。另外,还有其他利用相应格式信息进行的攻击,如文字大小等。 所以在本系统中将关键的格式信息如字体的大小及字体颜色等看做消息摘要值 计算对象的一部分,以达到更近一步保护文档的作用。而为了能够将这类关键 信息提取出来,就需要了解到v b aw o r d 对象等相关的知识,并对于对象的属性, 例如子对象的字体属性,段落对象的格式属性等等有相应的认识,这些内容将 在模块实现时做相应的简单介绍。 在消息摘要值函数,也就是散列函数的选取方面,一般来说比较常用的有两 种,首先是m d 5 算法,然后是s h a l 。这两种算法都运用的比较广泛,使用起 来的效果也差不多,都是从不定长的文本消息中输出一定长度文本消息摘要值。 单单从安全的角度考虑,采用s h a l 是比较合适的,s h a l 在安全性方面的表现 要好于m d 5 。而且,在s h a l 自1 9 9 5 年发布以后另外有四个变种,他们主要的 区别在于各自都提升输出范围到不同的位数:2 2 4 位,2 5 6 位,3 8 4 位,5 1 2 位。 s h a l 目前来说被证明比m d 5 要相对安全【37 1 。但是m d 5 算法实现相对成熟, 应用相当广泛,而且,在签章域,即便能够通过对撞的方法找出与所要计算文 本的消息摘要值一样的文本内容,这些内容也应该是语法上无意义的,所以通 常用于破解密钥的攻击方法在签章域不会有攻击的效果。因此,本模块采用比 较成熟的m d 5 算法来计算文本的消息摘要值。 3 3 2 数字签名生成模块 数字签名作为公钥密码体制建立以来一项很重要的应用其发展相当快。在可 视化电子签章系统设计中,数字签名生成模块主要是负责对消息摘要值计算模 块产生的消息摘要值进行签名。重点应该放在数字签名算法的设计以及实现上。 数字签名算法一般有基于大因数分解,基于离散对数和基于椭圆曲线等几 种,是公钥密码体制的一种延续,实现的方法就在于公私钥密码对的存在以及 由公钥求出私钥等计算上的不可逆性。一般说来r s a 算法的应用是相对比较广 泛的,技术等相应成熟。但是最近椭圆曲线的研究发展十分的迅速,而且由于 1 4 武汉理工大学硕士学位论文 自身短密钥和相对较高的安全性使得基于椭圆曲线的数字签名算法越来越多, 安全性以及性能也大大提高。在本系统设计中采用的就是基于椭圆曲线密码体 制下的数字签名算法。 另外,在考虑数字签名算法时,也可以参考使用签密的方法来实现。签密作 为新的密码学构件可以在一个逻辑步骤内同时完成( 发送方) 数字签名和( 接收者) 公钥加密二者的功能。并且所花费的代价,包括计算时间和消息扩展两个方面, 要远远低于传统的先签名后加密的方法,因而它是实现既保密又认证地传输及 存储消息的较为理想的方法。在签章域,有时候我们需要对签名的结果进行保 密,也就是需要进行既保密又认证的传输。在这个时候,通常来说会

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论