




已阅读5页,还剩63页未读, 继续免费阅读
(计算机应用技术专业论文)基于web服务的xml数字签名系统.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中山大学硕士论文 基于w e b 服务的x m l 数字签名系统 摘要 今天,i n t e r n e t 被广泛的应用到b 2 b 电子商务的交易,安全就成为一个至关 重要的主题。s s l ( s e e u r i t ys o c k e tl a y e r ) 被广泛的应用在传输屡的安全中, 但是s s l 无法实现不可否认性,因为它缺少数字签名。 y a l l 已经成为数据描述和b 2 b ( b u s i n e s st ob u s i n e s s ) 系统数据交换所广 泛采用的形式。和h t m l 相比,x m l 可以用复杂的数据结构和数据类型来描述业 务数据圆i :为勰l 文档进行数字签名已经得到广泛韵关注。最近磁l 数字签名 的标准化活动在w 3 c ( w o r l dw i d ew e bc o n s o r t i u m ) 和i e t f t h ei n t e r n e t e n g i n e e r i n gt a s kf o r c e ) 正在进行。w 3 c 已经出版了x m l 签名规范的推荐版。 如果需要x m l 数字签名,一个简单的解决方案就是改变系统本身。当确认x m l 文档产生的时候,调用数字签名库来对x m l 文档进行数字签名。虽然这是一个典 型的解决方案,但是必须更改现有的系统。那么更改的部分很有可能包含了安全 漏洞,这对于整个系统来说是危险的。 本文堤出了一种对x m l 文档进行数字签名而不用更改现有应用的方案,详细 地论述了采用w e b 服务来实现) ( m l 数字签名系统的可行性和优点,在实现一个 x m l 数字签名系统基础上阐述了基于讹b 服务的碰l 数字签名系统的设许和开 发过程,讨论解决了开发过程中存在的技术问题以及解决方案。并且通过给出与 现有的b 2 b 系统进行集成的例子,为今后实现类似的系统集成提供参考。最后还 展望了基于w e b 服务的) ( m l 数字签名系统的前景和进一步的研究方向, 关键词:w e b 服务;s e m s w e b ;x m l 数字签名系统 中山大学硕士论文基于w e b 服务的k m l 数宇签名系统 a b s t r ac t t o d a y ,t h ei n t e r n e ti sw i d e l yu s e d i nb u s i n e s st ob u s i n e s s ( b 2 b ) t r a n s a c t i o n sa n d s e c u r i t yi so n eo ft h em o s ti m p o r t a n t i s s u e s 。s s li sw i d e l yu s e df o rt r a n s p o r t l e v e l s e c u r i t yb u t i si n a d e q u a t et oa s s u r en o n r e p u d i a t i o n ,s i n c ei tl a c k sd i g i t a ls i g n a t u r e s 。 x m l h a sb e c o m ew i d e l yu s e da saf i r s tc l a s sf o r m a tf o rd a t ad e s c r i p t i o na n d e x c h a n g e i nb 2 b s y s t e m s 。c o m p a r e d t oh t m l x m lc a r ld e s c r i b eb u s i n e s sd a t a w i t hc o m p l e xd a t as t r u c t u r e sa n dd a t at y p e s 。t h e r e f o r e ,d i g i t a ls i g n a t u r e sf o rx m l d o c u m e n t sa r er e c e i v i n gm o r ea t t e n t i o n 。c u r r e n t l y ,s t a n d a r d i z a t i o na c t i v i t i e sf o r x m l d i g i t a ls i g n a t u r e sa r ep r o c e e d i n g a tw 3 ca n di e t f 。a tw 3 c ,t h es p e c i f i c a t i o n f o rx m l s i g n a t u r e sw a sp u b l i s h e d a sp r o p o s e dr e c o m m e n d a t i o n 。 i fx m l d i g i t a ls i g n a t u r e sa r er e q u i r e d ,as i m p l e s o l u t i o ni st om o d i f yt h e s y s t e mi t s e l f 。w h e n c o n f i r m a t i o nx m l d o c u m e n t sa r eg e n e r a t e d ,ad i g i t a ls i g n a t u r e l i b r a r yi sc a l l e da n d t h el i b r a r ys i g n st h ex m ld o c u m e n t 。a l t h o u g h t h i si sa t y p i c a l s o l u t i o n ,t h ee x i s t i n gs y s t e m m u s tb em o d i f i e d ,a n dt h e r ea r er i s k st h a tt h em o d i f i e d p a r tc o n t o r t s as e c u r k yh o l e 。 i nt h i sp a p e r ,w ep r o v i d eas o l u t i o nt os i g nx m l d o c u m e n t sw i t h o u tm o d i f y i n g t h e e x i s t i n ga p p l i c a t i o n s 。d e t a i l e d l yd i s ,c u s st h ef e a s i b i l i t ya n d a d v a n t a g e t ob u i l dt h e x m l d i g i t a ls i g n a t u r es y s t e m w i t hw e b 服务。b a s e do nf u l f i l l i n gax m ld i g i t a l s i g n a t u r es y s t e m ,d e s c r i b e t h ed e s i g na n dd e v e l o p m e n tp r o c e s so fi t ,d i s c u s sa n d s o l v e t h ee x i s t e n tp r o b l e mi nt h ep r o c e s s 。a n dp r o v i d et h ee x a m p l e o ft h ei n t e g r a t i o no f x m l d i g i t a ls y s t e m a n dt h ee x i s t e db 2 b w h i c hc a nb e ar e f e r e n c ei nt h ef u t u r ei n t h ef i n a l if o r e c a s tt h ep r o s p e c to ft h ex m ld i g i t a ls i g n a t u r eb a s e d o nw e b 服务,a n d g i v es o m e f u r t h e rr e s e a r c hd i r e c t i o no fi t 。 u 、月l 丘易 k e y w o r d s :w e b 臌;s e m s _ w e b ;x m l d i g i t a ls i g n a t u r e 中山大学硕士论文 基于w e b 服务的x m l 数字签名系统 上篇技术要点 第1 章引言 本章概要性地回顾了企业应用系统集成的变迁,以建立x m l 数字签名系统 的过程为研究背景,简要阐述了本论文研究的内容及其意义,同时介绍了本文的 组织结构。 1 1 研究背景与发展现状 电子商务经过了几个阶段的发展:从浏览静态网页,使用交互式的网上表格, 进行企业对客户( b 2 c ) 的商业,到开发企业对企业( b 2 b ) 的应用集成。目前有 一半以上的企业还是停留在静态的w e b 和简单的电子商务应用阶段。 到目前为止,企业对企业的应用集成主要是把单块的企业软件进行改装而取 得所需要的解决方案。但是,这种紧密结合的解决方案的灵活性很差。当商务的 需求改变时,很难改装这种集成配置去解决新的问题。今天,企业无需在企业内 部网、外部网和因特网做应用集成时再为这种情况担忧,原因是动态电子商务为 企业提供了商务流程、客户和厂商系统动态延伸及连接的功能。w e b 服务技术是 动态电子商务的基础。应用w e b 服务,企业可以轻松地集成新的应用程序,连接 各种各样的商务流程和增值销售商来达到其商务目的。 而完全支持电子商务,除了s o a p 、w s d l 、u d d i 标准规范外,还需要更多的 技术,比如安全、可靠的消息传递、服务质量等来覆盖动态电子商务的全部需求, 实现真正的动态电子商务的w e b 服务。目前,商业界和i t 业界分析家认为当w e b 服务被广泛的应用时,安全性是需要关键解决的问题。 应用w e b 服务进行应用集成成为研究的热门,而如何在实现基于w e b 服务 的应用的同时能够满足一定的安全需求更是急切需要解决的问题。本文正是在这 些问题的基础上展开研究的。 中山大学硕士论文 基于w e b 服务的x m l 数字签名系统 1 2 主要研究内容及研究意义 本文以渥划直能遂篮理值息丕筮项目开发为研究背景,采用w e b 服务技术 建立b 2 b 应用集成,应用x m l 数字签名技术建立x m l 数字签名系统,并与b 2 b 系 统进行轻松、快速集成。详细研究了如何利用x m l 数字签名来增加b 2 b 的安全性 及其他功能。从理论和实践提出了一种基于w e b 服务的x m l 数字签名系统模型。 该模型满足企业的业务需求,并具有较好的扩展性和通用性。 由于电子商务等网上交易的普及,安全越来越受到重视,因此,能够建立一 个通用的、可以简单集成的、可以满足一定安全需求的服务具有广泛的实用意义。 1 3 论文组织结构 本论文分两大部分共六章组成:综述部分和研究部分。 综述部分:主要是论文的研究背景和研究基础的介绍,包括三章,分别是: 第一章;第二章w e b 服务技术构架,主要论述了w e b 服务的构架内技术的基 础概念和w e b 服务的安全性。包括w e b 服务技术构架内的s o a p 、w s d l 、u d d i : 第三章x m l 数字签名,主要概述了和安全有关的一些技术的基本概念,如x m l 加密、x m l 数字签名等:并分析了建立x m l 数字签名系统的必要性,以及采用w e b 服务进行x m l 数字签名系统开发的优点。 研究部分:主要是本论文的研究内容、研究结果及实践应用,包括三章,分 别是:第四章一种基于w e b 服务的x m l 数字签名系统的设计,提出耍建立的x m l 数字签名系统的架构以及采用u m l 对系统进行建模的过程;第五章系统中的签 名代理部分以及签名服务器部分的具体实现;第六章在深圳能源信息系统中应 用的系统架构以及本文的结论部分,此章将建立的系统和之前的b 2 b 系统整合并 总结了本论文的研究工作,并对未来的研究方向进行了展望。 中山大学硕士论文 基于w e b 服务的x m l 数字签名系统 第2 章w e b 服务综述 2 1w e b 服务体系架构 2 1 1什么是w e b 服务 从表面看,w e b 服务就是一个应用程序,他向外界提供一个能够通过w e b 进 行调用的a p i 。这就是说你能够通过编程的方法通过w e b 来调用这个应用程序。 下面是对w e b 服务更精确的解释:w e b 服务是建立可互操作的分布式应用程 序的新平台。w e b 服务平台是一套标准,它定义了应用程序如何在w e b 上实现互 操作性。可以用任何语言在任何平台上写w e b 服务,只要使用w e b 服务的应用 程序可以通过w e b 服务标准对服务进行查询和访问。 2 1 2 w e b 服务的优点 一互操作性。任何w e b 服务都可以与其它w e b 服务进行交互。应感谢 s o a p ( s i m p l eo b j e c ta c c e s sp r o t o c 0 1 ) ,这是所有主要供应商( 以及 大多数中小供应商) 都支持的新标准协议,这样就避免了在c o r b a 、d c o m 和其它协议之间转换的麻烦。因为可以使用任何语言来编写,w e b 服务 开发者无需更改他们的开发环境就可生产和使用w e b 服务。 - 普遍性。w e b 服务使用h t t p 和x m l 进行通信。因此,任何支持这些技 术的设备都可以拥有和访问w e b 服务。不久,它们将在电话、汽车甚至 汽水贩卖机中出现。 低进入屏障。w e b 服务背后的概念易于理解,并且来自i b m 和微软这样 的供应商的免费工具箱能够让开发者快速创建和部署w e b 服务。此外, 其中的某些工具箱还可以让已有的c o m 组件和e j b 方便地成为w e b 服务。 - 行业支持。所有主要的供应商都支持s o a p 和周边w e b 服务技术。例 如,微软的。n e t 平台就基于w e b 服务,因此用v i s u a lc # 编写的组 件很容易作为w e b 服务部署,并由使用i b mw s a d ( w e b s p h e r e a p p l i c a t i o nd e v e l o p e r ) 编写的w e b 服务使用,反之亦然。 2 1 3 服务架构中的角色和相互之间的关系 中山大学硕士论文 基于w e b 服务的脒l 数字签名系统 一个w e b 服务中的网络组件可以充当一种或者多种基础的角色:服务提 供者( s e r v i c ep r o v i d e r ) 、服务请求者( s e r v i c er e q u e s t ) 、服务代理( s e r v i c e b r o k e r ) 。如图2 1 所示。 一 服务提供者:负责使用w s d l ( w e b 服务d e s c r i p t i o nl a n g u a g e ) 来描述 和定义那些可以通过编程来访问的应用程序的功能,在u d d i 商业注册中 心( 即服务代理) 中发布这些服务的信息。使其可以被其他应用访问、 接收及处理w e b 服务请求者的调用。企业可以在网络上配置w e b 服务而 成为服务提供者,扮演服务器端组件应用程序的角色。 一 服务请求者:负责通过一个或者多个服务代理寻找到他们所需的w e b 服 务后,下载定义服务的w s d l 文档,并且根据服务定义来绑定( b i n d ) 和 调用( i n v o k e ) 服务提供者主办的w e b 服务。w e b 服务的消费者可以扮演 服务请求者的角色。 _服务代理:负责宣传服务提供者发布的w e b 服务和允许服务请求者查询 发布在此服务代理中的服务定义。服务代理扮演一个服务提供者和服务 请求者媒人的角色,作用与电话薄的黄页相同。当服务请求者在服务代 理中找到所需的w e b 服务后,接下来的交互工作只需要在服务提供者和 服务请求者之间进行,而服务代理将从此退出w e b 服务的访问和调用的 工作流程。 blish i 一;:i d i s c o v e r f :j 蜜一e a u e a v r e s - 。n s e 国 中山大学硕士论文 基于w e b 服务的y & t l 数字签名系统 图2 2w e b 服务技术体系 其中,底部灰色部分是已经定义好的并且广泛使用的传输层和网络层的标 准:中间的白色部分是目前开发的w e b 服务的相关标准协议,包括服务调用协议 s o a p 、服务描述协议w s d l 和服务发现集成协议u d d i 以及服务工作流描述语言 w s f l :项部的灰色部分描述的是更高层的待开发的关于路由、可靠性以及事务等 方面的协议:而右边的灰色部分是各个协议层的公用机制,这些机制一般由外部 的正交机制来完成。 2 2 s o a p s o a p ( s i m p l eo b j e c ta c c e s sp r o t o c o i 简单对象访问协议) 为在一个松散 的、分布的环境中使用x m l 对等地交换结构化和类型化的信息提供了一个简单且 轻量级的机制。它通过一个模块化的包装模型和对模块中特定格式编码的数据重 编码机制来表示应用语义。 s o a p 由四个部分组成: 1 s o a pe n v e l o p e ( s o a p 信封) :它构造定义了一个整体的表示框架,可用 于表示在s o a p 消息( m e s s a g e ) 中的是什么,谁应当处理它,以及这是可选的还 是强制的。而s o a p 消息是在对等s o a p 结点( n o d e ) 间通信的基本单位。s o a p 结 点是根据s o a p 定义的整套规范来处理s o a p 消息的场所。任何不符合s o a p 约定 的情况都将导致结点产生一个s o a p 错误( f a u it ) 。s o a p 信封是s o a p 消息在句法 上的最外层结构。在句法上,它包含了所有其他的s o a p 元素和应用元素。s o a p 条目( s o a pb l o c k ) 是一个句法上的结构,它用于包含一个逻辑上的单一元素。 中山大学硕士论文 基于w e b 服务的x m l 数字签名系统 这一元素需要s o a p 结点所处理。一个s o a p 条目是由该条目最外层元素的完整修 饰名( 带命名空间修饰) 所标识的,这个完整修饰名由一个局部名和个命名空 间u r i 所组成。封装在s o a p 头( h e a d e r ) 中的条目称为h e a d e r 条目,是能够被 s o a p 消息传输路径中任意s o a p 接受者结点处理的一组条目。而封装在s o a p 体 ( b o d y ) 中的s o a p 条目称为b o d y 条目,能够被s o a p 消息路径中最终s o a p 接收 者结点处理的一组s o a p 条目。s o a p 错误( f a u l t j 是由结点产生的用于包含错 位信息的特殊的s o a p 条目。 图2 3s o a p 消息的封装模型 2 s o a pe n c o d i n gr u l e s ( s o a p 编码规则) :定义了一个数据的编序机制, 通过这样个编序机制来定义应用程序中需要使用的数据类型,并可用以交换由 这些应用程序定义的数据类型所衍生的实例。例如,应订单服务的需要,使用 s o a p 编序规则定义了订单的数据类型,并可以在订单生成的客户端与订单服务 之间交换订单的实例。 3 s o a pr p cr e d r e s e n t a t i o n ( s o a pr p c 表示) :定义了一个用于表示远端 过程调用和响应的约定。 4 s o a pb i n d i n g ( s o a p 绑定) ;定义了一个使用底层传输协议来完成在结 点间交换s o a p 信封的约定。典型的s o a p 绑定包括在h t t p 消息中传送s o a p 消息 或在t c p 之上传送s o a p 消息等。 这四个部分在功能上是正交的。特别的,信封和编码规则是被定义在不同的 x m l 命名空间中,这样有利于通过使用模块化的设计来获得实现的简明性。 在s o a p 规范中还定义了两种s o a p 绑定,用于描述s o a p 消息如何通过带h t t p 扩展框架( h t t pe x t e n s i o nf r a m e w o r k ) 的h t t p 消息进行传输,或者是如何通 6 中山大学硕士沦文 基于w e b 服务的心l 数字签名系统 过不带f f t t p 扩展框架的n t t p 消息进行传输。 2 3w s d l 使用标准化消息格式通信协议w e b 服务也需要以某种结构化的方式对w e b 服务的调用通信加以描述这是w e b 服务即时装配的基本保证。w s d l ( w e b 服 务d e s c r i p t i o nl a n g u a g e ,w e b 服务描述语言) 正是这样一种描述语言。它定 义了一套基于x m l 的语法,将w e b 服务描述为能够进行消息交换的服务访问点的 集合。w s d l 服务定义为分布式系统提供了可以被机器识别的s d k ( s o f t w a r e d a v e l o p m e n tk i t ) 文档,并且可用于描述自动执行应用程序通信中所涉及的细 节。 w s d l 文档将w e b 服务定义为服务访问点或端口的集合。在w s d l 中,由于服 务访问点和消息的抽象定义己从具体的服务部署或数据格式绑定中分离出来,因 此可以对抽象定义进行再次使用,消息( m e s s a g e ) 是指对交换数据的抽象描述, 而端口类型( p o r t t y p e ) 指操作的抽象集合。用于特定端口类型( p o t t t y p e ) 的具体 协议和数据格式规范构成了可以再次使用的绑定( b i n d i n g ) 。将w e b 访问地址与 可再次使用的绑定( b i n d i n g ) 相关联,可以定义一个端口( p o r t ) ,而端口( p o r t ) 的集合则定义为服务( s e r v i c e ) 。因此,w s d l 文档在w e b 服务的定义中使用下列 元素: 类型( t y p e s ) :数据类型定义的容器,它使用某种类型系统( 一般使用x m l s c h e m a 中的类型系统) 。 消息( m e s s a g e ) :通信消息的数据结构的抽象类型化定义。使用t y p e s 所 定义的类型来定义整个消息的数据结构。 操作( o p e r a t i o n ) :对服务中所支持的操作的抽象描述,一般单个 o p e r a t i o n 描述了一个访问入口的请求响应对。 端口类型( p o r t t y p e ) :对于某个访问端口类型所支持的操作的抽象集合, 这些操作可以由一个或多个服务访问端口来支持。 绑定( b i n g i n g ) :特定端口类型的具体涛议和数据格式规范的绑定。 端口( p o r t ) :定义为协议数据格式绑定与具体w e b 访问地址组合的单个 服务访问端口。 中山大学硕士论文 基于w e b 服务的x 札数字签名系统 服务( s e r v i c e ) :相关服务访问点的集合。 其中,t y p e s 是一个数据类型定义的容器,包含了所有在消息定义中需要的 x m l 元素的类型定义。 m e s s a g e 具体定义了在通信中使用的消息的数据结构,m e s s a g e 元素包含了 一组p a r t 元素,每个p a r t 元素都是最早消息的一个组成部分。每个p a r t 都会 引用一个0 a t a t y p e 来表示它的结构。 p o r t t y p e 具体定义了一种服务访问入口的类型,所谓访问入口的类型就是 传入传出消息的模式及其格式。一个p o r t t y p e 可以包含若干个o p e r a t i o n ,而 一个0 p e r a ti o n 则指访问入口支持的一组类型的调用。 w s d l 文档可以分为两部分。顶部分由抽象定义组成,而底部分则由具体描 述组成。抽象部分以独立于平台和语言的方式定义s o a p 消息,它们并不包含任 何随机器或语言而变的元素。这就定义了一系列服务,截然不同的网站都可以实 现。随网站而异的东西如序列化便归入底部分,因为它包含具体的定义。 一抽象定义 下面三种结构描述了调用w e b 服务的抽象定义: 1 t y p e s 是一个数据类型定义的容器,包含了所有在消息定义中需要的 x f l l 元素的类型定义。 2 m e s s a g e 具体定义了在通信中使用的消息的数据结构,m e s s a g e 元素 包含了一组p a r t 元素。每个p a r t 元素都是最终消息的一个组成部分,每个 p a r t 都会应用一个d a t a t y p e 来表示它的结构。 3 p o r t t y p e 具体定义了一种服务访问入口的类型,也就是传a 传出消 息的模式及其格式。一个p o r t t y p e 包含若干个o p e r a t i o n ,而一个0 p e r a t i o n 则是捂访问入口支持的一种类型的调用。 以上三种结构与具体w e b 服务部署细节无关,是可复用的描述。如果与 一般的对象语言做比较的话,这部分可以认为是i d l 描述的对象,描述了对 象的接口标准,但是到底对象是用哪种语言实现,遵从哪种平台的细节规范, 被部署在哪台机器上则是下面元素所描述的。 二具体定义 1 s e r v i c e 描述的是一个具体的被部署的w e b 服务所提供的所有访问入口 中山大学硕士论文 基于w e b 服务的) 【l l l 数字签名系统 的部署细节,一个s e r v i c e 往往会包含多个服务访问入口,而每个访问入口都 会使用一个p o r t 元素来描述。 2 p o r t 描述的是一个服务访问入口的部署细节,包括通过哪个w e b 地址来 访问,应当使用怎样的消息调用模式来访问等。其中,消息调用模式则是使用 b i n d i n g 结构来表示。 3 b i n d i n g 结构定义了某个p o r t t y p e 与某种具体的网络传输协议或消息 传输协议绑定,从这一层开始,描述的内容就与具体服务的部署相关了。比如, 可以将p o r t t y p e 与s o a p h t t p 绑定,也可以将p o r t t y p e 与m i m e s m t p 绑定等。 w s d l 的设计理念完全继承了以x m l 为基础的当代w e b 技术标准的一贯设计理 念:开放。w s d l 允许通过扩展使用其他的类型定义语言( 不光是) ( m ls c h e m a ) , 允许使用多种网络传输协议和消息格式( 不光是在规范中定义的这些: s o a p h t t p ,h t t p g e t p o s t 以及m i m e 等) 。同时w s d l 也应用了当代软件工程中 的复用理念,分离了抽象定义层和具体部署层,大大增加了抽象定义层的复用 性。 2 4u d d i u d d i 是统一描述、发现和集成协议( u n i v e r s a ld e s c r i p t i o n ,d i s c o v e r ya n d i n t e g r a t i o n ) 的缩写。u d d i 本质上是为解决当前在开发基于组件化的w e b 服务 中所使用的技术方法无法解决的一些问题。 u d d i 具有非凡的技术简单性,他为w e b 服务在技术层次上提供了三个重要的 支持: _ 标准化的、透明的、专门描述w e b 服务的机制 _ 调用w e b 服务的简单机制 - 可访问的w e b 服务注册中心 通过u d d i 注册,使得企业能够把自身的描述、服务描述以及服务访问方式 的描述公开发布。已注册的企业能够被需求方所搜索到,同时,对于合作伙伴之 间集成也能更为动态和方便地实施。 2 4 1u d d i 信息描述 从理论上来说,所需要发布的企业所有信息由u d d i 商业注册中心提供,这 些信息包括三个部分:公司联络信息的”白皮书“,依据标准分类法的商业分类的 9 一 中山大学硕士论文 基于w e b 服务的x m l 数字签名系统 ”黄皮书”和提供被发布服务的技术描述信息的”绿皮书”。白皮书的内容包括:公 司名称、联络信息、对人而言易读的描述和标识( d u n s ,纳税帐号等) 。黄皮书的 内容包括:服务和产品索引、工业代码、地理索引等。绿皮书的内容包括:电子 商务规则、服务描述、应用的调用方法和数据绑定等, u d d i 注册使用的核心信息模型由x m ls c h e m a 定义。使用瑚l 是因为它提供 了平台无关的数据描述并很自然的描述了数据的层次关系。而选择) ( m ls c h e m a 是因为它支持丰富的数据类型便捷的描述方式及其按信息模型对数据进行验证 的能力。 u d d i ) ( m ls c h e m a 定义了四种主要信息类型,它们是技术人员在需要使用合 作伙伴所提供的w e b 服务时必须了解的技术信息。它们是:商业实体信息 ( b u s i n e s s e n t i t y ) 、服务信息( b u s i n e s s s e r v i c e ) 、绑定信息( b i n d i n g t e m p l a t e ) 和服务调用规范( t m o d e l ) 的说明信息。 2 4 2u d d ia p i 规范 u d d ia p 规范描述允许执行发现和发布操作的s o a pa p i 。还描述了请求 响应语义和错误处理。 查询a p i 包含两类调用,使程序能快速地定位候选商业实体、w e b 服务及其 调用规范,然后在最初调用获得的初始信息的基础上,获得进一步的相关信息的 细节。这类以f i n d x x 命名的a p i 提供了多种搜索标准,从而能对注册中心中的 数据进行广泛地搜索。另一方面,如果事先已经知道所需数据的关键字,则可以 通过直接调用g e tx xa p i 得到相应的结构数据( 如:b u s i n e s s e n t i t y 、 b u s i n e s s s e r v i c e 、b i n d i n g t e m p l a t e 、t m o d e l ) 。 发布a p i 包括四个s a v e x x 函数和四个d e l e t e x x 函数,每个对应于一个 u d d i 主要结构( b u s i n e s s e n t i t y ,b i n s i n e s s s e r v i c e b i n d i n g t e m p l a t e ,t m o d e l ) 。 旦得到授权,一个独立的机构可以注册任意数量的b u s i n e s s e n t i t y 或t m o d e l 信息,也可以修改原先发布的信息。a p i 设计模型很简单:可以更改特定的相关 信息,也可以使用s a v e 功能来保存新信息。要删除整个结构则可以调用d e l e t e 功能。 2 4 3u d d i 注册中心( u d d ir e g i s t r y ) 发起u d d i 计划的公司在w e b 上发布了个可操作的u d d i 商业注册中心。u d d i 1 0 中山大学硕士论文基于w e b 服务的x m l 数字签名系统 商业注册中心是u d d i 标准的一个具体实现,能使所有企业在电子商务的活动中 利用它而获得利益。u d d i 商业注册中心在逻辑上是集中的,在物理上是分布式 的,由多个根节点组成,相互之间按一定规则进行数据同步。当一个企业在u d d i 商业注册中心的一个实例中实施注册后,其注册信息会被自动复制到其它u d d i 根节点,于是就能被任何希望发现这些w e b 服务的人所发现。 同时,i b m 和微软还发布了私有的u d d i 注册中心软件,在私有注册中心注册 的企业只能被有权限的成员发现。 2 5w e b 服务安全性 随着秤e b 服务的诞生,一些在早先的封闭式环境下不存在的问题也随之产生。 新的系统开放层次以及数据交换和互操作能力的新特点,也意味着我们将面临对 数据和身份信息进行保密的新挑战。 企业应用程序和他们的接口对公众开放的,他们通过8 0 端口进行通信, 且防火墙一般允许所有h t t p 信息流通过这个开放的端口。不过,不要以 为隧道方式通过8 0 端口的所有信息都是安全的,为关键数据提供前端的 应用程序会通过h t t p 暴露信息并使得外界都可以访问。在最糟糕的情况 下,这些应用程序甚至被公布在公开目录中,从而可以被任何人发现。 - 包装在s o a pw r a p p e r 中的数据提供了一个方法,以辨认正通过发送的数 据的结构和意义。 - 发送方和接收方不一定要用相同的软件平台来实现,也就是说,他们不 一定要采用相同厂商的安全包。这时,我们需要一组标准的与平台无关 的安全解决方案。 x m l 语言相当冗长,采用x m l 加密也相当费事。而且,采用x m l 包装数 据会极大地增加被加密数据包的大小。 一w e b 服务的前景很广阔,其中包括通过动态发现促进自然地供应链社区 或商务社区。这个前景需要复杂的交互,s o a p 信息一般要跨越多个中介。 对于某些中介,你很可能没有预设的业务逻辑安排,并且这些中介也可 能不是建立在通用的基础架构上的。在这样的环境中又该如何管理加密 的密钥呢? 中山大学硕士论文 基于w e b 服务的删l 数字签名系统 a f f 正采用一种新的安全技术来处理这一问题。其中的许多问题仍在探讨 中,或者其解决措施还只处于早期阶段。然而,现有的安全技术有可信的使用记 录,不会很快被废弃。事实上,这些新技术要么建立在现有的安全技术上,要么 是对现有技术的进一步增强,比如p k i 、h t t p s 和s s l 。 我们目前所见到的基于h t t p 的w e b 商务应用般通过采用s s l 来获得安全, 这种技术基本上把安全控制在传输协议层上。虽然迄今为止这种方法还是够用 的,但是我们需要允许使用数字证书、数字签名以及在x m l 文档中进行验证的新 的技术能力,而不是依赖于底层传输来做所有的事情。毕竟,s o a p 和w e b 服务 是假定与协议无关的,因此就不能依赖传输层协议来实现安全。此外。将安全机 制集成到x m l 文档中对于w e b 服务有很多好处,这使得我们能够衡量文档有效的 负载,并可以决定在文档上放置何种约束。 中山大学硕士论文 基于w e b 服务的x m l 数字签名系统 第3 章x m l 数字签名 本章主要介绍了和安全有关的一些概念,并且着重介绍了本文用到的x l h l 数 字签名方法。包括签名的原理以及签名的过程到签名如何应用。 3 1 安全基本概念 1 信息传输安全:在分布式网络环境中,要达到安全的目标是一项复杂和具 有挑战性的任务。全面的安全依赖于每一个参与的系统以及它们之间是如何进行 通信。通常,信息传输的安全要求是 - 保密性 - 授权 一数据完整性 _ 信息源认证 _ 非否认 密码技术被用来满足以上这些要求。被广泛运用的技术包括加密、散列函数 和公共密匙加密等。我们将在接下来的篇幅中,讨论每一个要求以及使用什么样 的技术来实现它们。 2 保密性:保证被传输消息的入侵者不能读取数据 这基本上包含使用一定机制,例如s s l 的消息加密来确保保密性。发送方认 证接受方并与接受方协商加密方案。接受方可以选择认证发送方。发送方和接受 方通过交换加密消息来建立彼此间的联系。 3 授权:保证发送方被授权发送信息 这可以通过使用存取控制列表( a c l ) 和策略实现来完成。授权可以在应用层 或者服务器层中被实现。 4 消息完整性:保证消息在传输中没有被意外或者有目的地修改 你可以使用散列方法来确定消息的完整性。消息摘要版本5 ( m d 5 ) 是以此为 中山大学硕士论文 基于w e b 服务的】( m l 数字签名系统 目的的一个受欢迎的单向散列算法。使用m d 5 ,就会给消息计算出一个唯一的单 向散列值,并连同消息一起被发出。接收方根据接收到的消息重新计算散列值, 并和接收到的散列值进行比较,从而验证消息的完整性。 5 消息源认证:保证消息是来自于己知的源并且不是重复消息 实现这样的功能需要引入消息中的一个当前值,使用敬列消息以及利用发送 方与接收方共享的密钥来加密散列。当前值决定了消息是原始消息还是重复消 息。可以使用散列密钥i j i i a c 算法来达到这个目的。 6 非否认:保证消息的创建者不能够拒绝来自于他们系统的消息 非否认可以通过使用数字签名来实现:公共密钥加密方法是特别应用于此目 的的。本章的其余部分将重点介绍数字签名如何工作,如何对一条y d i i l 消息进 行数字签名以及如何在接收方那边验证它。 7 数字签名:数字签名与实现消息源认证有着相类似的方法。 但是在这里使用公共密钥加密方法,而不是共享密钥。简而言之就是,发送 方有一对密钥,一个私有的和一个公共的。这些密钥在某种意义上有算术的联系 一利用私有密钥加密的数据可以通过公共密钥来解密。发送方计算消息的一个 唯一散列值,并用私有密钥来加密散列值。这个加密后的消息,连同原始消息和 证书发送给接收方。公共密钥在证书里面,证书是被接收方信任的第三方( 一个 证明权威机构) 检验过的。接收方从证书里面拿出发送方的公共密钥并解密消息。 然后计算出散列值,通过比较来确定消息的完整性。因而数字签名可被用作认证 签名实体和保证数据在传送过程中没有被改变。 8 s o a p 和数字签名 s o a p 消息有一个由s o a p 标题和s o a p 体组成的信封。当用于一个r p c 调 用时,消息中的真实信息就存在于s o a p 体内。 数字签名特别利用了存在于s o a p 标题内的s o a p 消息扩展。发送方通过获 得密钥对来做准备。被签名的内容储存在s o a p 体之内。发送方的私有密钥被用 来签名和加密s o a p 体。最后,签名被放在s o a p 标题中。 当处理s o a p 消息时,发送方处理s o a p 标题并在兑现s o a p 请求之前验证 签名。 一1 4 一 中山大学硕士论文 基于w e b 服务的删l 数字签名系统 3 2x m l 3 2 1x m l 简介 x m l 语言正在引起商业社会越来越多的关注,它看起来应该是商业团体内交 换商业信息的更有效的方法。随着应用集成的发展,人们开始使用这种新标准, 为源应用和目标应用建立一个通用的集成点。 x m l 的强大功能使它对各种类型的应用集成项目具有巨大的价值,但是因为 它的基础结构非常有利于信息的交换和管理,它的真正价值还是体现在它对b 2 b 应用集成的支持。 x m l 提供了一个坚固的、能够被人们所理解的信息交换标准,而且是一个一 致性的标准。它支持应用语义和应用内容的交换,在应用互相之间没有任何了解 的情况下,提供一种应用级的商业信息产生和共享机制。因为x m l 支持这些信息 交换特征,所以它对b 2 b 应用集成方案具有极大的价值。 x m l 的强大来自于它的简单性。它可以把大规模的信息快速整理合并成个 简单的x m l 文档一种有意义的信息结构组织。x m l 文档是由标识符定义的元 素构成的。元素具有开始标识符和结束标识符。x m l 文档的所有元素都包含在一 个根元素内。x m l 还支持嵌套元素,或者元素内部的元素,这种能力允许x m l 支 持分层式结构。元素名描述了元素的内容,结构描述了元素之间的关系。 3 2 2x m l 的主要特点 特点 正是x m l 的特点决定了其卓越的性能表现。x m l 作为一种标记语言,有许多 简单:x m l 经过精心设计,整个规范简单明了,它由若干规则组成,这些规 则可用于创建标记语言,并能用一种常常称作分析程序的简明程序处理所有新创 建的标记语言。) ( m l 能创建一种任何人都能读出和写入的世界语,这种创建世界 语的功能叫做统一性功能。如x m l 创建的标记总是成对出现,以及依靠称作统一 代码的新的编码标准。 开放:x m l 是s g m l ( s t a n d a r dg e n e r a t i z e dm a r k u pl a n g u a g e ) 在市场上有许 多成熟的软件可用来帮助编写、管理等,开放式标准x m l 的基础是经过验证的标 一1 5 中山大学硕士篼文 基于w e b 服务的瑚l 数字签名系统 准技术,并针对网络做最佳化。众多业界顶尖公司,与w , 3 c 的工作群组并肩合作, 协助确保交互作业性,支持各式系统和浏览器上的开发人员、作者和使用者,以 及改进) ( m l 标准。x m l 解释器可以使用编程的方法来载入一个m l 的文档,当这 个文档被载入以后,用户就可以通过x m l 文件对象模型来获取和操纵整个文档的 信息,加快了网络运行速度。 高效且可扩充:支持复用文档片断,使用者可以发明和使用自己的标签,也 可与他人共享,可延伸性大,在x m l 中,可以定义无限量的一组标注。) ( m l 提供 了一个标示结构化资料的架构。一个x m l 组件可以宣告与其相关的资料为零售 价
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 入院评估课件
- 健康骨骼知识培训课件
- 俄罗斯政府课件
- 企业疫情期间安全培训课件
- 企业环境安全培训的作用
- 社区纪委考核管理办法
- 社区干部纪律管理办法
- 数字农业的新质生产力特征
- 2025国家能源集团招聘笔试历年参考题库附带答案详解
- 出租车防御性驾驶
- 硒鼓基础知识培训内容课件
- 心脏猝死教学课件
- 子宫内膜病理课件
- T-CITSA 57-2025 高速公路基础设施主数据标准
- 质量风险预警系统-洞察及研究
- 2025-2026学年北师大版(2024)小学数学一年级上册教学计划及进度表
- 【星图研究院】2025中国RFID无源物联网产业白皮书
- (2025)全国辅警考试题库及答案
- 2025年湖北省中考数学真题试题(含答案解析)
- 交叠影响域理论视角下的幼儿体育“家园社”协同共育模式研究
- 2025年全国学宪法讲宪法知识竞赛考试题库(含答案)
评论
0/150
提交评论