(通信与信息系统专业论文)基于saml的web服务认证技术研究.pdf_第1页
(通信与信息系统专业论文)基于saml的web服务认证技术研究.pdf_第2页
(通信与信息系统专业论文)基于saml的web服务认证技术研究.pdf_第3页
(通信与信息系统专业论文)基于saml的web服务认证技术研究.pdf_第4页
(通信与信息系统专业论文)基于saml的web服务认证技术研究.pdf_第5页
已阅读5页,还剩55页未读, 继续免费阅读

(通信与信息系统专业论文)基于saml的web服务认证技术研究.pdf.pdf 免费下载

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

文档简介

华北电力人学硕十学位论文摘要 摘要 we b 服务作为一个崭新的分布式计算模型,具有松散祸合、 跨平台、跨语言 等 特点, 它可以促进各种商务系统、 企业系统的集成, 降低成本, 提高效益。 但是w eb 服务在实际应用中遇到的安全问题, 却制约着其发展和应用推广,传统的安全解决 方案 已不能满足其安全需求。身份认证技术是访 问应用 系统之前的第一道安全关 口。目 前,分布式环境中的联合身份认证越来越突显其重要性。安全声明标记语言 ( s a m l )为这种新的认证方式提供了一个标准规范,它同时是一个基于单点登录 ( si nglesi gn一 o n ,550 )标准的x m l框架,允许不同的实体间交换认证、授权和 其它信息。 本文在对两种传统的基于 s a ml的单点登录模型进行深入分析和比较的 基础上,提出了一种改进模型,以简化单点登录的流程,提高系统之间的独立性, 实现了集成身份认证功能。并对此改进模型中所涉及到的安全问题进行 了进一步的 研究,提出了相应的解决办法 。文章的最后,给出了该系统一个简单应用实例。 关键词:安全声明标记语言 ( s a ml) ,安全,身份认证,单点登录 abs tract w 亡 bs e rv i c e si sanew d i s t r i b ut e dc o m p u t i n gm o d e l .i t h a sth ec h ar a c t e r i s t i c so f l o o s e n 一 c o u p l i ng, c r o s s 一 p l a t fo r mand c ros s 一 l ang u a g e . i t c an acc e l e r at e i n t e g r al i o no f d l l l 七 r e n t k i n d s o f b u s ines s ande n te rp r i s e s y st ems , r e d u c e c o s t an di哪 r o v e b e n e fi t . h o wev e r,th e s e c urityp r o b le m s th atm 阳 b s e rv ic e s m e etin p r ac tic e h av e b e e n r e stric t e d th e d e v e lo p m e n t 即 d ap p li c at ion o f w 匕 b s e rv i c e s . o n l y r e ly in g o n tradit io n ar y s e c u re s o 1u t io n c 即 n o t s at i s fy t h e se c ur ityr e q u ire m e n ts o f 从 1七 b s e rv ic e s . id e nt itya u t l1 e nt ic at io n is t h e fi r s t s afeg u ard b e fo r e u s e r sacc e s sth ea p p l i c a t i o ns y st e m. c urre nt l y, th efed e r a t e daut h e nt i c at i o ni nd i s t r i b ute d env i ronm e nt i sb e c o mi ng mo r eandmo r ei 1 1 1 p o rt ant .t h es e c uri t ya s s e rt i o nma r k 即 l ang u a g e( s a ml ) is aniln p o rt ant s ta l记 ar d iz e d c ri te r io n o f th is n e w a ut hent ic at io n 11 1e t 卜 o d ltisa ls oan x m lb a se ds ingles i g n 一 o ns t 田 ld ar d , whic he n a b l e sthe e x c h ange o f a u 山 e n t i c atio n , a u t h oriz at i o n 即d o th e r i n fo rmat i o n b e 伽e e n d i ffer e n t e n t i t i e s . i n th i s p a p e r, o n theb as i so f th o rou gh anal y s i s andc o m p ar i s o nb e t w e e nthe t w otr and i t i o nal s a ml 一 b ase d s igl e s i助一 o n mod e l, a news in g le s ig n 一 0 n m o d e i was p r0 p o s e d tos in 1 p 1 ifyth e fl o wo f th e s ingle s ign一 o n , iln p ro v e th e in d ep e nd曲 c e a mong th e sy s te m s , i m p leme n t in t e g r a t e id e n tity auth e n t i c at i o n .t h es e c uri t yp r o b l e m o ft h ei m p rov e dm o d e 1i sa l s o s t udi e dandt h e c o rr e s p o ndi n gs o l utio n i s p u t fo l 、 v a r d . i nth e l a stp art o f t he p aper, w e d e mo n s t r at e d a s 1 11 1 p 1 e a p p lic at io n o f th is sy s te m h a n j in g( c o m m u n i c a 1i o na n d i n fo r m a t io ns y s t e m) d i r e c t e db ya s s o c i a t e p r o fq i y i n c h e n g k e y 、 v o r d s : s c c u r i tya s s e rt i o n ma r k u pl a n g u a g e , s e c u r i ty, i d e u t i tya u t h e n t i c a t i o n , s i u g l e s i 沙一 ou 声明 本人郑重声明: 此处所提交的硕士学位论文 基于s a ml的场 七 b 服务认证技术研 究 ,是本人在华北电 力大学攻读硕士学位期间, 在导师指导下进行的研究工作和取得 的研究成果. 据本人所知,除了文中特别加以标注和致谢之处外, 论文中不包含其他人 已经发表或撰写过的研究成果, 也不包含为获得华北电力大学或其他教育机构的学位或 证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均己在论文中作了 明确的说明并表示了谢意。 学位论文作者签名: 耳各 一日期:01 不 关于学位论文使用授权的说明 本人完全了解华北电力大学有关保留、 使用学位论文的规定, 即: 学校有权保管、 并向 有关部门 送交学位论文的原件与复印件; 学校可以 采用影印、 缩印或其它复 制手 段复制并保存学位论文; 学校可允许学位论文被查阅 或借阅; 学校可以 学术交 流为 目 的 , 复制赠送和交换学 位论文; 同 意学校可以 用不同 方式在不同 媒体上发表、 传播学 位论文的全部或部分内容。 ( 涉密的学位论文在解密后遵守此规定) 作者签名 酥 兵导 师 签 名 :从 争 二 戈 日期 : 刁 . 不。 夕日期:0 7, 考卜 华北电力大学硕士学位论文 第一章 引言 课题 的背景和意义 web服务是 目前最典型的异构分布技术, 一个典型的 web 服务设置将会充分利 用多种不同的技术、对象模型和编程语言。 web 服务利用i nt er net 无处不在的影响 力,在企业内部和企业之间连接应用程序、系统和资源,来激活新的、令人激动的 业务流程,并维持与分布在各处的客户、合作伙伴和供应商的联系川 。w eb服务的 一个明显优势就是能够在不同环境下实现相互作用,它的出现使得企业与其合作伙 伴、 客户以 及员工之间的关系变得更加紧密t21 ,企业也更能根据后者的需求提供适 时的服务。但是要做到这一点,就必须面临这样一个问 题:如何同时确保这些互相 关联的系统的安全性。 出于安全方面的 考虑,许多企业将会首先把web服务的应用限制在企业内部。 在单个企业内保护 web 服务资源,首先需要对将要访问服务的用户进行身份认证, 例如客户必须提供正确的用户名和口 令才能获得服务131 。但是,web服务的真正价 值更多的体现在企业之间。当用户登录到多个系统上请求服务时, 用户需要先分别 在这些站点注册,在每次使用站点服务时都要先进行认证,即向每个系统的认证程 序提交用户名和密码,为了提高安全系数, 对于不同的站点又得注册不同的用户名 和密码。这样,用户必须记住许多用户名和密码,非常不方便。另 外,密码的过渡 繁殖也带来了新的问题,比如说工作效率的下降,密码被非法截获的可能性增加等 等。对企业来说需要管理大量用户的用户名和密码等个人信息,也是很大的开销。 从这个意义上讲,web服务要想取得成功必须首先解决安全问题14 ,而安全问 题的关键在于如何以一种灵活而又可互操作的方式实现异构系统的安全性。因此, 寻找一种只需进行一次身份认证就可达到对多个系统进行访问的跨平台、跨域的认 证方法成为当今研究的热点151。 有关这个问题的一个较好的解决方案就是使用单点 登 录 ( s in g l e s ig n 一 o n , 简 称5 5 0 ) 技 术。 1 . 2国内外研究动向 目前, 在集成身份认证解决方案的研究中,单点登录 ( 5 5 0 ) 成为一个重要的 研究方向,它能够在分布式计算机环境中安全和方便地鉴别用户。当前国际上与单 点登录相关的wo b 服务安全规范是安全声明标记语一言 ( s e c u r i t y a s s e rt i o n m a r k u p l an g u a g e , 缩写 为5 m l ) 161 。 2 0 0 2 年1 1 月, 结 构 化信息 标 准促 进组 织( 0 吧 a n i z at i o n fo r t h e a d v a n c e m e nto f s truc t ur e d i n fo rmat i o n s t an d a r d s , 简称 o a s i s ) 批准ts a m l 作 为 商 业 合作 伙 伴之间 交 换认 证 和 授权 信息 的x m l( e x tensi bl o m a rk upl an g ua g e ) 1 华北电力大学硕士学位论文 框架, 尤其是借助w比服务交换的信息。 作为x m l 的一个子集, s a m l 使得多 个 站点之间可以实现基于 web的安全兼容,如单点登录。 s a m l利用基本的w eb服 务 标 准, 如x m l 、 简 单 对象访问 协议 ( 5 0 p ) 和 传输 层 安全 ( t r an 卿rt l 盯 e r s e c u ri ty , 缩 写 为t l s ) , 支 持 安全 交换 认 证和 授 权信 息。 r s a 、 n e te g r i ty 、 ib m 、 o r a c le 、 b e a 、 o blix 和j er ic h 。 等厂商已承诺支持s a ml ,并正在把这项规范实施到各自 的产品中 去. s a m l 规范正处于发展之中,将来有望成为单点登录的标准。 现今实现了5 5 0技术或即将实现5 5 0技术的集成身份认证系统有:e vi d i an的 a c c e s s ma s t e r ,英国高等教育组织之rr的 a t h e ns ,e n t rus t 公司的 g e t c c e s s , n e t e g r i ty的s i t e m i n d e r 等。 a cc es s m aste : 是e vi di an 公司推出的一项密 码集中管理的安全产品 f71, 它的实现 原理如下:在一个集中的站点为每一个用户建立一个映射表,表中记录了该用户登 录不同站点时使用的标识和密码。用户登录这个负责映射关系维护的站点后,系统 返回一个页面,其中 包括了用户脚本中 预定制的多个站点的图标。当用户点击这些 图标后,服务端程序根据映射表中已有的站点所对应的用户标识、密码和登录方式 等信息,完成登录工作。这样,一个用户每天只需登录这个负责映射关系的站点一 次, 就可以通过它自动地登录到所有预定制的站点。 这种系统的优点在于简单易行, 缺点在于用户的身份信息没有在多站点间传递,不具有互操作性,难以实现多个站 点协同完成一个操作的能力。 a t h e n s通过数据库复制技术来保证所有数据服务提供者 d s p( d a taservi ce pro vi d er )用户信息的一致性。在a t h e n s 的站点上,保存着一个记录所有用户信 息的数据库。 每个 d s p 上也有一个用户信息数据库。 通过数据库复制技术来保证各 个d s p 用户信息数据库与a t h e n s 用户数据库的同步。 2 0 0 2 年2 月, a t h e n s 通 过对d s p 接口的 扩展实现了5 5 0 。 它保证了一个用户在所有的资源上认证信息的统 一,并能够统一进行更新。 a t h e n s 的优点 在于实现简单,有一定的互操作性,虽 然d s p g et a cc es s 和si te m in d er在实现上有所不同,但是其解决问题的思路大致相 同,即将具有合作关系的企业统一为一个 ,l1 户”( p o rtal) , 有集中的安全服务器 负责用户身份认证,用户及其权限管理等。各合作站点通过安装专用软件与安全服 务器进行通信, 具有跨企业边界的安全信息传递、 单点登录服务 ( 含集成身份认证) 等优点。但存在以下缺陷: 1 . 单纯的一对多结构 ,合作站点间缺乏通信灵活性。 2. 专用的通信软件,会增加系统的复杂性,使系统不易维护和扩展,同时增加 了应用维护与升级等成本。 3 . 缺乏统一的数据表示和通信机制,容易 造成安全信息的冗余和资源的浪费。 华北电力大学硕士学位论文 其中 最为 成功的 两 个例 子是m ic ro s o ft 的 .n e t p a s s p o rt 和l i b e rt y a l lia n c e p rojec t ( 自 由 联 盟计 划) 151 。 这两 者 具有 相同 的目 标, 即都 能 管理 基于w eb的 身 份 标识 和身份认证,都能使用户具备单次登录即能访问信任域中所有站点的功能。 除 了上 述共性,它们又具有各自 的优缺点,在本文的以后章节中 会对这两个例子做详 细介绍. 1 . 3本文研究的主要内容 随着s a m l 、 p mi 等技术规范的制定以 及各种标准的完善, 将 s a ml 与单点登 录技术联合考虑并应用于实践,将会产生可观的 经济效益。基于s a m l的w eb 服 务集成身份认证技术作为本课题的主要研究内容,是该项技术在实验阶段的尝试, 为将来在各个领域的分布资源的协同工作打下基础。本课题主要是分析当前存在的 身份认证应用需求与实际安全需求, 研究如何将s a m l 标准与单点登录需求技术相 结合,实现可跨平台的集成身份认证机制. 本论文的主要研究工作与开发工作总结为以下几个方面: 1 . 在对现有的两种基于s a m l的传统单点登录模型进行深入研究的基础上, 总结现有集成身 份认证系统或解决方案的优缺点,结合实际应用中的需要,为实现 基于s a ml 的集成身份认证机制提供理论及现实依据。 2 . 在分析 s a ml规范以及 5 5 0技术基础上,提出改进以后的基于 s a ml的单 点登录模型,其目 的是为了简化单点登录过程中系统的运行流程,提高系统之间的 灵活性,使得身份声明提供方 ( i d e n t i t y s s e rt i o n p ro v i d e r ,i o p )与服务提供方 ( serv ic e provid e r ,sp)之间具有更强的相互独立性,选用j ava 语言,参照 o pen 一 s a ml ,设计出适合本系统的s a m l引擎. 3 .依据上述思想,以改进的 s a ml单点登录模型为基础 ,采用面向对象的技 术和模块化的设计思想, 给出基于该模型的单点登录系统的框架以及各功能模块的 详细设计, 逐一实现系统的各个部分, 研究并实现自定义s a m l 令牌的产生、 过滤、 以及校验。 4 为了保证消息传输级的安全,准备在 idp 端与s p 端分别配置相应的x . 5 09 证书及其密钥库, 分别在用户与idp 端以 及用户与s p 端配置 h t t p s 安全协议, 以 保证通信双方信息的加密传输,并给出自定义 c a ( i d p )如何签名自生成证书的设 计与实现。 5 . 给出本系统的一个实验用例,以证明系统的可行性,并对 己经生成的系统给 出一个简单的应用实例 ,以证明系统的实用性。 华北电力大学硕十学位论文 1 . 4 w七 b服务简介 we b 服务是一个崭新的分布式计算模型, 它描述了 一组可以 在网络上通过标准 化的x ml 消息传递访问的操作。 w eb 服务被定义为一种新的w eb应用程序, 它是 自 包含,自 描述和模块化的应用程序并且可以 通过web来发布、 定位和调用。 自包 含意味着一个服务不应该依赖其他服务而存在, 服务和服务之间是松散祸合的;自 描述指服务本身提供描述自 身的详细信息,如通信所需的数据类型、消息结构、传 输协议等; 模块化揭示了w eb 服务的内部实现仍然是基于对象和组件的。 w eb 服务 的体系结构 图 卜1 所示: 发现 发布 图 1 一 i w e b 服务体系结构 在web服务模型中,所有的服务被封装成一个个相对独立的 w 比 服务, 每个 服务提供某种功能,井基于服务提供者 ( serv i ccp ro vi der ), 服务消费者 ( serv i ce c o n s u m e r ) 和服务注册中心 ( s e rvi c e r e g i st 尽) 这三种角色进行交互. 其中, we b 服务提供者是符合规范的web应用程序, 它提供某种特定的 “ 服务”, 可以 完成某 些特定的功能.同时,服务器提供者在服务注册库对 自身提供的服务 “ 注册”,从 而达到发布服务的功能。 这个注册的过程实际上是将这个 web 服务描述信息和 web 服务的调用规范存储到服务注册库。 服务消费者是需要实现某些功能的应用程序或 用户,他们通过查找服务注册库的信息找到所需要的服务,然后根据调用规范绑定 到服务提供者,从而得到需要的 服务。w eb 服务体系利用己 有的网络技术并加入了 一 些新的标准。 h t t p , t c p/ ip, ftp 等 i nt e m et上公用的 标准协议构成 w eb 服务架 构中传输层的基础。 而 h t f p协议在 web 服务中有特别重要的意义。因为 h t t p协 议是网络中最为常见、使用最广泛的通信协议,所以 web servi ce 往往把消息传递 的过程绑定到 h t i , p上,可以方便的穿越防火墙。 除了i nter net 上公用的标准协议 外,we b服务还使用了以下技术规范: 1 )可扩展标记语言 ( e x t e n s i b l e ma r k u p l a n g u 叩 e , x ml )是一种基于文本的 标记语言。它有两个主要的 特点:其一,它是一种健壮的数据表示方法,以一种开 华北电力大学硕士学位论文 放的自 我描述方式定义了数据结构,并在描述数据内容的同时能突出 对结构的描 述,从而体现出数据之间的关系。其二,它使用独立于语言和系统的通信格式,具 有良 好的扩展性和平台 无关性。现在x m l已 成为业界数据交换的标准语言,也是 we b 服务架构中信息描述和交换的标准手段。 2 ) 简单对象访问协议( s i m p l e o bj e c t a c c e s s p ro t o c o l , 5 0 p ) 是一种基于x m l 的轻量级消息交换协议, 也是w eb服务封装消息的规范。 根据s o a p 规范封装的消 息包可以绑定到h ttp , s m tp 等i nt er net 通用的通讯协议上, 使两个或多个对等实 体之间进行信息交换,并可以使这些对等实体在分散的分布式应用程序环境中相互 通信口 qi . 在web服务模型的核心中, 所有的请求和响应必须使用s o a p 来唤起web 服务。 3 ) w e b 服务描述语言 ( we b s e rv i c e s d e s c r i p t i o n l a n g u a g e , ws o l )用于描述 一个web服务的细节, 包括通信所需的数据类型、 可用的方法、 消息结构、 传输协 议等信息。在 web 服务模型的核心中,ws d l用作定义 web 服务的元数据语言, 描述服务提供方和请求方之间如何进行通信 。ws d l实质上是提供一种规范的语言 来描述一个 web服务的调用规则, 它是一种格式, 用来指定 w eb 服务中公开的操 作和服务, 并公开这些操作所使用的具体传输机制以及服务的位置。 4 ) 统 一 描述、 发 现 和集 成规 范( u n iv e r s a l d e s c r ip t io n o is c o v e 口an d l n t e g r at io n , u d di )规定了web 服务发布和发现的方法。u d di 包括商业注册和技术发现两部 分, 它定义了一套基于s o a p 的注册和发现web服务的编程接口。 通过 u d di, 在 服务 提供者和服务请求者之间建立了便于沟通的桥梁,网 络上的实体能够互相发现 对方并调用 对方的w 比 服务。 从外部使用者的角度而言,web 服务是一种部署在 we b 上的对象/ 组件,它具 备以下特征川1 : 1 )完好的封装性:服务既然是一种部署在 web 上的对象, 自然具备对象的良 好封装性,对于使用者而言,他能且仅能看到该对象提供的功能列表. 2 ) 松散藕合: 这一特征也是源于对象组件技术,当一个 web服务的实现发生 变更的时候,调用者是不会感到这一点的,对于调用者来说,只要服务的调用界面 不变, 服务实现中 任何变更对他们来说都是透明的。 3 )使用标准协议规范:作为web服务, 其所有公共的协议完全需要使用开 放 的标准协议进行描述、传输和交换。这些标准协议具有完全免费的规范,以便由任 意方进行实现。 4) 高度可集成能力:由于服务采取简单的、易理解的标准协议作为组件界面 描述和协同描述规范,完全屏蔽了不同软件平台的差异,无论是 c o r b a、d c o m 华北电力大学硕士学位论文 还是ejb都可以 通过这一种标准的协议进行互 操作, 实现了在当前环境下最高的可 集成性。 1 .s w 己 b 服务新的认证需求 由 于 w e b 服务的基础是简单对象访问协议s o a p , 它是在分布式环境中交换信 息的 简单的x m l文本协议,因而本身具有安全隐患, 从而也就决定了web服务本 身存在一定的安全性问题。一般而言,信息安全有以下几点要求川:机密性、完整 性、责 任性、可用性。为了提供这4 种关键的保护措施, 信息安全必须成为 w eb 服务系统设计和实现的一个完整部分. 对用户身份进行有效认证是保证信息安全的第一步,例如客户必须提供正确的 用户名和口 令才能获得服务。然而,每天用户都要登录到多个系统上请求服务,这 样就不得不针对每个系统的认证程序提交不同的用户名和密码。密码的过渡繁殖带 来了 新的问题,如工作效率的下降,密码被非法截获的可能性增加等等。因此寻找 一种只需进行一次身份认证 ( 即通常理解的单点登录s i n g lesi gn一 o n) 就可达到对多 个系统进行访问的跨服务器认证方法成为当今研究的热点。 目 前, 在身 份认 证 上普 遍采 用的 控制 方 法有 : ip地 址 过滤( ip ad d re s s fil t er ing) 、 密 码 控 制 ( p a s s w o rd) 、 代 理服 务 ( p r o x y s e rv e r ) 等。 i p 地 址过 滤虽 然 在技 术上 方 便易行, 安全保障相对容易, 但其限制了用户的物理使用范围, 不支持在ip地址外 的用户和移动用户;密码控制的技术简单,且不受地理位置的限制,但此种方式存 在较大安全隐患,同时,不同机构拥有或管理不同资源使得大幅度增加用户更加困 难; 代理服务方法中代理服务主要有两种:物理代理、应用代理.该方式易与授权 管理系统相结合, 具有提供集成接口 、支持复杂授权等方面的优势,但该方式对于 代理服务器的性能要求很高,从而会增加费用开 销。由 此可见:上述常用的 控制方 法在一定程度上均存在缺陷。 对于许多实际应用系统,比如华北电力大学图书馆文献检索系统用户而言, 每 天需要登录的信息系统很多,用户的频繁登录, 会从一定程度上加重用户的负担. 而对管理员而言, 对每一信息系统进行管理并保证其安全性也是一项繁重的负担. 综合上述几方面的原因,需要建立一种方便灵活的新的身份认证机制来满足用 户、管理员、分布资源和服务提供者的要求。它应该做到满足以下几个方面: 1 . 促进对分布资源的方便有效使用。从用户角度而言,此种新的机制应该基于 通用的网 络环境, 尽量避免特殊技术、设置、地域等操作,操作简单, 稳定可靠。 除此之外, 还应减少自己 的登录次数, 最好能做到通过一次登录, 集中的身份认证, 对所有被授权的网 络资源进行无缝的访问;从资源和服务提供角度而言,它不能过 分增加运行和维护负担, 而且能使自己 方便地设置用户群,支持多种通信协议与使 华北电力大学硕士学位论文 用平台等。 2.保障认证的强度。即要求身份不易伪造和假冒,身份数据不易丢失,从管理 员角 度来说,整个管理系统的安全性能比较高, 管理系统不易受攻击,或在受到攻 击时不出 现重大的安全损害。 3 . 保护用户的隐私。所有与个人有关的信息在不经用户本人允许的情况下,都 应该妥善保管,不能向外界透漏,并且保证用户信息不被外界窃取或者篡改。 华北电力大学硕士学位论文 第二章 相关技术综述 2 . 1安全技术基础 2 . 1 1加密技术 加密技术可以提供机密性,是基本的安全措施,数据交换的各方可根据需要在 信息交换的阶段使用。随着加密的广泛应用,已发 展成为 一门单独的学科:密码学 ( cr yp to grap h y ) 112 ). 它是 实 现安 全 信息 交 换的 基 础。 密 码 学 包括两 个密 切相 关的 分支即密码编码学和密码分析学。密码编码学是研究密码体制的设计,对信息进行 编码、实现隐蔽信息,而密码分析学是研究如何破解被加密信息,恢复信息本来面 目。密码学是对这两门分支学进行综合分析,系统研究的科学,是保护信息安全最 主要的手段之一。 密码学的基本思想是通过变换信息的表示形式来伪装需要保护的 敏感信息, 使 非授权者不能了 解被保护信息的内 容。密码学根据密码体制可分为:对称密码技术 和非对称密码技术。对称密码技术,是采用相同的密钥进行加密和解密运算。而非 对称密码技术,有两个密钥,一个用来加密,一个用来解密113】 。 2 1 . 1 . 1对称密码技术 对称密码体制又称为传统密码体制或私钥密码体制。在该体制中,加密密钥和 解密密钥相同, 或彼此之间容易相互确定。 对称密码体制实现数据加密解密的过程 如图 2 一 1 所示: -一一一 卜 明文 m 图2 一 1 对称密钥体制的加/ 解密过程 图中, e 表示加密算法,d表示解密算法,虚线表示安全信道。消息的发送者 与接收者必须预先通过安全信道共享密钥。 发送者将明文m用密钥k和加密算法e 加密为密文 c,并通过信道 ( 往往是不安全的)传送给接收者,接收者再用密钥 k 和解密算法将密文还原为明文。 华北电力大学硕士学位论文 常 用的 对 称密 钥 加密 算法 有: d e s ( o a ta e n c 仃 p t io n s tan d a rd , 数 据加 密 标 准) 、 3 o e s 和 e s( 胡v anc 斑 e ncr y p t i o n s 怕 n d a r d , 高级数据加密标准), 它们都属于分 组密码。d e s 算法是目 前世界上应用最广泛的加密算法. 它使用 6 4 比 特的密钥, 其中包 括 5 6 个有效密钥比 特和 8 个校验比 特。 3 d e s 是d e s 的一种变体, 它通过执 行三次d e s 算法 ( 加密、 解密、 再加密) 将密钥长度增加到了1 92 比特, 使之能够 抵抗更高强度的强力密文文本攻击。 a e s 是美国政府采用r ij n d ael 算法的一种对称 加密体制。r ij n d ae l 是一个密钥长度可变的密码算法,它与具有固定的密钥长度的 3 d e s 形成对照。 a e s 规范规定了 16字节的分组长度和三种可选的密钥长度: 128 、 19 2 、2 5 6 比特。更长的密钥使得该算法比d e s 的强度要高很多。 对称密码体制的优点是效率高,算法简单,系统开销小,速度l 匕 非对称密码体 制快得多,适合加密大量的数据. 然而, 对称密码体制却存在着3 个主要的 缺点: 1) 对称密 钥加密不能解决可扩展的密钥分发问题。随着网络用户的增加,数 据加密的密钥数量会以将近几何级数的 速度增长,例如网络上有n 个用户,则需要 c 产 = n* ( n 一 1) 12个密钥,众多密钥的分配、共享和管理将会成为一个非常复杂和 困难的问题,并容易带来安全隐患。 2 ) 对称密钥加密不能解决否认问题。 3 ) 对称密钥加密不能解决数据完整性问题。 21 . 1 . 2非对称密码技术 非对称密码体制 ( 又称公钥密码体制) 在消息的传输过程中 采用彼此不同的加 密密钥与解密密钥,并且在考虑时间因素的情况下,由 加密密钥推导出与之相应的 解密密钥不具有可实现性。 非对称密码体制实现数据加密解密的过程如图 2 一所示: 图2 一 2非对称密钥体制的加/ 解密过程 发送者使用加密算法 e 和接收者的公钥 k l , 将明 文加密为密文c , 再通过信道 把密文c传送给接收者,接收者使用解密算法d和自己的私钥 k z 将密文还原为明 文。 公钥密码算法是公钥密码体制的核心。 在公钥密码体制中, r s a算法是公认的 最著名的非对称加密算法之一。 r s a算法的安全性基于大整数素因子分解的困难 9 华北电力大学硕士学位论文 性,该算法所用的公钥和私钥是一对足够大的奇素数的函数。由公钥和密文恢复出 明文的难度与分解两个足够大的奇素数的乘积具有同等的难度, r s a密钥每增加一 个比特, 分解模数的时间大约就增加 1 . 0 35 倍时间。假如时间不断增加,分解一个 1 o 2 4 比特的模数所需的时间就会在3 年3 0 万年之间1141 。 另 一 种 常用 的公 钥 算 法是d s a( o ig i ta l s ig n at u r e a lg o r it h m , 数字 签 名算 法) 。 由美国国家安全署 ( n s a ) 发明,己 经由 美国国 家标准与技术协会 ( n lst ) 收录到 联邦信息处理标准 ( fip s ) 之中, 并作为数字签名的 标准. d s a算法的安全性基于 整数有限域离散对数难题。 这种算法仅适用于数字签名运算 ( 不适用于数据加密) 。 公钥密码的最大优点在于针对密钥管理方法的改进。在公钥密码系统中,加密 密钥是公开的,任何人都可以采用这些公开的加密密钥对 自己准备传输的消息进行 加密。同时,只有正确的接收方才能够用 自己所保管的解密密钥对密文进行解密。 这样,与对称密钥密码体制相比,公钥密码 中的密钥在管理和发送上更为方便而且 安全.但是在算法运行效率方面却又有明显的局限性,主要表现在密钥生成速度和 加 / 解密操作速度都很慢。 21 ,2数字签名 数据加密技术仅仅解决了 数据安全的一个方面,实现信息在网上安全地传输, 防止第三方非法获取真实的数据,但是却不能解决数据的完整性和非否认性问题. 数字 签名结合使用了非对称密钥技术和消息摘要算法,可用作数据完整性检查,防 止否认或抵赖、伪造、篡改、冒充等情况的出现. 2 . 1 . 2 1消.ff.摘要 ( m e s s a g e d i g e s t ) 消息摘要算法 ( 又称散列算法)用于计算消息或者任意数据的压缩表示形式。 这种压缩表示形式通常又称为散列值或散列,是一种与密钥加密不 同的数据转换形 式。它是一种不可逆的算法,把可变长度的数据作为输入,经过一系列转换之后, 输出 固定长度的数据,其中 输出结果称为摘要。散列算法是从输入到输出的一种单 向映射,从输入数据得到输出数据之后,并不能重新从输出数据经过转换而得到输 入数据,而且不能得到关于输入数据任何可以 利用的信息。当输入数据发生微小的 变化时,经过散列算法得到的输出数据将会产生巨 大的变化,即与原来的 输出完全 不同,不可辨别。所产生的散列值的长度应足够长,以便使找到两块具有相同散列 值的数据的机会很小。 两种 最常 用的 摘 要算 法是, s h 一 1 和m d s s h a 一 1 ( s e c u reh a s h a l g o r it h m , 安全散列算法)由 f i p s( 美国联邦信息处理标准 )发布的,可以为消息生成一个 1 6 0 位的摘要。 m d s( me s s a g e d i g e s t a i r o r i t h ms , 信息摘要算法 5 ) 是麻省理工学 华北电力大学硕十学位论文 院计算机科学实验室和 r s a数据安全公司共同努力的结果,它生成 1 2 8 位的摘要。 2 1 2. 2数字签名过程 数字签名的过程是:发件人生成信息的散列 值并进行加密,然后将它与信息本 身一起发送。而收件人解密散列值,并由 接收到的信息产生另外一个散列值,然后 将两个散列值进行比较,如果两者相同,就可以认为信息在传输期间没有发生任何 改变。与签署数据本身相比, 签署数据的 摘要有若干好处。 首先, 数据的摘要通常 都比 数据本身要小.签署或者加密数据的过程很费时间,使用较小的摘要将极大地 提高签署过程的效率,除此之外,较小的摘要将会更容易传输、处理和保存,从而 使性能和效率都得到提升 。 创建数字签名和认证签名的 详细步骤取决于所采用的公钥算法。图2 一 3 是采用 r s a 算法的数字签名过程。 签名者 的私钥 签名者 的公钥 数据一签 名 得到认证 图2 一 3 r s a数字签名 其数字签名的过程如下: ( 1) 发件人将一种散列算法应用于数据,并生成一个消息摘要。 ( 2 )发件人使用私钥将消息摘要转换为数字签名。 ( 3 )发件人将数据、签名及发件人的证书发给收件人。 ( 4 )收件人将该散列算法应用于接收到的数据,并生成一个消息摘要。 ( 5 )收件人使用发件人的公钥和新生成的消息摘要认证签名。 对用户而言这一过程是透明的。散列算法处理数据的速度比公钥算法快得多。 散列数据还缩短了要签名的数据的长度,因而加快了签名过程。当创建或认证签名 时,公钥算法必须且只需加密散列值 ( 128 或 160 位的数据)。 21 .3数字证书 数字签名是基于非对称加密技术的,存在两个明显的问 题: 第一,如何保证公 华北电力大学硕十学位论文 开密钥的持有者是真实的;第二,大规模网络环境下公开密钥的产生、 分发和管理 f , 5 . 由 此, 证书 签 发机 构 ( c a , c e rt i fi c a te a u t h o d ty ) 应 运而 生 ,它 是 提供 身 份认 证的 第三方机构,由 一个或多个用户信任的组织实体构成。 c a核实某个用户的真 实身份以后, 签发一份报文给该用户,以 此作为网 上证明身份的依据。 这个报文称 为数字证书, 包括:唯一标识证书所有者 ( 即贸易方)的名称、唯一标识证书签发 者的 名称、证书所有者的公开密钥、证书签发者的数字签名、证书的有效期及证书 的序列号等。数字证书能够起到标识贸易方的作用,是目前广泛采用的安全技术之 数字证书的形成方式是这样: 公钥加密体系将公钥和公钥的主人名字联系在一 起,再请一个大家都信得过有信誉的公正、权威机构确认,并加上这个权威机构的 签名,就形成了证书。由于证书上有权威机构的签字,所以大家都认为证书上的内 容是可 信任的:又由于证书上有主人的名字等身份信息,别人就很容易地知道公钥 的主人是谁。 目前广泛应用的数字证书是 x.5 09 证书,一份 x.509 证书是一些标准 字段的集合,这些字段包含有关用户或设备及其相应公钥的信息,是一种非常通用 的证书格式, 所有的证书都要符合x5 09 国际标准。 目 前x.5 09有三个不同的版本, x . 5 0 9 v 2 和x.5 09v 3 都是目 前比较新的版本。 x.5 09 的每一版本必须包含下列信息 116: 版 本号 、 序 列号 、 签名 算 法标 识符 、 认 证 机构、 有效 期限 、 主 题信 息、 认证 机 构的数字签名、公钥信息。 2 . 1 .4 p k i 技术及其应用 公共密钥基础设施 ( p ublick eyhi fr as truct u re , 简写为p ki) 是现代密码学的最 重要的发明和进展。p ki 解决了保护信息传递的 机密性、对信息发送与接收人的真 实身份的认证、 对所发出 / 接收信息在事后的不可抵赖性以及保障数据的完整性等问 题 11 51 . p ki 也是x m l 签名和x ml 加密技术的基础。 x ml 签名和x m l加密的核心是 密钥。 密钥用于数字签署文档和认证签名,也用于加密和解密过程。 p kj 受委托管 理与这些密钥的创建、处理和销毁等有关的一切事情。 p ki 保证了以下几点: 1 , 可靠而有效地管理公钥和私钥。 2. 任何时候使用公钥,您都可以 确信关联的私钥确实保存在您使用其公钥的对 方手里。 3. 密钥是 p k i 中至关重要的部分。这一部分讨论不同类型的密钥,以及如何选 择密钥的算法 。 华北电力大学硕十学位论文 关于对称加密技术和非对称加密技术, 前面己 经有详细的叙述,不再 赘述。下 面我们将讨论这两种技术在 x m l 安全中的应用。 我们知道,对称加密技术的缺陷是共享密钥交换难以处理,而非对称密钥可以 解决这个问 题。尽管对称加密技术有自 身的 缺陷, 但它的最大的 优点是加密解密的 速度快,使用共享密钥加密消息要比使用非对称密钥加密快得多 1 61 。 非对称算法用于生成成对的密钥,这是p kj 的基础。 在密钥对中,私钥只被拥 有密钥对的实体使用。消息的发送方使用接收方的公钥加密消息,预期的接收者使 用相应的私钥解密消息并阅读消息。 而公钥可以 对一般公众公开,这样就能解决共 享密钥交换的问 题。非对称算法的一个缺点是加密消息要比 对称密钥花费更长的时 间,而且加密时间直接与消息的长短成正比。 结合对称算法和非对称算法各自 的优缺点,实际应用中一般同时使用这两种算 法:使用公钥和私钥只加密共享密钥而不是整个消息可以解决加密时间长的问题, 然后再使用共享密钥加密其他的消息。 在p k i 中使用非对称算法的密钥对的工作原理如下: 假定有两个实体一实体a 和实体b 。实体a已经向实体b发送了 一条加密的消息.实体a取得了实体b的 公钥并用它加密消息。因此加密的消息只能使用对应的私钥解密,而私钥在实体 b 手中。这就保证了任何人都能使用接收方的公钥加密消息,但只有接收方 ( 拥有对 应的 私 钥的 一 方) 能 够 解密 117 ) 。 类似地, 数字签名则是消息发送方使用自己的私钥签署消息。 接收方可以使用 发送方的公钥认证数字签名确认消息的真实性。 如果已知的发送方公钥能够认证数 字签名,就认为消息是来自声明的发送方118 . 2 . zs am l s a ml 主要使为了解决 w e b 服务安全体系中的身份认证多次使用的问题, 能为 用户提供跨越异种网络和平台的单点登录的认证和授权, 尤其是在web服务的系统 和流程合作的 基础上的,允许多个系统共同分享安全问题和身份认证方面的信息, 即身份认证的信息可以在多个服务中传递,从而免除了多次认证的麻烦, 进而提高 了 安 全 化网 络 服务 的 性能 119 1 。 s a m l 并不 定义 任 何新 的 认证 和 授权 机制 或 方 法, 只 定义用于不同域的服务间安全信息传输的文档结构,确切地说,它是一种语言, 进 行单一的x m l 描述,允许不同安全系统产生的信

温馨提示

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

评论

0/150

提交评论