(计算机应用技术专业论文)身份认证与共享保密通信协议的研究与实现.pdf_第1页
(计算机应用技术专业论文)身份认证与共享保密通信协议的研究与实现.pdf_第2页
(计算机应用技术专业论文)身份认证与共享保密通信协议的研究与实现.pdf_第3页
(计算机应用技术专业论文)身份认证与共享保密通信协议的研究与实现.pdf_第4页
(计算机应用技术专业论文)身份认证与共享保密通信协议的研究与实现.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

(计算机应用技术专业论文)身份认证与共享保密通信协议的研究与实现.pdf.pdf 免费下载

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

文档简介

身份认证与共享保密通信协议的研究与实现 摘要 随着计算机网络迅速地发展,网络安全问题越来越受到重视。安全通信是 网络安全领域的重要内容,安全技术进一步研究与发展具有重要的理论研究意 义和广泛的应用前景。 本文介绍了网络安全的主要研究内容和研究现状,分析了现有的典型安全 技术和安全协议,探讨了身份认证与共享密钥生成协议的相关内容,在此基础 上提出了一种新的身份认证与会话密钥生成的协议,该协议能实现公共网络中 用户问安全有效的通信。 本文重点对密码算法与认证协议这一核心问题进行了探讨与研究,其主要 内容和特点包括如下几个方面: 1 研究了公钥密码体制、身份认证和数字签名等技术,深入分析了典型的 网络安全协议,并提出了一种新的身份认证的协议。 2 在探讨了密钥分配与密钥交换技术的基础上给出了一种会话密钥的生成 方法,该方法结合d i m e h e l l m a n 密钥交换技术和单向散列函数以及公钥证书 等安全技术。 3 协议中身份认证和共享密钥的生成由通信双方通过协商完成,不需要第 三方的参与,协议执行效率高。生成的会话密钥具有新鲜性,即能保证“一次 一密”的要求。 4 运用b a n 类逻辑的分析工具s v 0 逻辑对本文提出的身份认证和会话 密钥生成协议进行形式化的逻辑分析,从而在理论上证明协议的安全性。 关键字:安全协议,身份认证,保密通信,会话密钥,s v o 逻辑。 r e s e a r c ha n dr e a i i z a t i o no nt h ep r o t o c o io fa u t h e n t i c a t i o na n d s h a r e s e c r e c yc o m m u n i c a t i o n a b s t r a c t w i t ht h e d e v e l o p m e n to fn e t w o t k ,p e o p l eb e g i nt op a ym o r e a n dm o r e a t t e n t i o nt ot h en e t w o r k ss e c u r i t y s e c u r ec o m m u n i c a t i o ni s b e c o m i n go n eo f t h e m o s ti m p o r t a n tp a r t so fn e t w o r k s s e c u r i t y i t i s s i g n i f i c a n tt o r e s e a r c ho nt h e s e c u r et e c h n o l o g yf u r t h e r t h i st h e s i si n t r o d u c e st h em a i nc o n t e n t sa n dt h es i t u a t i o no fn e t w o r k ss e c u r i t y a n da n a l y z e st h es e c u r et e c h n o l o g i e sa n ds e c u r ep r o t o c o l s ,a n da l s od i s c u s s e st h e t e c h n o l o g i e sa b o u ta u t h e n t i c a t i o na i l ds h a r e - k e yc r e a t i o n 0 nt h eb a s i so ft h e s e ,a n e w p r o t o c 0 1o na u t h e n t i c a t i o na n ds h a r e k e yc r e a t i o ni sp u tf o r w a r d t h ep r o t o c o l c a ne n s u r et h eu s e r st oc o m m u n i c a t et h r o u g ht h ep u b l i cn e t w o r ki ns e c u r “y t h ea u t h o rm a k e sr e s e a r c ha n dd i s c u s s i o n s l b o u t t h e c r y p t o g r a m m i c a r i t h m e t i ca n dm ep r o t o c o lo fa u t h e n t i c a t i o ni nd e t a i l t h em a i nc o n t e n t sa n d c h a r a c t e r i s t i ca st h ef o l l o w i n g : 1 l e a r n i n g t h e t e c h n o l o g y 0 fp u b l i c - k e y c r y p t o g r a m , a u t h e n t i c a t i o n ,d i g i t a l s i g n a t u r e ,a n da n a l y z i n gt h et y p i c a ln e t w o r k ss e c u r i t yp r o t o c 0 1 o nt h eb a s i so f t h e s e ,d e s i g n i n ga n e wm e t h o do fa u t h e n t i c a t i o n 2 o nt h eb a s i so ft h e t e c h n o l o g y a b o u t k e y - a s s i g n m e n t a n dk e y e x c h a n g e , d e s i g n i n g an e wm e t h o do f s h 盯e - k e yc r e a t i o n , w h i c hc o m b i n e st h e d i m e h e l l m 锄k e y e x c h a n g e h a s hf u n c t i o na n d t h ep u b l i c - k e yc e n i f i c a t i o n 3 t h ep r o t o c 0 1c a nf u l f i l lt h ea u t h e n t i c a t i o nd e p e n d a b l ea n ds e l f - g o v e r n e d ,a n d h a v en ou s ef o ra n y o n ee l s e sh e l p t h en e ws h a r e k e yi s f t e s ha n dh a st h e c h a r a c t e r i s t i co f o n et i m eo n ek e y ” 4 u s i n ga n a l y t i c a lt o o l s v ol o g i ct oa n a l y z et h ea u t h e n t i c a t i o na n ds h a r e 。k e y c r e a t i o np r o t o c o l ,a n dp r o v et h a tt h ep r o t o c o li ss e c u r ei nl o g i c k e y w o r d :s e c u r i t y p r o t o c o l ,a u t h e n t i c a t i o n ,s e c r e c y c o m m u n i c a t i o n s h a r e - k e y ,s v ol o g i c 合肥工业大学 本论文经答辩委员会全体委员审查,确认符合合肥工业大学 硕士学位论文质量要求。 答辩委员会签名 缮痖 必 矿 易1 照瘦 j 插图清单 图1 1 信息系统的四方模型2 图1 2 网络安全模型3 图3 1 协议流程图2 0 图4 1 原型系统通信框架2 4 图4 2 大素数生成算法流程图2 6 图4 3 字节流套接字函数在通信中的调用流程2 8 图4 4 乘积变换中的一次迭代3 0 图4 5 加密模块的流程图3 2 图4 6 用户a 的密钥生成界面3 4 图4 7 用户a 成功接收用户证书界面3 4 图4 8 用户a 生成的会话密钥3 5 图4 9 用户a 协议执行认证失败3 5 图4 一1 0 用户a 成功认证了用户b 3 5 图4 一1 1 用户b 用新鲜的会话密钥与a 进行密聊3 6 表格清单 表5 1b a n 逻辑的语法和语义3 7 表5 2s v o 逻辑的符号及含义说明4 3 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究二【:作及取得的研究 成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已 经发表或撰写过的研究成果,也不包含为获得 盒胆王些盘堂或其他教育机 构的学位或证书而使用过的材料。与我同工作的同志对本研究所做的任何贡献均 已在论文中作了明确的说明并表示谢意。 学位论文作者签名:羡舷本签字晚撇和扩日 学位论文版权使用授权书 本学位论文作者完全了解金胆至业盘堂有关保留、使用学位论文的规定, 有权保留并向国家有关部门或机构送交论文的复印件和磁盘允许论文被查阅和借 阅。本人授权合肥工业大学可以将学位论文的全部或部分内容编入有关数据库进 行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名 彦、兹,聋 l 导师豁fl 幼钆 签字日期:坶4 月9 日签字日期:朋年4 月8 日 学位论文作者毕业后去向: 工作单位: 通讯地址 电话 邮编 致谢 历时近三年的研究生阶段的学习终于以这篇尚不成熟的论文做了一个结 尾,回顾这三年的学习生活,感触良多,其中的酸甜苦辣是我终身的财富。在 此,只能以这种致谢的方式,表达我对周围所有关心我、帮助我的家人、朋友、 同学们的由衷感谢! 感谢我的导师侯整风教授! 是他领我进入了人生的一个崭新的殿堂,他对 我的关怀和孜孜教诲令我受益匪浅。他严谨的治学态度、谦虚的为人处世、渊 博的学术知识、敏锐的洞察能力值得我一辈子学习。侯老师在学术上和生活上 教会了我无数东西,他脚踏实地的工作作风,精益求精的研究态度,顽强不息 的攻关精神教会了我今后应该如何工作。在研究工作之余,侯老师还非常关怀 我们的生活,教会了我许多人生真谛。 三年来,伴我学习和成长的除了导师以外,实验室同学也给了我极大的帮 助! 感谢师兄刘项洋和杨明伟在我刚入研究生阶段时给我的帮助和指点! 感谢 刘洋宇、杨帆、胡忠辉、符茂盛,三年来我们互相帮助,共同去学习和掌握研 究领域中的一个个问题,感谢他们对我的帮助。感谢所有的师弟师妹们对我的 关心和鼓励! 我还要感谢我的家人和我的男友,三年来你们的支持和鼓励是我不断从失 败中站起来的坚强动力,在我遭遇挫折和困难时,是你们在我背后给了我无穷 的动力。感谢我所有的亲人! 最后,感谢所有关心我、帮助我的老师和同学! 作者吴燕萍 2 0 0 5 年4 月 第一章绪论 网络技术日新月异的发展推动了新经济时代的到来和电子商务的蓬勃发 展,然而网络就像一柄“双刃剑”,人们在享受网络带来的便捷和高效的同时, 不得不面对同样“便捷”和“高效”的网上作案手段。近年来,安全问题已成 为影响网络发展的重要因素。从安全立法到安全技术,人们正在不懈地努力寻 找解决问题的方法。 1 1 网络安全概述 1 1 1 网络安全的定义 本质上讲,网络安全就是网络通信中的信息安全,是指网络系统中的软、 硬件及其数据受保护,系统能抵抗外界各种恶意的攻击,并能提供连续可靠的 网络服务。广义上讲,凡是涉及到网络中信息的保密性、完整性、可靠性、真 实性、可控性等相关的技术和理论都属于网络安全研究的范围。网络安全不仅 涉及技术方面的内容,也包括管理方面的问题,两者互相补充,缺一不可。技 术方面侧重于防范外部非法用户的攻击,管理方面则侧熏于内部人为因素的管 理。如何有效地保证系统中数据的安全和系统的稳定已成为所有计算机网络应 用必须考虑和亟待解决的问题。网络安全主要包括以下几层含义: 1 运行系统安全:即保证信息处理和传输系统的安全。它侧重于保证系统 的正常运行,避免因系统崩溃或损坏而对系统存储、处理和传输的信息造成破 坏和损失。 2 网络上系统信息的安全:它包括用户口令鉴别,用户访问权限控制,数 据存取权限,方式控制,安全审计,安全问题跟踪,计算机病毒防治,数据及 通信加密等。 3 网络上信息传播安全:即信息传播后的安全,包括信息过滤等。它侧重 于防止和控制有害信息进行传播后的危害,避免公用网络中大量自由传输的信 息失控。 4 网络上信息内容的安全:它侧重于保护信息的保密性、真实性和完整性, 避免攻击者利用系统的安全漏洞进行窃听、冒充、诈骗等违法行为。本质上是 保护用户的利益和隐私。 1 1 2 网络安全的安全层次与安全模型 一、安全层次 国际标准化组织在开放系统互连标准中定义了7 个层次的网络参考模型, 它们分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。 从安全角度来看,每层都提供一定的安全措施,并且不同层上的安全措施是不 同的。例如,数据链路层负责建立点到点的通信,网络层负责寻径,传输层负 责建立端到端的通信。 在物理层,通过在通信线路上使用某些安全技术,可以基本杜绝搭线偷听 行为。 在数据链路层,点对点的链路采用通信保密机制进行信息的加解密,在信 息离开一台机器前进行加密处理,下一个结点收到该信息后先进行解密,转发 前再进行加密处理。但这种方法不能适应需要经过多个路由器的通信信道,因 此不适用i n t o r n e t 网络环境。 在网络层,使用防火墙技术处理信息在内外网络边界上的流向,以此来确 定来自哪些地址的信息可以或者禁止访问哪些目的地址的主机。 在传输层,连接可以被端到端的加密,即实现进程到进程的加密。 应用层的安全措施主要是用户的身份鉴别和安全的通信信道的建立。有很 多针对具体应用的安全方案,它们能有效地解决诸如电子邮件、h t t p 等特定 应用的安全问题,能够提供包括身份认证、不可否认、数据保密、数据完整性 检验以及访问控制等功能,但是应用层并没有一个统一的安全方案。 二、安全模型 人类最初的信息系统,其通信模型由发送者和接收者两方组成。在此模型 下研究和解决的主要问题是信源编码,信道编码,发送设备,接收设备以及信 道特性。由于战争和竞争存在窃密与反窃密的斗争,因而信息系统模型中出现 了第三方一敌人。在三方模型下,人们还要研究如何运用密码来防止信息在信 道上被窃取和破译,以保证敏感信息不被泄漏至非授权者。现代信息系统已不 是政府、军队等部门专用,社会公众也享受到了网络带来的高效和便捷,因此 在模型系统中又引进了第四方一监控管理者。信息系统的模型因而发展为四方 模型,如图1 1 所示。 詈 一:扣圃 信息在传输过程中,会面临各种不同的安全威胁和攻击,如通信被中断、 数据被截获、信息被篡改等等。因此,通信用户必须采取相应的安全措施以防 2 止攻击者对信息的攻击和破坏。 图l 一2 所示的安全模型是对非安全通信信道上的信息流进行的建模。在此, 通信用户可以采取以下两种安全机制: 将需传送的信息进行与安全相关的转换。可以是消息的加解密和以消息 内容为基础的验证代码,用以验证发送方的身份。 两个通信用户共享不希望任何第三方知道的秘密信息,如密钥等。 一1 一 道雠l黼 篡= ! 口告口二 为实现数据安全传输,一般需要一个可信任的第三方参与。例如,由可信 任的第三方负责向两个通信用户发放秘密消息,或者在两个通信用户就信息传 送发生争端时进行裁决。此安全模型指出了达到特定安全任务所需的四个基本 要素: 与安全相关的转换算法的设计。 生成算法所需的保密信息。 保密信息的安全分发和管理。 用户间通信所必须的安全协议的设计。 然而,并非所有的与安全相关的情形都可以用上述安全模型来描述。比如, 目前万维网的安全模型就应另当别论。万维网的通信模型采用服务器客户机端 方式实现,一般客户端向服务器首先发出请求信息,然后服务器对客户端进行 身份认证,根据客户端的相应权限来为其提供特定的服务。这种模型的重点在 于如何有效的保护客户端对服务器的安全访问以及如何有效的保护服务器的访 问安全性。 万维网的这种安全模型同现实当中的黑客入侵相吻合,客户端本身就可以 是攻击者或者敌人,他可以利用大量的网络攻击技术来对服务器系统构成安全 威胁,利用网络服务的安全缺陷、通信协议的安全缺陷、应用程序或者网络设 备本身的安全漏洞来对服务器进行攻击。 为了有效保护信息系统中资源的安全以及对付各种网络攻击,在安全模型 中加入了守卫功能。守卫可以利用安全技术对信息流进行控制,如对客户端进 行身份认证、对客户端向服务器提出的请求信息进行过滤、对服务器的资源进 行检查审计等等,从而抵御大部分的网络攻击。 1 1 3 安全技术的研究内容 计算机安全技术的研究内容包括:加解密算法、密码分析、密钥管理、操 作系统安全、数据库安全、通信网络安全、病毒防御、访问控制、防火墙、入 侵检测等技术。下面分别作一简单的介绍: 1 数据加解密算法:加解密技术是保证信息系统安全的一个非常重要的手 段。它的核心思想是,在不安全的网络中,将需要传送的重要信息进行加密处 理即将其通过某种方式变换成无法识别的密文。加密技术主要有两个用途, 是对信息进行加密,另一个是对信息进行数字签名。如果既需要保密又希望 签名,则可以将上述两者结合起来,即发送者先用自己的私钥签名,再用接收 者的公钥加密,然后再发给对方。在信息传输中,加密技术是一种高效而又灵 活的安全手段。 2 密钥管理:密钥是由数字、字母或是特殊符号组成的字符串,它可以控 制加解密的过程。密码算法的安全强度,在很大程度上信赖于密钥的安全保护。 密钥管理是一门综合性技术,它涉及到密钥的产生、分配、存储、修改以及销 毁的全过程,同时还与密钥的行政管理制度与人员的素质密切相关。一个完整 的密码系统由算法、密文、密钥组成,密码系统的安全性取决于密钥的保护。 3 密码分析:密码分析又称为密码破译。它是一种在不知道密钥的情况下, 通过获取密文而恢复明文的科学。它是信息对抗的重要形式,成功的密码分析 可以发现密码体制上的弱点,并能直接破译密文和密钥。 4 计算机系统安全:使用符合安全标准的计算机系统,是维护信息系统安 全的技术保障。计算机系统安全包括:设备安全、信息安全和服务安全。设备 安全主要是保护系统软硬件不被破坏和窃取;信息安全的重点是保护系统内信 息的机密性、真实性和完整性:服务安全的主要内容是防止系统软硬设备出故 障避免系统服务和功能的丧失,其安全内容包括:操作系统安金、数据库安 全和网络安全。 5 病毒防治技术:它总是在与病毒的较量中得到发展的。总的来讲,计算 机病毒的防治技术分成四个方面,即防御、检测、消除和免疫。病毒预防技术 是指通过一定的技术手段防止计算机病毒对系统进行传染和破坏,它是一种特 征判定技术,也是一种行为规则的判定技术。计算机病毒的预防是通过防止计 算机病毒进入系统内存或阻止计算机病毒对磁盘的操作,来达到保护系统的目 的。病毒检测技术是通过一定的技术手段来判断计算机病毒的一种技术。病毒 的消除技术是计算机病毒检测技术发展的必然结果,是病毒传染程序的一种逆 过程。安全、稳定的计算机病毒清除工作完全基于准确、可靠的病毒检测工作。 4 计算机病毒的免疫技术目前还没有很大的发展,某些反病毒程序使用给可执行 程序增加保护性外壳的方法,在一定程度上起到了保护作用。 1 2 认证与共享保密通信协议的国内外研究现状 认证与共享保密通信技术用于实现网络中通信用户和通信信息的安全认 证,即实现对用户( 通信者) 的认证和对客体( 消息) 的认证。对用户的认证 通过身份认证来实现,对客体的认证则采用数字签名的方式来保证。 身份认证技术在信息安全领域处于及其重要的地位,是其它安全机制的基 础。只有实现了有效的身份认证,才能保证访问控制、安全审计、入侵防范等 安全机制的有效实施。随着电子商务、网上支付、网上银行等业务的相继开展, 帐户被盗用的事件频繁发生,用户对于使用网络进行商务和支付缺乏安全感, 使得网络在这些领域很难普及和发展。安全的身份认证技术是解决这些问题的 关键。目前主要有如下几种身份认证机制: “一次一密”机制 “一次一密”机制是指用户每次使用不同的密码口令登录系统的安全机制。 它主要有两种实现方式:一种是采用请求,应答方式( c h a l l e n g e r e s p o n s e ) 。当 用户登录时系统随机提示一条信息,用户根据这一信息连同其个人化信息共同 产生一个口令字,并使用这个口令字完成一次登录过程,或者用户对这一条信 息进行数字签名并发送给身份认证服务器( a s ) 进行鉴别;另一种方法是采用时 钟同步机制,即根据同步时钟信息连同其个人化信息共同产生一个口令字。这 两种方式均需要身份认证服务器也产生与用户端相同的口令字( 或检验用户签 名) 来验证用户身份。 k e r b e r o s 认证系统 k e r b e r o s 是一项鉴别服务。它主要解决如下的问题:在一个公开的分布式 网络中,工作站上的用户需要访问分布在网络中的各个服务器时,服务器能够 埘访问者进行身份认证与访问授权,以保护服务器资源的安全。但实际上,工 作站无法确切地向服务器证实访问用户的身份,也就是说对服务器而言工作站 是不可信的,特别是可能存在如下几种威胁:攻击者伪装成其他工作站用户来 访问特定的工作站;攻击者改动某一工作站的网络地址,从而伪装成被改动过 地址的工作站向服务器发出请求,服务器对此毫无察觉;攻击者窃取交互信息, 使用重放攻击成功进入服务器等等。 在这样的网络环境中,为减轻服务器的负担,k e r b e r o s 协议把身份认证的 任务集中在身份认证服务器( + a s ) 上,并在身份认证服务器中保存了所有用户 的口令。另外,为了使用户输入口令的次数最少,在k e r b e r o s 认证体制中,还 包含了一个授权服务器t g s ( t i c k e t g r a n t i n gs e r v e r ) ,a s 和t g s 同驻于一 台主机上。当用户欲登录服务器系统时,系统不传送用户的口令,而是由a s 从用户口令中产生一个密钥k u a s ,同时传送给用户u 一个访问t g s 的门票t t g s 以及用k u a s 加密的密钥k u t g s 。用户u 可以根据自己的口令字产生密钥k u s , 并解密获得密钥k u t g s 。当要向服务器请求某项服务时,用户u 把t t g s 连同其 个人化信息发送给授权服务器t g s ,t g s 对消息进行认证后,返还给用户u 一 个允许访问某个服务器的门票t s 和用k u t o s 加密的密钥k u s 。用户u 将获得 的t s 连同其个人化信息发送给服务器,服务器对信息进行认证后,给用户提供 相关的服务。 但是,k e r b e r o s 认证机制也存在一些安全隐患。例如攻击者可以采用离线 方式攻击用户口令。如果用户口令被破获,系统将处于不安全状态。又如,如 果系统的登录程序被替换,则用户的口令也被窃取等等。g g a s k e l l 和m l o o i 将智能卡引入k e r b e r o s 认证机制中,提供了更高的安全性能。 双因素身份认证技术 传统的身份认证方法,普遍使用用户知晓的秘密信息进行用户身份的确认。 这种方法一般采用“用户名+ 口令”来辨别用户的身份。而用户名一般是公开 的,因此口令就成为验证身份的关键因素。目前应用最广泛的静态口令技术是 在一段时间内固定不变,重复使用的。这种认证方式存在很多问题,攻击者可 以通过多种方式来获取合法用户的口令。 为解决静态口令存在的诸多安全问题,人们提出了双因素身份认证机制, 即在静态密码的基础上,增加一个物理因素,从而构成一个他人无法复制和识 破的安全密码。生物特征和智能卡是最常见的物理因素,前者因技术和设备的 复杂性而只应用于某些特殊的领域;后者是目前应用的最广泛的双因素身份验 证机制,又称为动态口令验证机制。智能卡技术在用户登录过程中加入不确定 的因素来生成用户口令,以一次性动态口令登录,使得每次登录的认证信息都 不相同。验证系统接收到登录口令后进行验算即可确认用户的合法性,从而提 高登录过程的安全性。 双因素认证系统要求用户在接入之前必须持有物理令牌,同时必须知道自 己的p i n 码。使用特定加密算法生成动态密码的方法有效的消除了风险。这个 过程产生的一次性口令无法破解,丢失的密码( 令牌挂失) 或密码的重复使用 都会被禁止。双因素认证系统可以唯一的确认用户,而且不要求用户记忆一个 新的口令。同时,采用物理因素有如下优点:动态的一次性口令,无法推测、 无法破解、无法重复使用、无法共享;唯一的序列码、唯一的密钥对应唯一的 用户;无效的用户无法通过认证。 数字签名技术是网络应用中身份认证、数据完整性保护和反拒认的基础。 目前对数字签名的研究已经非常深入。根据不同的应用,出现了许多专用的数 字签名方案。比如,在电子选举、电子支付系统中有广泛应用的盲数字签名( b i n d d i g i t a ls i g n a t u r e ) 【2 1 ,以及失败一终止数字签名( f a i l s t o pd i 西t a ls i g n a t u r e ) 1 3 】1 4 1 , 6 不可否认数字签名( u n d e n i a b i ed i g i t a l s i g n a t u r e ) 1 5 】【6 j ,指定的确定人签名 ( d e s i g n a t e dc o n f i r m e rs i g n a t u r e ) ,代理签名( p r o x yd i g i t a ls i g n a t u r e ) f 8 1 以及 群签名技术( g r o u ps i g n a t u r e ) 【9 1 2 】等等。 密钥交换和密钥协商是保密通信的核心问题之一。密钥分配协议分为两类: 一类是密钥由一个可信任的第三方单独产生并分配给各个通信用户,用户不参 与密钥的生成和分配;另一类是使用密钥生成协议,即不需要可信任的第三方, 会话密钥由通信各方共同协商产生。这种方法难度较大,但可供研究的内容比 较多,目前对密钥生成和分配问题主要集中在这一类中。 1 3 本文主要研究内容与思路 1 3 1 主要研究内容 信息的安全性主要有两方面的含义,即信息的保密性和认证性。认证主要 包括身份认证、数字签名、公钥证书以及电子证据与反拒认机制等。身份认证 在安全系统中的地位极其重要,是最基本的安全服务。所以,身份认证技术的 研究至关重要。 通信保密是信息安全技术的另一个重要方面。秘密通信的核心问题是如何 有效、安全地分配会话密钥。密钥分配协议分为两类:一类是密钥由可信任的 第三方单独产生并分配给各个通信用户【l3 1 ,特点是协议设计简单,但不足之处 是过分依赖可信任的第三方,可能给密钥分配方带来计算量和通信量过大的“瓶 颈”问题:另一类是密钥协商协议,即不需要可信任的第三方,会话密钥由通 信各方共同协商产生。这种方法难度较大,但研究的内容比较丰富,目前,许 多研究均集中在这一方面【1 4 “”。 现有的研究表明安全协议的分析是一项非常复杂的工作。目前,仍没有一 套完善的安全协议的分析方法。一般,协议和系统中的漏洞常常与直觉相反, 所以采用非形式化的方法进行协议分析时容易导致错误。而形式化方法能较好 的分析密钥协议的安全性。目前,主要的形式化方法有以下几种:基于通信状 态机模型的研究方法、基于知识与信念推理的模态逻辑方法、基于知识推理的 代数方法等。其中,基于知识和信念推理的模态逻辑系统能较好地分析协议的 安全性。这类方法中,最著名的就是b a n 类逻辑。本文将对b a n 类逻辑中s v o 逻辑进行研究,并运用s v o 推理逻辑来推理证明文中提出的身份认证和通信保 密协议的安全性。 本文深入探讨了身份认证与密钥生成相关技术,在此基础上提出了一种新 的身份认证与密钥生成协议,并通过编程实现了协议的原型系统,最后采用形 式化方法证明了该协议的安全性。 1 3 2 研究思路与论文结构 论文共分为六章。 第一章介绍了网络安全的相关概念、内容以及安全认证和通信保密协议的 背景、国内外的研究现状,并给出本文的研究思路和研究内容。 第二章介绍了本文涉及的相关知识和技术,其中包括身份认证技术、密钥 交换和密钥生成技术、单向散列函数等内容。 第三章首先分析了几则典型的身份认证与密钥生成协议。它们包括a ( o ) 协 议、o t w a y r e e s 协议和d e n n i n g s a c c o 协议。在此基础上提出了一种新的身 份认证与密钥生成协议,给出了协议的设计思想和设计过程,并对协议的特点 与安全性进行了分析。 第四章在前一章的基础上设计并实现了协议的原型系统。其中主要包括了 系统的总体设计方案、系统选用的平台、实现过程、系统的运行等内容,并重 点解决了关键技术的实现和加解密算法的选择。 第五章在第三章协议设计的基础上运用形式化分析方法证明了本文提出的 这个协议的安全性。 第六章总结论文所做的工作和有关的结论,并提出了需要进一步完善和深 入研究的问题。 第二章相关技术介绍 2 1 身份认证技术 2 1 1 基本概念 1 认证的概念 认证是信息安全理论的一个重要概念。在信息系统中,所有的信息都通过 网络进行交换。设a 与b 进行通信时,a 发给b 消息x ,那么b 收到x 之后, 首先需要证实a 的真实性( 主体认证或身份认证) 和a 所声称的x 的真实性 ( 客体认证或消息认证) 。比如用户在访问安全系统之前,首先经过身份认证系 统识别身份,然后访问监控器根据用户的身份和授权数据库决定用户是否能够 访问某个资源,授权数据库由安全管理员按照需要进行配置。又如,当主机收 到一个重要消息时,也要对该消息的完攘性和真实性进行认证。实际上认证技 术已经成为访问控制的基础,是确认交易信任的重要手段。 下面给出关于认证的几则定义:j 定义1 :认证就是对被认证对象某种属性真实性的确认和证明。 定义2 :当被认证的对象是人或机构时,被认证的属性是其“身份”,称为 “身份”认证。 定义3 :当被认证的对象是一则消息时,被认证的属性分为:是否被篡改, 称为消息完整性认证;是否被泄露,称为消息机密性认证;是否过时,称为消 息新鲜性认证:是否来自正确的源,称为消息源认证;是否到达目标地,称为 消息目的地认证:是否可读,称为消息可读性认证。 定义4 :如果一个消息的来源和目的地都得到确认,则称该消息为双向可 追溯的。 定义5 :如果一个消息的可读性、完整性、新鲜性、机密性和双向追溯性 得到认证,则称该消息为安全的。 在一个网络信息系统中,认证往往是通过密码协议来实现的。密码协议又 称为安全协议。1 9 7 8 年r n e e d h a m 和m s c h r o e d e r 提出了第一个用于计算机网 络的密码协议。随着网络技术的不断发展,当初提出的密码协议在今天看来其 中相当一部分协议存在着安全漏洞。如何发现并弥补协议的安全漏洞,从而增 强协议的安全性,有着十分重要的意义。近2 0 年来,关于密码协议安全性的研 究一直是信息安全领域的热点之一。 2 身份认证 身份认证是在通信用户之间进行的,是一个用户对另一个用户进行识别 ( 1 d e n t i f y ) 以证明其身份( p r o o f o f i d e n t i t y ) 的过程。 在一个信息系统中用户问的认证与日常生活中的认证方法基本相同。一个 人首先申请并办理证件,如个人身份证或护照,证件中附有本人照片、指纹等 9 个人特性,证件要有防伪措施,验证一般是当面进行。在网络中,证件称i d 卡,i d 卡中记有密钥变量等逻辑参数,这些逻辑参数用个人口令进行保护。之 所以用简单的逻辑参数作为个人的特征,是因为它是网络中进行验证的最简便、 最经济的方法。近年来美军在“信息技术管理十年战略规划”中,将个人身份 认证技术作为信息安全的重点可见网络上身份认证技术的重要性。 2 1 2 身份认证的方式 一般来说,身份认证有三种方式:根据约定的口令进行身份认证【”也2 】;采 用智能卡进行身份认证1 23 2 6 j 和基于生物特征的方式。 一、基于口令的认证 这是最普遍最简单的身份认证方式。系统事先保存每个用户的用户名和口 令,口令通常经加密后保存到口令文件中。系统根据用户输入的信息来判断用 户身份的合法性。这种方法简单但不安全,用户口令一般比较容易受到口令猜 测攻击,如果口令文件被窃,还容易受到字典式攻击。 对基于口令的用户身份认证有各种改进的方案。例如采用一次性口令机制。 用户登录系统时系统随机提示一条信息,用户根据这一信息连同其个人化信息 共同产生一个口令字。这种方案要求系统也同时产生与用户相同的口令字进行 用户身份的验证。 基于口令认证的优点是不需要附加硬件设备,容易实现。但它的缺点也非 常明显:用户与服务器之间要经过数次通信才能完成一次识别过程。另外,虽 然服务器端不直接存放用户明文口令,但仍需要存放与用户口令相关的一些信 息,给系统的安全性带来了一定的隐患。 二、基于智能卡的认证 基于智能卡的身份识别方法,其原理是在智能卡上存储用户的个人秘密信 息。进行认证时,用户首先输入身份识别码p i n ,智能卡认证p i n 码确认后, 计算机就从智能卡中读取用户的秘密信息并传递到远程服务器。服务器根据收 到的信息对用户的身份进行认证。这种认证方式是基于智能卡的物理安全性的, 智能卡难以伪造,也难以直接读出其中的数据。 i 、基于生物特征的认证 这种认证方式是根据人的生理特征如指纹、脸型、声音等特性来进行身份 认证【2 ”,它需要使用诸如指纹阅读器,脸型扫描器,语音阅读器等价格比较昂 贵的硬件设备。同时,要求验证双方通过直接而非网络的方式交互,所以该类 方法并不适用于在i n t e r n e t 或者无线应用等分布式的网络环境中。 1 0 2 1 3 认证协议的设计原则 认证协议的三条基本设计准则 一:报文清晰独立性准则 准则1 】每条报文本身都要能够表达它想表达的含义。也就是说,一条报文 的解释应该只依赖于其本身的内容。就算找不到合适的形式化方法将报文的内 容表示出来,至少也要用自然语言将报文的内容直接的描述出来。 因为一个协议可以在两个用户间多次执行( 甚至是同时或几乎同时执行) , 也可以在一个用户与多个用户间同时执行,加之协议一个轮次的执行可能会因 各种原因而发生中断,并且送出的报文也可能在传输中丢失、延误,所以同一 协议各轮次的报文或不同协议间的报文,完全可能混在一起,难以辨认它们的 顺序。这就使得攻击者可以对报文进行截获、熏发、替换,从而形成对协议的 攻击。 二:报文前提清晰性准则 准则2 】与每条报文处理相关的条件,都要清楚地加以说明,以便他人检验、 分析或参考该协议时能重新衡量这些条件的合理性,以决定是否采用它们。 对于待处理的报文,仅仅理解其内容是不够的。要处理一条报文,还必须 检验与其相关的条件是否成立。这些条件一般就是利用非形式化语言给出的各 种信任假设。 这种信任假设可能是不合适的,但绝对不能是假的。比如说:如果某人认 为会话密钥最好由可信任的服务器生成,而不要由会话中的某一方生成,那么 他就极有可能不愿意使用大嘴蛙协议( t h ew i d e m o u t h e df r o gp r o t o c 0 1 ) 。 三:主体身份清晰性准则 f 准则3 】如果某一主体的身份对于报文的含义很重要,那么就必须在该报文 中进行明确的表示。 相关主体名字在报文中的表示可以是显式的,也可以是隐式的。隐式的表 示是指:报文中没有明显地提及主体的身份,但可以从所使用的密钥或某些数 据推断出该主体的身份。需要注意的是,如果从这些信息中无法推断出主体身 份,那么省略主体就可能产生严重的后果。 2 2 密钥交换和密钥生成技术 2 2 1 基本概念 在网络中保密通信的安全性不仅取决于加密算法本身,更决定于安全的密 钥分配方案。加密算法的研究现已相对较为成熟【2 3 】【2 9 1 ,目前主要的研究集中 在后者。用户在进行保密通信时为提高通信效率,一般使用对称密钥来加密信 息,这就要求用户间共同拥有一个对称密钥,该密钥又称会话密钥 3 。如何安 全、有效地分配会话密钥,已经引起密码学家的高度重视。下面介绍几个典型 的密钥交换与密钥生成协议。 2 2 2d i f f i e h e l l 8 n 协议 d i 甩e - h e l l m a n 算法是第一个公开密钥算法。其安全性源于有限域上求解离 散对数的困难性。d i m e h e l l m a n 算法适用于密钥分配,但不适用于加密或解 密信息。 首先协议用户a l i c e 和b o b 协商确定大素数p ,g 是z p 的本原元数。它们 可以公用于一组用户。协议内容如下: a l i c e 选取一大随机数x ,计算x 的值并将结果发送给b o b :x = fm o d p : b o b 选取一大随机数y ,计算y 的值并将结果发送给a l i c e :y = 9 7m o d p : a l i c e 秘密地计算密钥k = y ”m o dp : b o b 同样也秘密地计算密钥k = x 7 m o dp 。 其中k = k = g 。m o dp ,任何只知道参数p 、g 、x 和y 的第三者都不可能 计算出这个密钥值。除非他们通过求解离散对数,恢复x 和y ,但是根据现有 的计算能力,对一个大数进行离散对数运算,其困难性相当于对同等长度的数 进行因式分解计算。因此k 是a i i c e 和b o b 之间安全的共享密钥。 上述协议中g 和p 的选择对系统的安全性有很大的影响。( p 一1 ) 2 也应 该是素数,最重要的是p 应该很大,因为系统的安全性取决于与p 同样长度的 数的因子分解的难度。可以选择任何满足模p 的本原元数g 。( 实际上g 不必是 素数,但它必须能产生一个大的m o dp 的乘法组予群。) 2 2 3 不用交换密钥的密钥交换 根据d i f b r h e l l m a n 协议产生密钥的方法我们可以迸一步展开,得到一个 不用交换密钥的密钥交换方案。 如果有一个用户群,其中每一用户都在公用数据库中发布自己的公开密钥 x :x = g xm o dn 。如果a l i c e 想与b o b 通信,她只需取回b o b 的公开密钥,并 计算出他们共享的秘密密钥。然后用这个新的密钥作为与b o b 通信的会话密钥。 b o b 也同样可以得到a l i c e 的公开密钥继而生成他们之间共享的会话密钥。 这样每一对用户之间都有唯一的秘密密钥,彼此间不需要预先的交互即可 得到该密钥。同时为了防止欺骗攻击,用户的公开密钥需要经过认证中心的鉴 定,并且每个公开密钥都有一个的有效期限。 2 2 4s h a m i r 的三次传递协议 出s h a m i r 设计的这个协议能使a l i c e 和b o b 无需预先交换任何秘密密钥或 公开密钥就可以进行保密通信。这里假设存在一个可交换的对称密码: e k a ( e k b ( p ) ) = e k b ( e k a ( p ) ) 。 a l i c e 的秘密密钥是k a ,b o b 的秘密密钥是k b ,a l i c e 想给b o b 发送消息 m 时,其协议的执行过程如下: a l i c e 用自己的密钥加密明文m ,并把密文发给b o b :c 】= e k ( m ) b o b 收到消息c l 后也用他的密钥加密c i ,并把密文发回给a l i c e : c 2 = e k b ( c 1 ) a l i c e 用她的密钥解密c 2 ,并把解密结果发给b o b : c 3 ;d k a ( e k b ( e k a ( m ) ) ) = d k a ( e k a ( e k b ( m ) ) ) = e k b ( m ) b o b 用他的密钥解密c ,恢复出明文消息m 。 s h a m i r 描述了一个类似于r s a 的加密算法用于上述的协议。设p 是一个 大素数,且p - 1 有一个大素数的因子,选择加密密钥e ,使e 与p 一1 互素。计 算d 使d e = 1m o d ( p 一1 ) 。加密报文时,计算c = m 。m o dp , 解密时则计算: m = c o m o dp 。 与d i 嫡e h e l l m a n 类似,该协议允许a l i c e 在不知道b o b 任何密钥的情况 下便可与b o b 通信。若a l i c e 使用公开密钥算法,则她必须知道b o b 的公开密 钥。按照s h a m i r 三次传递协议,她只需把密文消息发送给b o b ,如果使用公开 密钥算法则要进行如下几个步骤: a l i c e 向b o b ( 或k d c ) 请求获得他的公钥。 b o b ( 或k d c ) 把他的公开密钥发送

温馨提示

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

评论

0/150

提交评论