(计算机应用技术专业论文)基于pki技术的网上电子银行的设计与实现.pdf_第1页
(计算机应用技术专业论文)基于pki技术的网上电子银行的设计与实现.pdf_第2页
(计算机应用技术专业论文)基于pki技术的网上电子银行的设计与实现.pdf_第3页
(计算机应用技术专业论文)基于pki技术的网上电子银行的设计与实现.pdf_第4页
(计算机应用技术专业论文)基于pki技术的网上电子银行的设计与实现.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

(计算机应用技术专业论文)基于pki技术的网上电子银行的设计与实现.pdf.pdf 免费下载

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

文档简介

主里垦星苎皇兰堕塑主兰垡堡盔 摘要 计算机网络技术的发展,极大地推动了社会信息化进程,人们可以通过 i n 捷r n e t 很方便地进行信息交流。但是,公开便利的网络环境同时也带来网络通信安全 方面的挑战。因此,网络安全问趣已成为牵动千家万户的问题,也是各级网络管理机构 非常关注的重要课题之一。 本系统的理论基础是p k i ,因此本文对p k i 的关键技术进行了分析。首先对对称密 码体制和非对称密码体制进行研究,对比了两者的优缺点。针对网上银行准确、快捷的 特点,选择了一种能发挥二者优点,实现快速安全传输的加密体制。其次,对c a 信任 模型进行了研究分析,只有选择适当的信任模型才能使系统的认证建立在可以信赖的基 础之上。再次,对数据传输加密的几种技术进行比较,选择一种最安全最适合p k i 体系 的数据流加密方式。还借鉴了s s l 协议来进行t c p i p 连接之间的握手过程,以达到防 止服务器被假冒的安全性要求。这里还分析研究了数字签名技术、时间戳技术和密钥管 理技术。 在对理论基础进行分析的基础上,本文将p 技术应用到了网上银行。主要从以下 几个方面设计系统并对其进行安全保护。此应用程序的体系结构中存在着几个网络连 接,这里依次针对每一个连接,分析它所面临的威胁,并提出解决方案。设计了安全通 信的加密协议流程,实现了数字签名。实现了认证系统的证书签发、证书公布、证书验 证功能。实现了银行子系统的功能,用户能进行查询转账等交易流程。在实现数据库功 能的时候重点设计了如何保护到数据库的连接和数据库。 本系统是用j a v a 语言编程实现的,量在说明只有建立一个以p k i 为基础的网上银 行模型才能充分保证交易系统的整体安全。 模型 关键字:公钥基础设施,网上银行,d e s ,r s a ,s s l ,密钥管理,数字证书,信任 中国民用航空学院硕士学位论文 a b s t r a c t d e 、,e l o p i n e n to fc o m p u t e rn c t w o r kt e c h n o l o g yh a sd e e p l yp m m o t e dp r o c e s so fs o c i e t y i n f b r m a t i o n ,p e o p l ec a l lc o m m u n i c a t ew i t he a c ho t h e rb yi n t e m e te x p e d i e n t l yh o w e v e r , p 曲l j ca n dc o n v e n j e n t i n t e m e tc i r c 哪s t a n c eb n g sc h a n e n g eo fi n t e m e tc o m m u n i c a t i o n s e c u r i t ya l o n ga tt h es a m et i m e t h u s ,i s s u eo fi n t e m e ts e c u r i t yh a sb e c o m et 1 1 ei s s u ew h i c h a 能c t se v e r yf a m i l ya n di so n eo fq u e s t i o n sf o rd i s c u s s i o nw h i c ha l li m e m e to 唱a n i z a t i o n s c o n c e mh i 曲l y a c a d e m i c 伊o u n d w o r ko f 血i ss y s t e mi sp k i ,t h u s ,a n a l y s i so fk e yt e c h n o l o g yo fp k ii s e m p h a s j z e d f i r s n y s y m m e t 巧c i p h e rs y s t e n la n da s y m m e t r yc i p h e rs y s t e ma r es t u d i e d ,i t c o n t r a s t sa d v a n t a g e sa n dd i s a d v a n t a g e so fo n es y s t e mw i t ha n o t h e r a i m i n ga tc h a r a c t e r i s t i c o fi n t e m e tb a n kw h i c hi sn i c e 哆趾ds h o r t c u t ,i ts e l e c t sae n c r y p ts y s t e mw h i c hc a j lb r i n gi n t o p l a ym e i ra d v a n t a g e sa 1 1 dc a nr e a l i z ef a s ta n ds e c u r et r a n s m i s s i o n s e c o n d l y i ta n a l y z e s c r e d i tm o d e lo fc a , o n l yp r o p e rc r e d “m o d e li ss e l e c t e d ,c a na u t h e n t i c a t i o no fs y s t e mb e b a s e do nc r e d i t t h i r d l 弘i tc o m p a r e ss e v e r a le n c r y p tt e c h n 0 1 0 9 yo fd a t al r a n s m i s s j o na n d s e l e c t sae n c r y p tp a n e mw l l i c hi sm o s ts e c u r ea i l dm o s ta p p r o p r i a t e w h a ti sm o r e ,i tu s e s s s lp r o t o c o lf o rr e f e r e n c et 0r e a l 函h a i l d c l a s pp r o c e s so ft c p i pa 1 1 dt oa c h j e v et h es e c u r i t y n e e do fp r e t e n d i n gt h ec a s et h a ts e r v e ri sc o 姗t e r f e i t i t a n a i y z e sn u m b e ri d i o g r a p h t e c h n o l o g y 、t i m ej a bt e c l l l l o l o g ya 1 1 dk e ym a n a g e n l e n tt e c h n o l o g y b a s i n go na 1 1 a l y s i so fm e o 职i t 印p l i e sp t oi n t e m e t b a n k i td e s 追n ss y s t e m 舶m s e v e r a l a s p e c t sa n d sp m t e c t st l l es e c u r i t yo ft h es y s t e m t h e r ea r es e v e r a li n t e m e t c o i l i l e c t i o n si n n l i s s y s t e ms t n l c t l l r e i ta 1 1 a l y z e s i m p e m m e n tw h i c he v e r yc o n n e c t i o n c o 曲o n t sa i l d b r i n g sf o n a r d s o l u t i o n s nd e s i g n s e n c r y p ta g r e e m e n tn o wo fs e c u r e t r a l l s m i s s i o n ,r e a l i z e sn u m b e ri d i o 伊a p ha i l df h n c t i o n so fc a i tr e a l i z e s 允n c t i o n so f s u b s y s t e mo fm eb a n k ,u s e rc a i lq u e r ya n dt r a i l s f e rh i sm o n e y i np m c e s so fr e a l i z i n g f 血c t i o no fm ed a t a b a s e ,i td e s i g n sh o wt o p r o t e c tc o 肌e c t i o nt ot h ed a t a b a s ea n dt h e d a t a _ b a s ep r i m a r i l y nr e a l i z e s c t i o n sa b o v eb yc o d i n gw i t hj a v a t h er e s u i t se x p i a i n st h a t o n j yp k ic a i l g u a r a n t e et l ew h o l es e c u r i t yo f b a 唱a i n i n gs y s t e m k e yw o r d s :p u b l i ck e yi h s t m c t u r e ,i m e m e tb a i l k ,d e s ,r s a ,s s l ,k e ym a n a g e m e n t , n u 加b e rc e n i f i c a t e c r e d i tm o d e l 中国民用航空学院硕士学位论文 1 1 引言 第一章绪论 二十世纪九十年代,i n t e r n e t 的爆炸性发展在全球掀起了一股建设信息高速公路的 浪潮,标志着信息革命时代的真正来临,而近几年迅速起步的电子商务i l 】贝u 使人们看到 了二十一世纪电子商务时代的光辉前景。但由于互联网的建设初衷不是出于商业目的, 缺乏安全考虑,因此在全球数字化、网络化程度越米越高并带来巨大效益的同时,造成 目前基于互联网的电子商务面l 临严峻的安全问题。而这种巨大的安全需求无疑将极大地 刺激网络信息安全技术的深入发展。 随着网络安全事件给互联网用户造成的损失的迅速卜- 升,网络安全得到了,一泛的关 注,病毒的泛滥,黑客的肆虐,使得杀毒软件和防火墙成为了计算机系统中最基本的安 全配置。然而,杀毒软件和防火墙只解决了网络安全中物理安全的一部分,而对于逻辑 安全方面却没有丝毫的帮助。网络安全问题并不仅仅只有病毒和黑客,信息的缺失也是 一个非常重要韵方面【2 】。由于在互联网上人们无法鉴别与之交流的人或设备的身份,再 加上信息极易被伪造,让人们对在互联网上公丌传输的信息心存疑虑,也引发了人们对 信息的真实性、完整性、机密性和不可否认性的更高要求【3 ) 。 逻辑安全【4 j 方面的威胁主要有: ( 1 ) 假冒:指非法用户假冒合法用户身份获取敏感信息。 ( 2 ) 截取:指非法用户截获通信网络的数据。 ( 3 ) 篡改:指非法用户改动所截获的信息和数据。 ( 4 ) 否认:指通信的单方或多方事后否认曾经参与某次活动。 为了防范用户身份的假冒、数据的截取和篡改以及行为的否认等安全漏洞,互联网 急需一种技术或体制来实现对用户身份的认证,建立可信的网络应用环境,并保证互联 网上所传输数据的安全。 公钥基础设施( p u b l i ck e yi n f r a s t r u c t u r e ,简称p k i ) 【5 】是为适应网络开放状 态应运而生的一种技术,以前的信息安全技术( 如防火墙、入侵检测、防病毒等) 基本 上都是解决网络安全某一方面的问题,而p k i 则是比较完整的网络安全解决方案,能够 全面保证信息的真实性、完整性、机密性和不可否认性。p k i 技术以公钥技术为基础, 以数字证书为媒介,结合对称加密和非对称加密技术,将个人、组织、设备的标识信息 与各自的公钥捆绑在一起,其主要目的是通过自动管理密钥和证书,为用户建立起一个 安全、可信的网络运行环境,使用户可以在多种应用环境下方便地使用加密和数字签名 中国民用航空学院硕士学位论文 技术m 1 8 】,在互联网上验证用户的身份,从而保证了互联网上所传输信息的真实性、 完整性、机密性和不可否认性。p k i 足目前为止既能实现用户身份认证,又能保证互联 网上所传输数据安全的唯一技术。 随着多媒体通信的日臻成熟,为了适应金融业的发展,出现了提供“在家联系银行” 业务( h o m eb a n k i n g ) 的电子银行系统i 9 j ,用户借助相应终端设备就能办理存款、取款等 银行业务。近来互联网技术和国际互联网的发展,又促进网上电子银行系统【l0 1 诞生,并显 示出内在潜力。网上电子银行( i n t e r n e tb a n k i n g ) 是指银行利用因特网这一公共资源 及其相关技术实现银行及客户之间安全、方便地连接,通过网络为客户提供各种金融服 务的电子银行。也就是说在i n t e r n e t 上建立一个虚拟的银行柜台开展各项金融服务。客 户只要拥有一台能够上网的p c ,就可以不受时间、空间的限制享受网上金融服务。网上 电子银行不仅是银行提供的一种全新的服务手段,而且也是电子商务活动中的重要环 节。随着i n t e r n e t 的迅速普及,b t o b 、b t o c 业务的推广,网上电子银行在国内也得到迅 速发展j 。 本课题难是在这样的背景下选题的。 1 2 研究p k i 技术的意义 ( 1 ) 通过p k i 可以构建一个可管、可控、安全的互联网络。 传统的互联网是一个无中心的、不可 牵的、没有q o s 保证的、“尽力而为” ( b e s te f f o n ) 的网络。但是,由于互联网具有统一的网络层和传输层协议,适合全球 互联,且线路利用率高,成本低,安装使用方便等,因此,从它诞生的那一天起,就显 示出了强大的生命力,很快地遍布全球。 在传统的互跃网中,为了解决安全接入的问题,人们采取了“口令字”等措施,但 很容易被猜破,难以对抗有组织的集团性攻击。近年来,伴随宽带互联网技术和大规模 集成电路技术的飞速发展,公钥密码技术有了其用武之地,加密、解密的丌销已不再是 其应用的障碍。因此,囡际电信联盟( i t u ) 、国际标准化组织( i s 0 ) 、国际电工委员会 ( i e c ) 、互联网任务工作纽( i e t f ) 等密切合作,制定了一系列的有关p k i 的技术标准, 通过认证机制,建立证书服务系统,通过证书绑定每个网络实体的公钥,使网络的每个 实体均可识别,从而有效地解决了网络上“你是谁”的问题,把宽带互联网在一定的安 全域内变成了一个可控、可管、安全的网络。 ( 2 ) 通过p k i 可以在互联网中构建一个完整的授权服务体系。 p k i 通过对数字证书进行扩展,在公钥证书的基础上,给特定的网络实体签发属性 证书,用以表征实体的角色和属性的权力,从而解决了在大规模的网络应用中“你能干 什么”的授权问题。这一特点对实施电子政务f l2 十分有利。因为电子政务从一定意义 中国民用航空学院顸士学位论文 上讲,就是把现实的政务模拟到网上来实现。在传统的局域网中,虽然也可以按照不同 的级别设置访问权限,但权限最高的往往不是这个部门的主要领导,而是网络的系统管 理员,他什么都能看,什么都能改,这和政务现实是相左的,也是过去一些领导不敢用 办公自动化系统的原因之一。而利用p k i 可以方便地构建授权服务系统,在需要保守秘 密时,可以利用私钥的惟一性,保证有权限的人才能做某件事,其他人包括网络系统管 理员也不能做未经授权的事;在需要大家都知道时,有关的人都能用公钥去验证某项批 示是否确实出自某位领导之手,从而保证真实可靠,确切无误。 ( 3 ) 通过p k i 可以建设一个普适性好、安全性高的统一平台。 p k i 遵循了一套完整的国际技术标准,呵以对物理层、网络层和应用层进行系统 的安全结构设计,构建统一的安全域。同时,它采用了基于扩展) 【m l 标准的元素级细粒 度安全机制,换言之,就是可以在元素级实现签名和加密等功能,而不像传统的“门卫 式”安全系统,只要进了门,就可以一览无余。而且,底层的安全中间件在保证为上层 用户提供丰富的安全操作接口功能的同时,又能屏蔽掉安全机制中的一些具体的实现细 节,因此,对防止非法用户的恶意攻击十分有利。此外,p k i 通过j a v a 技术提供了可 跨平台移植的应用系统代码,通过) ( m l 技术提供了可跨平台交换和移植的业务数据,在 这样的一个p k i 平台上,可以方便地建立一站式服务的软件中间平台,十分有利于多种 应用系统的整合,从而大大地提高平台的普适性、安全性和可移植性。 1 3p k i 技术的国内外研究现状综述 随着p k i 技术应用的不断深入,p k i 技术本身也在不断发展与变化,近年来比较重 要的变化有以下方面。 1 3 1 属性证书 x 5 0 9v 4 增加了属性证书的概念。提起属性证书就不能不提起授权管理基础设施 ( p m i ,p r i v i1 e g em a n a g e m e n ti n f r a s t r u c t u r e ) 。p m i 授权技术的核心思想是以资源 管理为核心,将对资源的访问控制权统一交由授权机构进行管理,即由资源的所有者来 进行访问控制管理。 在p k i 信任技术中,授权证书非常适合于细粒度的、基于角色的访问控制领域。 x 5 0 9 公钥证书原始的含义非常简单,即为某个人的身份提供不可更改的证据。但是, 人们很快发现,在许多应用领域,比如电子政务、电子商务应用中,需要的信息远不止 是身份信息,尤其是当交易的双方在以前彼此没有过任何关系的时候。在这种情况下, 关于一个人的权限或者属性信息远比其身份信息更为重要。为了使附加信息能够保存在 中国民用航空学院硕士学位论文 证书中,x 5 0 9v 4 中引入了公钥证书扩展项,这种证书扩展项可以保存任何类型的附 加数据。随后,各个证书系统纷纷引入自己的专有证书扩展项,以满足各自应用的需求。 1 3 2 漫游证书 证书应用的普及自然产生了证书的便携性需要,而到目前,能提供证书和其对应私 钥移动性的实际解决方案只有两种:第一种是智能卡技术。在该技术中,公钥私钥对 存放在卡上,但这种方法存在缺陷,如易丢失和损坏,并且依赖读卡器( 虽然带u s b 接口的智能钥匙不依赖读卡器,但成本太高) ;第二种选择是将证书和私钥复制到一张 软盘备用,但软盘不仅容易丢失和损坏,而且安全性也较差。 一个新的解决方案就是使用漫游证书,它通过第三方软件提供,只需在任何系统中 正确地配置,该软件( 或者插件) 就可以允许用户访问自己的公钥私钥对。它的基本 原理很简单,即将用户的证书和私钥放在一个安全的中央服务器上,当用户登录到一个 本地系统时,从服务器安全地检索出公钥私钥对,并将其放在本地系统的内存中以备 后用,当用户完成工作并从本地系统注销后,该软件自动删除存放在本地系统中的用户 证书和私钥。 1 3 3 无线p k l ( w p k i ) 随着无线通信技术的广泛应用,无线通信领域的安全问题也引起了广泛的重视。将 p k i 技术直接应用于无线通信领域存在两方面的问题:其一是无线终端的资源有限( 运 算能力、存储能力、电源等) ;其二是通信模式不同。为适应这些需求,目前已公布了 w p k i 草案,其内容涉及w p k i 的运作方式、w p k i 如何与现行的p k i 服务相结合等。 w p k i 中定义了三种不同的通信安全模式,在证书编码方面,w p k i 证书格式想尽量 减少常规证书所需的存储量。采用的机制有两种:其一是重新定义一种证书格式,以此 减少x 5 0 9 证书尺寸;其二是采用e c c 算法,减少证书的尺寸,因为e c c 密钥的长度比 其他算法的密钥要短得多。w p k i 也在i e t fp k i x 证书中限制了一个数据区的尺寸。由 于w p k i 证书是p k i x 证书的一个分支,还要考虑与标准p k i 之间的互通性。 总之,对w p k i 技术的研究与应用正处于探索之中,它代表了p k i 技术发展的个 重要趋势。 1 4p k i 体系的发展 p k i 技术是随着公钥密码技术的发展而发展起来的。1 9 7 6 年d i f f i e 和h e l l | i a n 在 4 中国民用航空学院硕士学位论文 密码学的新方向一文中提出了一种密钥交换协议,允许在不安全的媒体上双方交换 信息,安全地获取相同的用于对称加密的密钥。1 9 7 8 年l o r e nk o h n f e l d e r 提出了证书 的概念,使用由第三方签名的证书作为可靠传递公钥的方法,以解决集中存储公钥带来 的性能瓶颈。 虽然公开密钥基础设施( p k i ) 是电予商务的基础,但它却是8 0 年代的技术。国际 标准化组织( i s o ) 在1 9 8 4 年提出i s o7 4 9 8o s ir m 之后,接着就在o s i 七层模型上 定义了i s 0 7 4 9 8 2 安全体系结构。另一个国际标准化组织电信联盟( i t u ) 在1 9 8 8 年定 义的x 5 0 0 目录服务中规范了x 5 0 9 鉴别框架,它成为当今所有p k i 规范的基础。然而, 8 0 年代末9 0 年代初,计算机网络远没有今天这样普及,而且计算机的速度瓶颈问题也 制约着p k i 技术的真正实施。直到今天,由于计算机网络的高速发展和电子商务的巨大 需求,才为p k i 的强劲发展提供了良好环境。 自2 0 世纪9 0 年代初期以来,p k i 逐步得到了许多国家的政府和企业的广泛重视, p k i 技术由理论研究进入到商业化应用阶段。在这一时期,i e t f 、i s o 等机构陆续颁布 了x 5 0 9 、p k i x 、p k c s 、s m i m e 、s s l 、s e t 、i 黔e c 等p k i 应用相关标准,各个国家在 9 0 年代初,为推动o s i 的发展,一般都尝试过x 5 0 9 的p k i 技术,我国也不例外。目前 上海电子商务中心、中国招商银行、中国建设银行和广卅i 南方电子商务中心的证书机构 的开通,都预示着我国的p k i 研究和应用前景非常广阔。 1 5 本课题的研究内容 本文以网上银行系统的安全解决方案为例,讨论了基于p k i 技术的一整套网络信息 系统的安全设计和实现。全文可以分为三大块,即: 第一部分,包括第一、第二、第三共i 章。第一章主要介绍课题研究意义、p k i 的 研究现状及其发展;第二章、第三章讨论了网络信息安全解决方案的基石公钥基础 设施( p k i ) ,及相关技术简介。 第二部分,是实现部分,也是本文的主体,包括第四、第五两章。第四章对p k i 的 关键技术进行分析,得出将p k i 应用于本系统的可行性和优势。首先要对对称密码体制 和非对称密码体制进行研究,针对网上银行准确、快捷的特点,要选择一种能屏蔽二者 缺点并能实现快速安全传输的加密体制。其次,由于认证已经成为进行安全交易的基本 要求,为了实现证书的验证处理就需要建立一种安全的信任关系,只有这样,才能使系 统的认证建立在可以信赖的基础之上。所以要对c a 信任模型进行研究分析,选择适当 的信任模型。再次,在p k i 体系的数据保密性服务中,需要从t c p i p 协议的应用层和 传输层实现加密,因此要对数据传输加密的几种技术进行比较,选择一种最安全最适合 p k i 体系的数据流加密方式。为了交换随机动态密钥,防止通讯密钥被泄密,防止服务 中国民用航空学院硕士学位论文 器被假冒,就需要在客户端和服务器之间进行身份认证,这里要分析s s l 协议和s e t 协 议,借鉴其中的一种来实现t c p i p 连接之间的握手过程。通过分析,要说明只有选择 一个应用p k i 为基础的网上银行模型才能充分的保证交易系统的整体安全。第五章在第 四章的基础上,讨论安全身份认证系统和网上银行系统的设计及实现。系统中存在着若 干网络连接,这里依次针对每一个连接,分析它所面临的威胁,并提出解决方案。同时 考虑到系统各个组成部分存在着的脆弱性,对数据库,b a n k 端,维护端,w e b 服务器、 w e b 浏览器的安全级别进行了分析,并应用了安全保护策略。实现认证系统的证书签发、 验证、发布功能,实现银行子系统的功能,用户能与服务期间进行身份认证,能申请账 号、查看账户信息,完成交易。本系统的编程部分是用j a v a 语言实现的。 第三部分,是第六章。第六章主要总结了本文所做的主要工作,并对全文进行总结, 提出今后进行深入研究的方向。 中国民用航空学院硕士学位论文 2 1 密码技术概述 第二章密码技术及其功能 密码技术【”】是网络中最基本的安全技术,主要是通过对网络中传输的信息进行数 据加密来保障其安全性,这是一种主动安全防御策略,用很小的代价即可为信息提供相 当大的安全保护。原始数据( 也称为明文) 被加密设备和密钥加密而产生的经过编码的 数据称为密文。将密文还原为原始明文的过程称为解密,它是加密的反向处理,但解密 者必须利用相同类型的加密设备和密钥对密文进行解密。密码技术分类的方法有多种, 传统上按密钥的特性分为对称密码技术和非对称密码技术。前者又称为传统密码技术, 后者又称为公钥密码技术。加密的基本功能包括:防止不速之客查看机密的数据文件; 防止机密数据被泄露或篡改;防止特权用户查看私人数据文件:使入侵者不能轻易地查 找一个系统的文件。 2 2 传统密码技术 2 2 1 传统密码技术概述 传统密码技术是指加解密双方均采用相同的密钥,通常用来加密带有大量数据的报 文和文电通信的信息,因为这两种通信都可实现高速加密算法 1 4 】。传统密码技术的特 点是: ( 1 ) 传统加密方法的密钥分发过程十分复杂,而且所花代价极高。 ( 2 ) 多人通信时密钥组合的数量,会出现爆炸性的膨胀,这使问题更加复杂化。 ( 3 ) 发送者和接收者之间的密钥必须安全传送,而双方用户通信所用的秘密钥必须 妥善的保管。 可见,单纯地使用传统密码技术不能满足数据传输的需求,它通常和公钥密码技术 结合起来使用。 2 2 2d e s 算法 d e s ( d a t ae n c r y p t i o ns t a n t a r d ) 【1 5 1 7 1 算法由美国i b m 公司的w t u c h m a n 和 c m e y e r 于1 9 7 2 年研制成功,于1 9 7 5 年3 月公开发表,1 9 7 7 年1 月由美国国家标准局 确定为联邦数据加密标准。 甲国民用航空学院硕士学位论文 d e s 是一种二元数据加密的分组算法,即对6 4 位二进制数据进行加密,并产生6 4 笪密文数据。其中,使用密钥为6 4 位,实用5 6 位,另外8 位用作即偶校验。加密的过 程是先对6 4 位明文分组进行初始置换,然后分成左、右部分分别经过1 6 次迭代,然后 进行循环移位与变换,最后再进行逆变换得出密文。 d e s 算法实际上由模2 加法、码组移位、初始置换与逆初始置换、密钥表的计算几 部分组成。 2 3 公钥密码技术 2 3 1 公钥密码技术概述 公钥密码1 8 1 就是非对称密钥密码,加密和解密采用不同的密钥,所以公钥密码体 制又称为双钥体制。在公钥加密技术中,用户町以把用于加密的钥匙公开地分发给任何 人。谁都可以用公开的加密钥匙与用户进行秘密通信,除了标有解密钥匙的收件人之外, 无人能解开密文。公钥机制灵活,但加密和解密速度却比对称密钥加密慢得多。常用的 算法有r s a 、e l g a m a l 等。 2 3 2r s a 算法 r s a 2 0 ,2 1 】系统的构造是选择两个大素数p 、q ,计算n = p q ,f ( n ) = ( p1 ) ( q 1 ) ,其中 f 1 ( n ) 为欧拉函数,并选择一个整数e ,它满足( e ,f ( n ) ) = l ,其中1 e f = ( n ) ,并求出满 足e ( i 一】m 。d f ( n ) ,l d f ( n ) 的整数e ,它满足( e ,f ( n ) ) = l ,其中l e f ( n ) 的整数d ,这只 要使用欧几罩德算法用a l o g 。( n ) 次运算就可求出d 。则r s a 系统的公钥为k = ( n ,e ) ,而 秘密钥为k = d ,明文消息m 满足o k e y t o o lg e n k e y k e y a l gr s a k e y s t o r ed a t a b a s e k e y s t o r e 5 7 4 导出和导入证书 s s l 的身份认证是基于证书方式的。为了建立信任关系,就必须能够导出所有需要 被信任的证书。这里将为每一张证书创建一个文件,并且从证书的k e y s t o r e 中将证书导 出: c :k e y t o o i _ e x p o n _ k e y s t o r eb a i l k k e y s t o r e 娟l eb a l l j ( c e 。 c :侈k e y t o o l e x p o r t k e y s t o r ec r e d i t c a r d k e y s t o r e f i l ec r e d i t c a r d c e r 中国民用航空学院硕士学位论文 c :p k e y t o o l e x p o r t k e y s t o r ed a t a b a s e k e y s t o r c 一6 1 ed a t a b a s e c e r 这个程序通过创建信任存储器来建立信任关系。这些信任存储器是只包含证书内容 的k e y s t o r e 。创建过程如下: b a i l k 端: c :p k e ”o o l i m p o r t - k e y s t o r eb a n k l m s t s t o r e a l i a sd a t a b a s e f i l ed a t a b a s e c e r c : k e y t o o l _ i m p o r t k e y s t o r eb a n k t r u s t s t o r e a l i a sc r e d i t c a r d 撕l ec r e d l t c a r d c e r 数据库: c : k e y t o o l - i m p o r t k e y s t o r ed a t a b a s e n u s t s t o r e a l i a sb a n k f i l eb a l l k c e r 信用卡客户端: c : k e ”o o l - i m p o r t k e y s t o r ec r e d i t c a r d t r u s t s t o r e 捌i a sb a n k f i l eb a n k c e r 5 7 5w e b 浏览器和w e b 服务器建立s s l 安全连接 下面介绍一下与服务器建立要求客户端验证的豁l 安全连接的过程。 ( 1 ) 建立自己的c a 证书。 1 ) 建立自己的c a 目录,例如:c a 2 ) 生成c a 密钥 o p e n s s lg e n r s a o u tc a c a k e y p e m1 0 2 4 3 ) 生成待签名的证书 o p e n s s lr e q n e w o u tc a c a r e q c s r k e yc a c a k e y p e m 4 ) 用c a 私钥自签名 o p e n s s lx 5 0 9 一r e q inc a c a r e q c s r o u tc a c a c e r t p e m s i g n k e y c a c a - k e y p 鲫一d a y s3 6 5 ( 2 ) 配置t 0 耻斌4 x 。 建立服务器证书。 1 ) 建立工作目录 在目录下建立自己的s e r v e r 目录,例如:s e r v e r 2 ) 生成s e r v e r 密钥对 c :j 2 s d k l 4 1 0 l b i n k e y t o o l g e n k e y a l i a st o m c a t v a l i d i t y 3 6 5 一k e y a l gr s a k e y s iz e1 0 2 4 k e y s t o r es e r v e r s e r v e r k e y s t o r e 3 ) 生成待签名证书 c :j 2 s d k l 4 1 一o l b i n k e y t o o l c e r t r e q a l i a st o 珊c a t s i g a l g m d 5 w i t h r s af i l e s e r v e r s e r v e r c s rk e y p a s s a l l c o m k e y s t o r e s e r v e r s e r v e rk e y s t o r e s t o r e p a s sa 1 】c o m 中国民用航空学院甄士学位论文 4 ) 拷贝c :o p e n s s l a p p s c a c e r t s r l 文件到c a 目录 5 ) 用c a 私钥签名 o p e n s s lx 5 0 9 一r e q i ns e r v e r s e r v e r c s r o u ts e r v e r s e r v e r c e r t p e m c ac a c a c e r t p e m c a k e yc a c a k e y p e m d a y s3 6 5 将c a 根证书和服务器证书导入t o m c a t 。 1 ) 导入c a 根证书 c :j 2 s d k l 4 1 o l b i n k e y t o o l i m p o r t v t r u s t c a c e r t s s t o r e p a s s a l l c o m a l i a sa 1 1 c o m c ar o o t f i l ec a c a c e r t p e m k e y s t o r e s e r v e r c a c e r t s 2 ) 拷贝c a c e r t s 文件到c :j 2 s d k l 4 一一0 1 j r e 1 i b s e c u r i t y 目录 3 ) 导入服务器证书 c :j 2 s d k l 4 1 一0 1 b i n k e y t o o l i m p o r t v t r u s t c a c e r t s s t o r e p a s s a l l c o m a l i a st o m c a tf i l es e r v e r s e r v e r c e r t p e m k e y s t o r e s e r v e r s e r v e r k e y s t o r e ( 3 ) 配置i e 客户端 建立c l i e n t 证书,建立过程同c a 证书。 ( 4 ) 将c a 证书与c l i e n t 证书导入l e 。 5 8 数据库的安全通信设计 对于数据库来说,有两个显而易见的攻击点。最明显和最容易被攻击的弱点是客户 端程序与数据库的侦听端口之间的连接。如果数据库安全地位于防火墙的后面,而且不 必担心对于数据库和客户端之间数据的窃听,那么数据加密不是必需的。但是,如果应 用服务器和数据库要在因特网上进行通信,这种情况可能是极端危险的。诸如用户名和 口令这样的信息,以及其他任何的重要数据将被包含在通信的数据包中,除非连接被安 全保护,否则很容易被攻击。 第二个弱点是数据库中的数据本身。一个数据库可以被用户访问,而这些用户只能 访问部分数据。 5 8 1 保护数据库连接 下面构建一个基于r m i 的j d b c 驱动程序,为任何j d b c 使用的数据源提供s s l 连接 之上的安全连接。 应用程序包括客户端和服务器组件。服务器处理所有的配置,管理到数据库的连接 中国民用航空学院硕士学位论文 和j d b c 调用的委托。客户端则将所有的连接委托给服务器。因此,要为客户端和服务 器之间的通信选择一种网络传输机制。由于r m i 能够提供很多特性,例如对j a v a 对象 自动进行管理和配置,以及安装自定义套接字的能力,所以r m i 是最好的选择。 r m i 有个需求,那就是r m i c 编译器需要发起j a v a r m i r e m o t e e x c e p t i o n 异常处 理的远程访问的所有方法。这个需求是由r m i 的体系结构所决定的,目的是为了使得开 发者能够预料到在远程计算中会出现的各种问题,如连接断线和网络故障。为了满足这 个需求,要为远程调用添加一个额外的层次,这里创建一系列可串行化代理来负责处理 那些异常情况。j d 8 c 是一个远程协议,由于预料到了网络问题,它要求每个方法都要 发起j a v a s q l s q l e x c e p t i o n 的异常情况处理。这里的方法将发起r e m o t e s q l e x c e p ti o n 处理,这是s q l e x c e p t i o n 的一个子类,这使得在需要的时候,能够发现与r m i 有关的 异常情况。图5 9 显示了在j a v a s q l c o n n e c t i o n 的一个基本的类结构。 图5 9 j a m s q l c o n n e c t i o n 的基本类结构 这里利用r m i 的自定义套接字功能,使用s s l 套接字来进行通信。并且利用相同的 机制来为j d b c 的数据源提供身份认证服务。 5 8 2 保护数据库 下面详细介绍,b a n k 端存取数据库的过程。这里针对用户信息,说明一下b a n k 端 存取用户信息的过程。 服务器在将数据存入数据库以前,使用公钥对数据进行加密。这里创建个类 c o s u m e r f a c t o r y 来处理加密和存储。这个类还会将数据连接委托给另一个娄 d a t a b a s e o p e r a t i o n s 。c o s u m e r f a c t o r y 将会创建两个对象:一个c o s u m e r 来简单的俣 中国民用航空学院硕士学位论文 持用户信息,另一个c o s u m e r d b n 是一个数据库对象,用来保持那些将被存在数据库中 的数据。 c o s u m e r 是一个简单的对象类,保存明文的用户信息。由于c o s u m e r 对象包含明 文用户信息,所以不对它进行直接存储,使用c o s u 】) e r d b 0 来对它进行加密。 c o s u m e r d b 卜包含a c c o u n t 表中除a c c o u m j d 外的所有字段。这里使用带有 p k c s # l 填充的r s a 算法来加密数据,这是非对称加密最常见的使用方式。但是,如果 使用这种加密来存储的数据是一种常规的格式,会受到特定方式的攻击,所以不直接使 用r s a 来对它加密,这里创建一个5 6 位的d e s 算法的密钥,并使用它来对用户信息加 密,然后用公钥来加密这个密钥,再存入数据库。 c o s u m e r f a c t o r y 一在这里完成真正的工作。它处理用户信息的加密和解密,并且委 托数据库访问给个d a t a b a s e o p e r a t i o n s 对象。它出一个公钥来创建,这里使用公钥 来加密所有的数据库数据。 下面是一个c o s u m e r f a c t o r y 的顺序示意图,显示了如何创建一个用户对象,并且 将其存储到数据库中。 图5 i o 创建用户对象过程图 ( 1 ) 请求者( 这里指的是w e b 服务器) 调用c o s u e r f a c t o r y c r e a t e c o s u j l l e r ( ) 。 ( 2 ) c o s u m e r f a c t o r y 创建一个5 6 位d e s 密钥,对用户信息进行加密,然后用r s a 公钥对d e s 密钥进行加密,并且使用这些数据创建一个c o s u m e r d b o 对象。 ( 3 ) c o s u m e r f a c t o r y 调用d a t a b a s e o p e r a t i o n s s t o r e ( ) ,传递创建的c o s u m e r 对象。 d a t a b a s e o p e r a t i o n s

温馨提示

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

评论

0/150

提交评论