




已阅读5页,还剩64页未读, 继续免费阅读
(计算机应用技术专业论文)网络环境下数据加密的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ab s t r a c t wh i t e t h e e - c o m m e r c e h a s b e c o m e m o r e a n d m o r e i m p o r t a n t i n t r a d e , t h e e - s e c u r it y i s b e c o m in g a c r i t i c a l p r o b l e m o f i t . t h e e n c r y p t i o n a n d d i g i t a l s i g n a t u r e i s t h e c u t - e d g e r e s e a r c h f i e l d i n t h e e - s e c u r i t y s e c t o r . t h i s t h e s i s i n t r o d u c e t h e p k i t h e o r y a n d e x p l o r e t h e i m p l e m e n t o f i n f o r m a t i o n s e c u r i t y u n d e r i n t e r n e t e n v i r o n m e n t . t h e t h e s i s w a s d i v i d e d i n f o u r p a r t s : t h e g e n e r a t io n a n d m a n a g e m e n t o f d i g i t a l c e r t i f i c a t i o n , u t i l i z i n g o f p u b l ic s y s t e m . u t i l i z in g o f d i g i t a l s i g n a t u r e , t h e e s t a b l i s h m e n t o f s s l s e c u r e t u n e . 1 d i s c u s s e d t h e p r o b l e m s f r o m t h e v i e w o f t h e o r y a n d i m p l e m e n t u n d e r j a v a l a n g u a g e , a n d e x p l o r e a p r a c t i c a l w a y t o r e a l i z e t h e g o a l . t h e r e a r e t w o w a y s t o e n c r y p t t h e d a t a : s y m m e t r i c a l g o r i t h m e n c r y p t i o n , p u b l i c - k e a l g o r i t h m e n c r y p t i o n . t h e s y m m e t r i c a l g o r i t h m c a n e n c r y p t a n d d e c r y p t v e r y f a s t , w h i l e i t s s e c r e t k e y h a s t o b e s h a r e d b y t h e t w o s id e s ; t h e p u b l i c - k e y a l g o r i t h m n e e d n t t o t r a n s f e r t h e s h a r e d s e c r e t k e y , b u t e n c r y p t / d e c r y p t m u c h s lo w ly c o m p a r e d w i t h t h e s y m m e t r i c a l g o r i t h m . i n p r a c t i c e , w e h a v e t o c o m b i n e t w o m e t h o d s t o m e e t t h e r e q u i r e m e n t u n d e r i n t e r n e t e n v i r o n m e n t : t o e n c r y p t t h e p l a i n t e x t w i t h t h e s y m m e t r i c a l g o r i t h m a n d t o e n c r y p t t h e s e c r e t k e y w it h p u b l i c - k e y a l g o r it h m . i n t h e p k i s y s t e m , w e h a v e t o s t o r e t h e p u b l i c k e y a n d p r i v a t e k e y w it h c e r t i f i c a t e a n d p r i v a t e k e y i n f o r m a t i o n s t a n d a r d r e s p e c t i v e l y . i n t h i s p r o j e c t , w e s t o r e t h e p u b l i c k e y w i t h x . 5 0 9 c e r t i f ic a t e a n d t h e p r i v a t e k e y w i t h p k c s # 8 s t a n d a r d . a l l t h e s e o p e r a t i o n s w e r e i m p l e m e n t b y i a i k j c e c l a s s l i b r a r y . d i g i t a l s i g n a t u r e i s a n i m p o r t a n t m e t h o d t o s e c u r e t h e i n f o r m a t i o n o v e r i n t e r n e t . i t c a n a u t h e n t ic a t e t h e i d e n t i f i c a t i o n o f t h e p a r t i c i p a n t o f e - c o m m e r c e . i n t h i s p r o j e c t , i u s r t h e md 5 a s i t s d i g e s t a l g o r i t h m a n d s h a - 1 a s i t s d i g i t a l s i g n a t u r e a l g o r i t h m , a n d i m p l e m e n t i t w i t h s u n j a v a x c l a s s l i b r a r y . i n t h e p r o j e c t , a l l t h e d a t a a r e t r a n s f e r b y s s l s e c u r e t u n e . k e y w o r d : i n f o r m a t i o n s e c u r it y , j a v a , d i g i t a l c e r t i f ic a t e , p u b l i c k e y , p k i , e n c r y p t io n 第一节 绪ii 第一章绪 论 1 .i 本课题的意义 近年来,互联网络以其简捷、方便以及费用低廉等优点,已 经越来越深入的渗透 11 人们的生活之中,成为人们信息交流的布要手段原来的传统的信息媒体诸如纸张、胶 片、磁带等纷纷让位于电子媒体。 人们可以 在网络土通过网络门户如y a h o o . s o h n p f i旬 资钊, 或者通过电子邮件以及b b s 等在网上交流信息, 这一切都大大的 提高了 人们的i 作效率。 i - 联网络不仅能够给人们提供信9 资料,网上电子 商务的开展使网上购物、iaj 卜 _ i公f 等成为司能,大大地影响了 人们的生活 同时电子商务的出 现标志着互 联网从 个主要提供信 +, 服务的网络向商业领域的拓展,这样就可以吸引更多得资金投入到1 - 联 网络的建设之中,从而更大的促进网络的发展。 所有这 , 切不仅给人们带来了前所未有的便利,同时也给人们提出了新的挑战i , 人互联网络上都有大量数据在传输,这其中既有对安全性要求相对较低的网页内容,也 有安全要 求相对较高的电 子邮件以 及i c q信息, 还有要求高 度保密的电子商务交易数据。 所有这一切,都对互联网上的数据安全提出了更高的要求。 由于i n t e r n e t 网络木身的开放性, 使每一个上网的用户既成为网络的受益者也可能成 为网络的破坏者。同样由于目前i n t e r n e t 网络的无序化,i n t e r n e t 的网络秩序基木仁 处 无 法可依的状态。 囚此就要求网 _ 用户对 一 传来的数据进行了加密/ 解密、 签名 / 校验等1 _ 作 以保证白己的网上安全。 目 前所有在互联网网络上的通信都使用 t c p / i p协议,山于互联网络本身 特点以及 t c p / i p协 议的弱点, t c p / i p 协议在信息到达终点 之前可能 要通过许多中间计算机和f p 独 的网络, 这使得它的传输信息容易受到第三方的干扰, 因此使得在i n t e r n e t 1 一 传输的数据 面临着各种安全问题。在网络上传输的数据对于数据的安全性也有不同的要求,例如, 传输的网页数据仅仅要求不被篡改即可,而电子邮件则要求不能被窃听或者篡改,而电 了商务中传输的敏感数据,如订货单等则要求相当高的安全性,其数据不能被窃听、篡 改, 司 时接收万 和发送方必须不能被假冒。同时网上 还有一些数掘, 如个人信用仁 密码、 个人 档案、 政肘公义 等都对数抓传输的安全性提出了 较高的要求。 网络上的安全问题主要有以下 少 l 种: 窃听:信息依然完整,但其隐私权已经受到损害。例如,有些人可以获得你的信川 卜号码,记录敏感的对话信息,或者窃取机密信息 篡改:传输的信息被改变或者替换,然后发送给接收方。例如有些人可以修改货物 的订单内容,或者更改一 个人的简历等。 冒充:网络传输的信息为假冒者所接收/ 发送。冒充可以山两种形式: 第章 结l l: 山. 诱 骗:一 个人可以 伪装成另 外一个 人。 例 如 个人可以 伪 装他拥有他人 的e m a i l , 或者一个计算机可以 伪装为另 个计 算机。 这种冒充力 一 式称为诱 骗 ( 2 ) . 欺诈:在网 络环境下一 个人或者组织的行为 也可以构成欺咋 。 例如, ; 内 点w w w .m o z i l a .c o m p 一 以 伪装成一 个家具商 店, 而实际上它只是接收信用卜 支 干 、 i ( p 不卖出商品。 相应的,针对网上 数据传输的安全性提出了以卜 的要求: 1 . # 1 l 密:数据不会被未授权的窃听者所窃取。 2 . ._ f 认证性:能够确认文件的来源,确实是传送者本人,而不是山别人伪造的_ 3 .完蔡性:文 件是真正的原文,并未被无意或者恶意的篡改 4 .小i i 台认 性:发送方在发送文 件之后,不可否认他曾 送出这份文件。 所有这儿项要求,土要是通过对数据的加密和数字签名来实现的。其中对数据的加 密处理主要是为了防治数据不会被窃听。如果使用非对称密钥加密算法,它 还司以保证 对发送包和接收方的身份的确认。而数字签名实际上是由生成摘要和生成数字签名两部 分构成其中摘要可以防止文件被篡改,从而保证信息的完整性:而数字签名则是为了 保障钧商务活动件 , 数据的不可否认j目,从而使数据具有法律_ 的意义。 对数据进行加密和数字签名的理论基础是密码算法。对密码算法的研究占已有之, 它的基本思想是对原始数据进行了复杂的变换,以使非法接收者很难从中破泽出原始的 信p , ,而合法用厂 则可以利用密钥解开密文。密码算法是信息安全的重要基础之 一 ,但 是仅仅密码算法并无法达到对网络环境下数据的安全性所提出的要求,还必须有“ 任 具 它机制协 助刁能完成这些功能,这些相关的机制就是本课题所要探讨的一些内容。 目前用于 数据加密的加密方式有两种,其中之 一 就是传统的对称密钥加密方法,送 种加密方法的原理很简单,就是加密方用一把密钥对数据进行加密,而解密方用同 把 密钥划数据进令 丁 解密。从古罗马时代,这种方法就己 经被用于军事情报的传送。 现代密 码学对其改进在于加密过程是公开的标准化的算法,其好处是可以让 人们检验加密的强 度,同时防止算法设计者在算法中藏有后门。 而目前讨论最多的是非对称密钥加密方式,它是与传统加密方式完全不同的加密体 系,6这种加密体系中,使用一对而不是一个密钥进行加密、解密操作。而且在理沦 - 需要个公卜 的第 一 方来保存其中一个密钥( 公共密钥) , 为此产生了一 个新的体系 p k i , 这个体系用来实现公共密钥的保存和发放。 伴随着它产生系列在密码学之外的; 题,如公开密钥用户的确认、对于 过期的公开密钥 ( 证书)的吊销等,从而需要产/ 个c a认证中 心来实现这些操作。 对) 场 一 小见 而的双方如何确认身份,这是 现代数据安全传 送中提出 的新问题。 特别 是当电子 商务蓬勃发展起来之后, 交易双方的身份确认成为确认交易合法性的重要步骤 11 它在网络世界和在现实世界的实现手段有很大区别。在现实世界,可以仅仅通过、 _ 法来 第一章 绪沦 育效的监督交易的if 一 常进行,同时可以方便的查出非法交易者的身份。但是在互 联网沟 虚拟世界里, 所有一切都是以电子 数据的方式来实现的,同时建立个跨越11 1 界的网络 0 1 规也是近期无法实现的。 所有这一切都要求从技术 l 一 , 而不是法律上来杜绝非法交易 日前网络环境卜 确认身份的手段主要是数字签名。数字签名和法律文件上 的手写签 名的功效足 致的,都是用来证明数据发送人的身份。它的要点也在于小可 伪造性和.门 校验性。i i 先,数字签名必须能够唯一的确认发送者的身份;其次,数字签名是ii i 以被 f 手 一 非签名者所检验的,这样,签名者就不能事后否认自己曾签发过这个文件 在实际应用中,加密和数字签名常常是集成在一起来使用的,它被称为数字信引 它满足了 网 络环境下 对数据安全传 输的四 个基本要求。在实践中加密和破译、防伪和伪 造是相反相成的两对矛盾,随着互联网络的应用和普及,网络数据的安全问题将不断的 推陈出新。 1 .2 国内外研究概况 由上 本课题的性质,国内外相关的资料较少,标准化的软件更是少而又少 i il i 所 了解的国内外的研究资料主要集中在三个方面:算法的改进、办 议的制定以及相关安个 数据标准的推出。 1 .相关算法的研究 在加密算法和数字签名算法方面,1 9 7 6 年d i f f i e和h e l l m a n 提出非对称密钥密码体 系是j 见 代密码学的r _ 程碑。自 此以后,密码算法的改进是沿着对称密钥密码体系和朴刊 称密钥密码体系两个分支发展的。 在对称密钥体系算法方面,继最常用的d e s算法之后,针对d e s密钥长度过短的 弱点,有所谓3 d e s 算法或d e s x算法,他们分别将密钥长度加长到 1 6 8 位和 1 8 4位 在1 9 9 7 年, 美国i7 家 标准局( n i s t ) 征集d e s 之后的r 一 代密码标准, 即a e s ( a d v a n c e e n c r y p t i o n s t a n d a r d ) , 白 有一点与d e s 不同, 即 密 钥长 度是a j 变的。 到1 9 9 9 年, 共子 5 个 算法入 选, 分别是m a r s ( i b m公司 ) 、 r c 6 ( r s a公司 ) 、 r ij n d a e l ( 比 利时) 、 s e r p e n t ( 英 i i=1 、以色列、 挪威) 、 t w o f i s h ( 美国) ,美国 在2 0 0 0 年 选出r ij i n d a e l 作为d e s 的一 代算 刀 、 八非对称密钥体系算法方面,日前呈百花齐放的局面。公开密钥都是草j 三 某此数卞 l 的难解问题,比较著名的算法有r s a算法和e l g a m a l 算法。目前最新的进展是椭圆曲 线密码算法。其中r s a算法主要是利用由两个大质数之积的模运算来实现。具基础足欧 i , 定理。其加密强度依赖于对大数因式分解的难度。而e i g a m a l 则是利用解离散对数的 问题。日前所有i 卜 对称密钥体算法的普遍缺点,就是其加密解密速度远较对称密钥算法 为慢。所以日前一 般不用它单独对大批量数据进行加密解密。而是与对称密钥加密力 一 法 第帝 绪沦 配f 丫 使川。 除了 核g , 均 加密解密 7 法乙外,6个 ik x1 络信自 、 加密系 统 ,还需要划数州达)数 丫签名以保证呀 份的认计。了 u 石此之前,, ;r 要使用单向散列函数 日 戊 对应j 几 原始数据的 唯 的散列值。同时在 对数据使用s s l女个通道进i t 传输时,需要对此次对话a 成叩 的 个m a c ( 信自 、 鉴别 码) 。 所以 实际上 在本课题中 一 共需要有5 个方面的算法进行组合; 对称密钥加密算i 1 . 、公开 密钥加密算法、 数字签名算法、单向散列算法、 信9 检验码帅 泪 。这八 种算法的关系是:对称密钊 vi 和日 对称密钥算法共同构成数据加密部分;r ll,j 4 1 列函数和数字签名算法共同构成数据数字签名算法部分;而信ol , 鉴别码是使) ii 对称 , f .j1 密码体制对单向散列函数输出值进行加密的结果,用于建立 s s l连接。表 1 -1列出了 他们ii勺 对) 、谈 的属侧 表 1 一 1课题中各算法的属c 机密n i ye s 验训 yesnono两 算法 对称密钥 i一 刊称密钥 数宇签名算法 信息鉴别码算法 单向散列函数 完整n -i n0 n0 ye s ye s ye s 仲 . nonoyesyesno yesnonono 2 .相关协议的研究 利1 相关女个协议方面, 要的安个协议 有s s l和s e 丁以及日前仁 要应用1 电j 几 邮 件的 “ s / mi me o 这儿种协议功能不太相同。s s l作为 一 种摧本的安个协议, 子 要用来保障收、发两 端的信息不被窃听,同时有对客户端和服务器端进行认证的功能,卞 要用于网络个人敏 感了口 、 的传输,卜 丁 前是s 2 c电厂 商务交易的仁 流协议。而s e 丁则远为复杂,它是v i s a 和m a s t e r c a r d 两人 l刊f- i i 为了 i f 信川卡 持有a可 以 在 网! 几 进行 数字交易 , 确保交易 数 据、信用 卜 数据不会让不相 几 的人窃取、外泄,厂 一 达到相、 1 程度的相互认i ll= 血设计的丫 全协议。它 l 要用j 几 1七子商务,功能主要包括三方即持仁 者、商家和银行之i h l 的认id和 保密传输。在实际应用中,由于s s l易于实现、扩展性好,所以为广大用户 ( 包括电犷 i 1 务用) ” )所接收而s e 丁尽管功能完各,但是由于过于 复杂,反而不易被应用十 实1-t 系统。而s / mi me卜 要用于 网1 几 安全电r 邮件,i i 前最新版本为 “ 5 / mi me 3 . 0 3 .相关的信t i 存储格式 信息格式是伴随着相关协议而产生的,所有的信息格式都是以 a s n . 1 ( a b s t r a c t s y n t a x n o t a t i o n o n e ) 语法格式来定义的。h前 信u 的存储格式l 要有几 种: x . 5 0 9 凭o f 格 式、 s e c 的信) j 格式、 p k c s ( p u b l i c - k e y c r y p t o g r a p h y s t a n d a r d ) 彻 、 准。 其中由 s e t n 1 。 i 应川较少, 所以其t , i !a 格式并不) 为 所a l ; x . 5 0 9 格式卜 要 用厂 公共密钥的存放: 16 1 r s a 第硒 啥沦 公司招出的 p k c s i - - p k c s 1 5 输的j j 式。自 _ x . 5 0 9 i d阳 , , 系列信自 、 标准则l 要用于私人密钥在网络的存放以及仕 i ) i il , 心利此 。 使川y - d fl关 的数据,例如:使川者/ , 使川者识别码 鉴名的子 支 术, 、 d 的内容、鉴发p的1 份数据以及其他使川者相关的数据,运1 1 1 数 以认训中心的密训产/ _ 个数了 鉴名,之后将使川 名的相关数据 心的签名算法和数字签名,合成一个电子 文 f 牛 ,即数子 证书。用) “ 可以使用认i ll 公们验i i 其l确 与否 j , 训 中心的 1 .3 本课题的研究内容 本课题的研究对象主要是在互联网络环境 ( 的信息安全,研究的主要内容为通过对 网络环境 的数据进行加密以保认 数抓的安个:对数if, 进行数字签名,以保证数据的丫 效性 山y . i . 联网环境的尤 序性, f l 两点il l 数据传输的传统保密勺 法 ( k 11 称密钥加密) j l , 、 已经不能适应要求,必须采用二 对称密钥密码体制对数据进行加密和数字签名,以此保 计在i f . 联网中的两个i 1 . 不信任、叹 不接触的实体之间能够进(j 可靠的信自 、 交流。 、l 称 密钥密码体制小同,使川比 对称密钥密码体制需要吏为复杂的体系,来完成对数据的)i l l 密 和数字签名。本 课题采 用的是 公开 密钥体系( p k i p u b l i c k e y i n f r a s t r u c t u r e ) , 我们首先要明确公开密钥体系和公开密钥密码体制之间的区别:公月密钥体系是以 公开密钥密码体制为基础的一个用来实现网上传输数据的安全和认证的体系;公开密钊 密码体制则是相应的密码的集合。 公开密钥体系p k i 包括四部分:第一 ,公钊密码技术;第 一 ,数字签名技术; 第, 提供关于名称、公共密钥和 “ 真 ”实 体之间关系的某种保障:第四.关于发布和i 州刊 这些il l一 书的机制。 p k i 的各种功能体系结构0图i - 1 所示: 全议 安协 应用 安 全 协 议 系 统 安 全 允 许 服 务 协 议 安 全 服 务 服务 长期 w 钥 服 务 密 码 技 术 服 务 相关 安 全 和 支 持 服 务 密 码 技 水 原 函数 ix l i 一 1 p k i 结构 第 童 i i 论 i ij 以 网络j q . 1 b ii勺 信以 安个要求p k i 能够提洪 _ 个 _ 要服务, 他们的实现途什如、 所述 1 、认证 认证就是确认实体是他自己 所申明的实体。 在实际应用中分两种情况: 实体鉴别 服务器只是简单的认汁实体本身的身份, 不会和实体想要进行问钟洁动 相联系。 显然它的 钊日 是有iw的( 囚为实体通常足希cv. 在? i- 别身份的草础川丸 幸 丁 此f ri : 作) 。实 体鉴别通常会户 上 个明确的结果允许实体进行j 七 他活动或通信例如介实 体鉴别的过程中 将产 个对称密切 用来解密个文 件进行读写, 或者与其他实体建 介 _ 安全 通道。实体身份一过获得认证, 也可以和访问权in 相联系, 决定是否能够进们叮 问抓 、 制。例如s s l 连接i i i 的身份认o f 以及k ) 称密 1i 加密10 0 11 1 这种认i ll: 数据来源鉴别:就是鉴定某个指定的数k , 是否来(li d 某个特定的实体这既小足 孤亿 的鉴别个实体, 也不是为了允许实体执f j - 卜 步操们而鉴别其身份。 i rl i 是为了确 定被鉴别的实体与一 些特定数据有着静态的不可分割的联系。 这种过程用来支持不 1 否 认服务,如数字签名等。 2 .完整性 数据完整中 i. iih 足确认数据没有被修改。显然在仟何商业活动或电r 交易中, 这种确 认机制都是很重要的。例如奇偶校验或循环冗余编码 ( c r c )可以提供 一 定程度 l 的数 据完整, 但是主要用于检测偶发的错误。 如果要防范为了个人日的故意修改数据的内容, 必须采川加密技术 构p k i 系统中, 通常在希甲 提供数据完整性的实体,和需要验、 一 数 据完整性的实体z间, 裔要办商 致的算法和密钥 例如s s l安全通遒中的握手l h i ; 就 是用来解决算法和密钥致性的过程 p k i 完整性服务可以采用两种技术之 一 。第 一 种技术是数字签名,既11 以提供认il 即实体认 证) , 也可以保证被签名数据的完整性。 这是密码杂凑算法和签名算法的必然 结果;输入数据的不 刊闪 变化都很可能弓 起输出数据的大的不可预测的变化 第 _ _ 种技术是消息认证码或 m a c。这项技术通常采用对称分组密码 ( 例如 d e s - c b c - m a c ) 或密码杂凑函数 ( 列 t ill h m a c - s h a - 1 ) 这种技术需要采1 1 3 合适的d 1 l 制 获得ii = 享密钥 3 . 儿 密性 机密性就是 确保数据的秘密。除了 指定的实体外,无 人能读出 这段数据 p k i 的机 密性服务是个框架结构,通过它可以完成算法的i-1 j i 商和密钥、 勺 交换j 卞 _ 对于 参 。 通 信的实体是完个透明的。而其他不是基于p k i 技术的保密服务则要求在某种程度 日归 确 的交换密钥, i 使! 即 一 i 宁 r 容易 造成麻烦和困难。 在 p k i 卜 , 机密性的实现 一 般是通过首 先对原始数据使用对称密钥进行加密,然) ; 冉 为对称密钥使用非对称密钥密码体制进行加密传送的方式。这里的关键在于 密钥交换和 第章 绪沦 密钥传输机制。 在本课题中,整个设计基本上 是按照p k i 的体系来构造的。只是山于编程人员以及 课 题时间的限制,在某些部分作了 简化。在数据认证方面,采用的是数据来源鉴别的万 式,即通过数字签名来认证数据发送方身份的真实性。在数据完整性方面则结合使用了 数f 签名 和消01 认证 码的方 式,其中在s s l 连接中的数据是采用消息认 证码的力 一 式来实 现的。在机密性方面采用的是对称密钥密码体制和非对称密钥密码体制相结合的加密万 式。 1 . 4 系统结构 木课题的目 的是实现对i n t e r n e t 网络中的传输数据的保密以及确认。要实现这样 个目的,仅仅是有相关算法是不够的。 在实现中必须是以 相关算法为理论基础,以体系 结构为实现框架,以 具体的编程接口为实现手段。以 下介绍本课题的体系结构。 ,模块划分 本课题的功能基本上是按照前面所介绍的p k i 的功能来实现的。 在功能划分上也是 按照p k i 的功能模块来实现的。 只是由 于课题时间以及人员的限制, 在某些方面作了一 些精简处理。 本系统共可以 划分为四个模块: 数字证书的生成与管理、 数字签名与校验、 数据的加密与 解密以及s s l 安全通道的建立。其中各个模块的相互联系如图1 - 2 所示1 其中生成数字证书是整个过程的基础, 它生成非对称密钥体制的公开和私人密钥,然后 通过数据加密以及数字签名后的数据通过s s l 安全通道传送给接收实体。 2 .编程以及运行环境 本课题采用j a v a 语言 编程, 是在j b u i l d e r环境下实现的, 所使用的核心类库为s u n 公司 的j d k 1 .3 ,数据加密以 及签名所使用的 类库为j s s e .( 现在己 经集成到j d k的最新 版木中 ) 。数字证书的生成采用的的是i a i k的接口。由于采用纯j a v a语言 编程, ) 万 以 可以 跨平台运行 ( 在编程的时候的调试环境是wi n d o w s 9 8系统) 。程序的界面如图1 - 3 所示。 界面的左半部分是目 录树, 用户双击目 录树中的对应文件, 可以打开该文件, 并将 义件显示在右面的文件处理区中的源文件面板fp . 。 右面的文件处理区, 用户叮以按 几 而 的加密/ 解密、签名/ 校验按钮件进行处理,处理的结果将显示在目 标文件面板中. 4的 文 件是原文件名加上扩展名” c r y , 3 f 且存储于源文 件的h 录下。 按发 送按钮后, 用) ” 指 定发送的目的 i p地址,即可将加密文件发送出去。有两种发送方式,一种是一般的发 送力式, 一 种是通过s s l安全通道发送 ( 在发送之前,首先应该建立 s s l安全通道, 在文川菜单里通过 “ 建立安全通道 “ 菜单来实现) 。用户可以通过菜单选取这两种发送 方 式的 一 种。 在接收方如果接收到传输文件后, 将弹出菜单来显示。 用户保存文件之后, 第 一 章 绪 沦 就ii i 以校验数 : 二 鉴名和解密文件 记 _ 1 5 的管砰以及存储 发 送 方 了妾 ,父 方 数据加密 数 了 二 签名 数据解密 签名校验 匕 一洲 图 】 一2系统模块小怠图 1 . 5 本课题的任务和研究成果 本课 题的仟务即以j a v a 语台为 编程 l . 具实现,在p k i 体系框架队 实现对) 1 联网络 环境 卜 对传输数据的加密以及数字签名。经过近 一 年的课题q究,已经实现ii f - i s i 箭 t 1 . 数据加密/ 解密、 数字签名/ 校验和建立s s l 通道的 _ 作。 各部分的完成详细情况如 卜 : 1 . 通过i a i k模块, 使用r s a算法生成密钥对; 然后结合用户输入的个人信息生成 x .5 0 9 数字证1st-(111t保存公f 密钥) 和p k c s # 8 格式的私人密钥信息。 两者 存储1 加 密的密钥文件 “ 。用) , 可以通过输入密切文件的日令和i lj j 密钥对的口令来i取又 妇 衍乡 用户的密钥对。1 幼i x .5 0 9 i 日; 足通过苟 先1 1 成个o f 鸿 签发舀 的自签名d汗 作为ill , i t的根,然后将用户证书附加到证书链七 的方式来实现的。 2 . 数据的加密是通过将对称密钥加密算法和非对称密钥加密算法相结合的方式来实 现i ij 。对1 明文6光通过对称密钥加密算法3 d e s以c b c模式进行加密,然后将3 d e s 中的6 4 位秘密密钥通过接收方的x .5 0 9 证书中公l l 密钥加密和3 d e s 加密密文一j 杯7 ; 给 接收方。接收方改先使用r s a算法对3 d e s 的秘密密钥解密,然后再) h 这个密钥刊密文 角 4 密。 ; . 对数据的数厂 签名是通过s u n公司的j d k i ., 的类库来实现的, 首先对数据 日 戊 数j 一二 摘要, 唯的 4 段原文对) 初 哗 的数宇摘要, 这点是防i 卜 数据被篡改i 勺 理论儿 蜘 出 采用的是md 5数 户 摘要生成算法; 然后使用d s s 标准的d s a数字签名算法, 使川发送 方的私人密钥对数 - _ 摘要生成数手 : 签名。接收力收到数j 几 签名后对其进千 j 一 校验,如果数 据在传送过程中被篡改或b充,则会显可错误信l , o 第章 数字证 “ 的生成和节t t 第二章数字证书的生成和管理 2 . 1概述 数字证书在整个公共密钥体系中处于核心的地位,它是数据加密/ 解密以及签名 佼 验的必须条件。同时它也是建立s s l女全通道所必需的。它的基本内容为公川密钥,川 户使用接收方的公开密钥对数据进行加密,同样在数字签名过程中,用户通过发送: 1 1 11 公汁密钥来校验发送方i均私人签名。而在建立s s l 连接时,)报 务器方需要出 j c 给客i i 端 自己的数i 二 u i: i s ,客) ” 端也n l 以出q z 自已的数字证书以 确认身份。 山厂 公 卜 密钥是对所有用户叮 见的,所以 每个用户的公月密钥附带一些有关此j 巾 的个人 信息,如姓名、 籍贯、 组织等构成数字证1 5 ,存放于 个可以被所有用户访问到 但是不允许任伺用户修改的数据库中。 门 ! ) 几 数丫川i s 足各 类实体 ( 持卜 人、ia i 家 / 企业、 网关银行等少 在网上 进仃信急 交 流i 商务活动的身份证明,所以在电子 交易的各个环节,交易的各方m l 都需验!il 对方证钧沟 有效性,从而解决相互阳 j 的信任问题。简单的说,数字证书是段包含用户身份信11 用户公钥信息以及身份验证机构数字签名的数据。身份验证机构的数字签名可以确保计 信息的真实性。 从l ll. i li 的1 11 途来着,数宇ij - + 可分为签名证林 和加密证书。签名i, f r j 主v用于 利) 门 ) 1 信息进行签名,以保i加密证一 枯t - 要用i - 对用厂 j 传送信息 进f 1 加 密,以保证信怠的真实性和完整性。 同时,在本课题中,除了以 数字if e 书的格式存储公开密钥以及相应的信息之外,还 必须以特定的格式对私人密训进行存储。私人密钥般存储于 用户的0算机 l 几 ,而公川 密钊则1 1 以视情况而定。对 j 几 个有很多用户的网 _ 数据加密系统, 一 般通过专 的 c a ( c e iti i f i c a t e a u t h o r i t y ) 中 心来 管理公 共 证i s a ii i 在本课 题中,山1 - 课 题时间以 及 投入 人员的限制,将公共证书分发于各个用户机器仁 ,而没有统的 c a中心管理,此种勺 汉 、 适用 卜 较小规模的网上 数扼加密系统,这一点是有待改进的方面。 日前数字证书 的存储格式为x .5 0 9 标准, 在本课题中私人密钥的存储格式为p k c s 4 9 格式。 木课题中的数字证书的生成采用了 澳大利亚的i a i k公司的a p i 接c l 实现的。 而数 = ill : 传 在存储时采用了s u n公司 的j s s e 中k e y s t o r e模块实现的。以卜 将分别介绍。 2 . 2相关存储格式 6 1 p k i 体系r 0 + c 关的公) f : i m 11 ! 私人密c7 j 存储格式都足i ij a s n a 语。 ; 走义的、 a s n a ( a b s t r a c t s y n t a x n o t a t i o n o n e ) 定义 的 数捷 ; 结 构小同j 般.氰 级语.二 ; 的c f i 定 j 段1ij 第章数字证i s 的f 门 戎和管i t 数据结构,( i : a s n . i i i ,类吧足 组值的集合 a s n . i 的j 山 象类型可以分为4 类油 沪 类则、 结构类州、标签类州和包括a n y , c h o i c e 的特殊类州等。为1 使j 几 t 4 ! 解 、 x . 5 0 9 i d” 、p k c s 冲 , 、 洲 + 1 1 关的a s n . 1 类型说11) 如卜 ; i .简q类r l. b i t s i r i n g . ll j 十 : i a 5 s t r i n g , i a 5 ( a s c i i ) 字符串; i n t e g e r ,随机整数; n u l l ,空值; o b j e c 丁 i d e n t i f i e r , 个标示某个对象的整数序列 o c t e t s t r i n g, r : ii - i i i ; p r i n t a b le s t r i n g , n 1 手 - 印字符串; t 6 1 s t r i n g , t 6 1 导 二 符串; u t c t i m e ,格林威治时间; 2 .纤 】 构类列 s e q u e n c e , 、 个有多个类n 4 li j 了 1 i 7- 集合: s e q u e n c e o f ,某一 类t ;j 的有序集合; s e t ,一 个有多个类型的无序集合; s e t o f ,某 一 类型的无序集合; 3 隐式标签类型 从其他类型改变类型标签后衍 而来的类型。i i 一 以 用 - s e q u e n c e叮 选成员 ,子 情现。a s n a说明语法: c l a s s n u m b e r i m p l i c i t t y p e c l a s s = u n i v e r s a l ia p p l i c a t i o n p r i v a t e a i1 t y p e 表小原类型, c l a s s 表 小u 选的 类名 称, n u m b e r 农小类o - 自 勺 标签数 如 c l a s s 省略,则该标si j卜 文相关, 这利 , t/j + j 签只适用 j 飞 结构类型或c h o i c e炎) i 的成员。 4 显式标签类n t 1 显式标签类型是从其他类型改变类型标签后衍生而来的类型。.可以川 j s e q u e n c e 可选成员等情 f l , a s n a数据结构与 高级语已 数据结构的映射需要进行个 编解码的过程,对 一 协 111 1 1.i a s n a定义f r, 1 数 k ; 格式必封 叫 1丙 干 11编码方法b e r ( b a s i c e n c o d i n g r u l e ) 或 d e r ( d i s t i n g u i s h e d e n c o d i n g r u l e )负j : 把这此于 d i 象对象编ii i 为。 、 1 表, 1 , w 1 i 匕 斗 人 位 a s n . i 的r +l 辨别编码规则d e r是b e r的个i -. 集。与b e r的小同的在i , d e r将a s n . 1 的 转换成唯 一 的字节串, 消除了b e r的小唯一性。 d e r特别适用于 需要唯一字) 犷 串编码的 场介,例如x .5 0 9 标准的数丫iti : 1 . a s n a的纂本编码规 b e r ,定义了 将 a s k 1值转换成莽竹 串的 一 种或多种1 j又 , a s n a的表达方式有很多,b e r是o s i 推荐的标准。 b e r为a s n . i 定义了3 种编码方式:基本的固定长度编码、结构的l u l 走k 1 x f nj l 6和 纤构的不定长 度编码。采用哪一 种编码取决于a s n . 1 值的类型以及长度是否已知 b e r编码包括d个部分: 指小 符 域 ( i d e n t i f i e r o c t e t s ) : 表示a s n a 值所属的类 型 ( c l a s s 对 日 标签值 ( 一g n u m b e r ) , 以及所用的编码万法是基本的还是构造的; lk m e 域( l e n g t h o c t e t s ) : 给出内 容域的长 度; 内容域( c o n t e n t o c t e t s ) : 利) 华木定lr ma p k c 5 # 5 :基j - 1 j 令的密码学标准。 p k c 5 # 6 :扩 一展的数字证书语法标准。 p k c s # 7 :密码信息的语法标准。 p k c s # 8 :私钥信息 语法标肚 p k c s # 9 :可选择的属性类型。 p k c 5 # 1 0 :数字证书中 请语法1 5 tc 准。 p k c s # 1 1 :密码令牌接f l 标准。 p k c s # 1 2 :个人信息交换语法标雕。 p k c 5 # 1 3 :椭圆曲线密码体制标雕。 p k c s # 1 4 :伪随机数i t . 成标滩 ( 已被废 ) p k c s # 1 5 :密码令牌信息格式标准。 其中与密钥保存交换相关的有p k c s # 8 , p k c s # 1 2 标准,a p k c s # 1 2 用1 -. 私人密钥 f i - ia j 络 1 1 17 传输,如 i e , n e t s c a p e c o m m u n i c a t o r 浏览器 二, 的私人密10 1 就足以p k c s # 1 2 格式e y 出或导入的。在本课题中,个人的密钥在存储前必须首先做加密处理,存储成 p k c s # 8 格式。在p k c s # 8 的具体标滩中,其数据格式定义如卜 : p r i v a t e k e y i n f o: := s e q u e n c e v e r s i o n v e r s i o n ,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论