(计算机应用技术专业论文)通信网络中的密钥托管研究和实现.pdf_第1页
(计算机应用技术专业论文)通信网络中的密钥托管研究和实现.pdf_第2页
(计算机应用技术专业论文)通信网络中的密钥托管研究和实现.pdf_第3页
(计算机应用技术专业论文)通信网络中的密钥托管研究和实现.pdf_第4页
(计算机应用技术专业论文)通信网络中的密钥托管研究和实现.pdf_第5页
已阅读5页,还剩50页未读 继续免费阅读

(计算机应用技术专业论文)通信网络中的密钥托管研究和实现.pdf.pdf 免费下载

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

文档简介

节和划 札气诤触佩猕摘要 f ? f 密钥托管是目前密码界的重要研究课题密钥托管主要解决以下问题:在密 钥托管系统中,法律执行部门在法院授权的情况下能够进行搭线窃听,对犯罪怀 疑分子进行秘密跟踪另一个重要作用是如果用户的密钥丢失或损坏时,或者是 在需要密钥而拿不到的时候,执行密钥托管系统中的密钥恢复功能,得到需要的 密钥或者信息再次,如何保证密钥的安全性和有效性也是密钥托管研究的问题。 密钥托管系统( 即托管加密系统) 具有备份解密能力的加密系统,它允许授权 者( 包括用户、企业职员、政府官员) 在特定的条件下,借助于一个以上持有专用 数据恢复密钥的、可信赖的委托方所提供的信息来解密密文一个密钥托管系统 可分为用户安全分量( u s c ) ,密钥托管分量( k e c ) 和数据恢复分量( d r c ) 三个主要 部分。 本文提出一种可恢复失效托管代理的密钥托管方案,采用混合密码系统,即 用公开密钥密码来保护和分发会话密钥,而会话密钥用在对称算法中,对通信消 息进行保密该方案有以下安全性和服务:( 1 ) 1 t 用户和管理中心共同生成用户 的私钥公钥对,防止闽下攻击。( 2 ) 密钥分拆方法采用门限方案,在托管代理和 管理中心验证碎片时,采用r s a 方法,结合两者的优点,克服了它们的缺点, 能够防止选择密文攻击、公共模数攻击。( 3 ) 能够恢复失效的托管代理。当某托 管代理失效后,不需要用户参与,由其他托管代理和k e s 联合恢复失效的托管 代理的托管信息,从而对托管代理有保护作用。( 4 ) 密钥托管一方面保护个人隐 私另一个方面又要允许法院授权的搭成窃听。在本方案中,提供有效期内一次性 在线式监听和永久性离线式两种方式对用户实施监听,有效的限制了监听机构的 监听权力。 密钥托管的关键技术是密钥的拆分和恢复,作者对密钥的产生、拆分和恢复 作了工程实现。 关键词】:密钥托管;搭线窃听;门限方案;攻击 a b s t r a c t a k e y e s c r o we n c r y p t i o ns y s t e mi so n eo f t 1 1 em o s ti m p o r ti s s u e sc o n c e m e db y c r y p t o g r a p h yf i e l d k e ye s c r o wd e a l sm a i n l yw i t hf o l l o w i n gp r o b l e m s :u n d e rw h a t c o n d i t i o nc o u l da1 a we x e c u t i o nd e p a r t m e n te a v e s d r o po n 。l i n e s oa st ot r a c et h e c r i m i n a l ss e c r e t l y a n o t h e ri m p o r t a n te f f e c ti s t h a tw h e nt h eu s e rk e yw a sl o s t , d a m a g e d o rc r ng e tt h ek e yw h e nn e e d e d ,t h es y s t e mw i l lp e r f o r mt h ef u n c t i o no fk e y r e c o v e r y , o f f e r i n gt h en e e d e dk e y o ri n f o r m a t i o n l a s t l y , h o wt oe n s s u r et h es e c u r i t y a n de f f e c t i v e n e s si sa n o t h e ri m p o r t a n ti s s u e ak e ye s c r o we n c r y p t i o ns y s t e mi s a l l e n c r y p t i o ns y s t e m w i t h b a c k u p d e c r y p t i o nc a p a b i l i t y t h a ta l l o w sa u t h o r i z e d p e r s o n s ( u s e r s ,o t i i c e s o fa n o r g a n i z a t i o n ,a n dg o v e r n m e n to f f i c i a l s ) ,u n d e r c e r t a i n p r e s c r i b e d c o n d i t i o n s ,t o d e c r y p tc i p h e r t e x tw i t h t h eh e l po fi n f o r m a t i o n s u p p l i e db e o n eo rm o r et r u s t e dp a r t i e s w h oh o l ds p e c i a ld a t ar e c o v e r yk e y s k e ye s c r o wc a nb ed i v i d e dl o g i c a l l yi n t ot h r e e m a i nc o m p o n e n t s :u s e r s c o u r i t yc o m p o n e n t s ,k e y e s c r o wc o m p o n e n t s ,d a t a r e c o v e r yc o m p o n e n t s t h ea r t i c l ep r o p o s et h ek e ye s c r o ws c h e m ew h i c hc a nr e c o v e rt h ei n v a l i dk e y e s c r o w t h es c h e m eu s et h eb l e n d e dc r y p o g r a p h ys y s t e mw h i c hi s p r o t e c t a n d d i s t r i 【b u t et h es e s s i o nk e yu s i n gp u b l i ck e y ,m e a n w h i l ei nc o m m u n i c a t i o ns e s s i o n k e yi s u s e d 、v i t l l s y s m e t r i ca l g o r i t h m t h es c h e m eh a sf o l l o w i n ga d v a n t a g e s :( 1 ) u s e r sa n dm a n a g e m e n ta u t h o r i t yg e n e r a t es e c r e ta n dp u b l i ck e yp a i rc o l a b r a t e l yt o p r e v e n tt h eu n d e rt h r e s h o l da t t a c k f 2 ) u s i n gt h r e s h o l ds c h e m et od i s t r i b u t et h ek e y s a n dv e r i f yt h ep i e c e su s i n gr s a t h u sw i t ha d v a n t a g e so ft w oa l e o r i t h i n st op r e v e n t t h es e l e c t e de n c r y p t e dt e x ta t t a c ka n dp u b l i cm o d u l ea t t a c k ( 3 ) c a nr e c o v e rt h ei n v a l i d k e ye s c r o w w h e no n ek e ya g e n t l o s te f f e c t i v e n e s s t h eo t h e r a g e n t s a n dk e s c o o p e r a t e l yr e c o v e r1 h ei n v a l i de s c q t o wi n f o r m a t i o n ( 钔t h ek e ye s c r o wo nt h eo n e h a n dp r o t e c tt h ep r i v a t es e c r e c y , o nt h eo t h e rp e r m i tt h el e g a le a v e s d r o p p i n g i nt h i s t h e m e ,t w os t y l e so fm o n i t o r i n ga r ep r o v i d e d ,o n ei so n l i n eo n et i m em o n i t o r i n gi n t h ev a l i d p e r i o d ,a n t h o r i s p c r m a n e n t0 i f - l i n em o n i t o r i n g ,s o t h a tt h e p o w e r m o n i t o r i n gi n s t i t u t ei se f f e c t i v e l yc o n t r o l l e d k e y w o r d s :k e ye s c r o w ;w i r e t a po n - l i n e ;t h r e s h o l ds c h e m e ;a t t a c k 第一章绪论 1 1概述 纤维材料的吸湿性是纤维的重要性质,它直接表现为纤维材料中的水分含量, 影响纤维的各种加工性能进而影响纺织生产的产品质量。在纺织企业,为了保证生 产的顺利进行和纺织品的最终品质,在整个加工过程中都必须对纤维原料、半成品 及成品进行水分测定。对于天然纤维而言,在纤维收购、贮藏时也必须测试纤维中 的水分含量。目前,国内外较成熟的纤维水分测试方法有烘箱法和直流电阻测湿法。 其中烘箱法测试结果准确、稳定,被我国国家标准定为仲裁检验和纺织厂质量控制 检验的基本方法;直流电阻测湿法快速方便,普遍被棉花收购部门和纺织厂棉检室 使用【l 】【2 5 1 2 6 1 1 27 1 。但是,上述两种方法均存在一定的缺陷。其中烘箱法耗能费时、不 利于生产现场快速控制和纤维收购部门现场使用;直流电阻测湿法却因为纤维的直 流电阻很大、极板在直流电场中易于极化等缺陷而存在测试稳定性差、误差大、通 用性低等缺点,结果在纤维收购时常常以有经验的人员通过手感目测法确定天然纤 维的水分含量。本文即在对纤维材料的导电性和介电性深入研究后,提出采用交流 阻抗测试技术对纤维材料的水分进行测量的方法。经试验验证和误差分析,交流阻 抗测试法可以解决直流电阻测湿法存在的极板极化和因纤维直流电阻很大面造成 的测试仪器稳定性差以及通用性差的问题。实验验证了含水介质一一纤维的交流导 电浴盆效应,对纤维交流导电的理论及测试技术作出了贡献。 1 2 纺织材料的吸湿性 除了涤纶、聚乙烯等合成纤维外,大多数纺织纤维都具有一定的吸湿性。干 燥纤维放置在湿度较高的大气中,吸收的水分会逐渐增多;已吸收水分的纤维, 在较为干燥的大气中,水分会逐渐失去。在相对湿度一定的大气条件下,纤维经 过吸收或放出水分,逐渐达到所含水分的量稳定不变,这种现象称为吸湿平衡。 纤维达到吸湿平衡时的含湿量,除随大气中的相对湿度而变化外,还随大气的温 度而异。 纤维吸湿平衡是动态性质的。在吸湿平衡时,单位时间内纤维内部向大气蒸 发的水分子数量,同大气中水分子凝聚到纤维中的数量相等。纤维在大气中须经 过相当长的时间才能达到吸湿平衡,所需时间的长短,随纤维集积的情况而变。 在充分松散状态时,经过l 2 小时即可达到吸湿平衡。集合成纱线或布匹状态时, 达到吸湿平衡须经过数小时。紧压的纤维包吸湿平衡的过程很长,常需数天或数 望笪堕塑盟查塑堑笪堕塑兰壅翌 为了保护信息的保密性,抗击密码分析,密码系统应当满足下述要求: ( 1 ) 系统即使达不到理论上是不可破的,也应当是实际上不可破的就是说, 从截获的密文或某些己知明文密文对,要决定密钥或任意明文在计算上是不可行 的 ( 2 ) 系统的保密性不依赖于对加密体制或算法的保密,而依赖于密钥 ( 3 ) 加密和解密算法适用于所有密钥空间中的元素 ( 4 ) 系统便于实现和使用方便 密码学主要提供以下安全服务: 机密性:确保在一个计算机系统中的信息和被传输的信息仅能被授权让读取 的各方得到这类访问包括打印、显示和其他形式的显露 鉴别:确保一个消息的来源或电子文档被正确地标识,同时确保该标识没 有被伪造 完整性:确保仅是被授权的各方能够修改计算机系统中有价值的内容和传输 的信息这种修改包括对传输消息的写、改变、改变状态、删除、创建、时延或 重放 不可抵赖:要求无论发送方还是接收方都不能够抵赖所进行传输的信息 访问控制:要求对信息源的访问可以由目标系统控制 可用性:要求计算机系统的有用资源在需要时,可为授权各方使用 密码体制从原理上可分为两大类,即单钥体$ 1 j ( o n e - - k e ys y s t e m ) 和双钥体 带l j ( t w o - - k e ys y s t e m ) 单钥体制的加密密钥和解密密钥相同,分为两类;流密码( s t r e a mc i p h e r ) 和分组密码( b l o c k c i p h e r ) 系统的保密性主要取决于密钥安全性必须通过 安全可靠的途径( 如信使递送) 将密钥送到接收端,如何产生满足保密要求的密 钥是这类体制设计和实现的主要课题另一个重要问题是如何将密钥安全可靠地 分配给通信对方,在网络通信条件下就更为复杂包括密钥产生、分配、存储、 销毁等多方面的问题,统称为密钥管理( k e ym a n a g e m e n t ) 这是影响系统安全 的关键因素,即使密钥算法再好,若密钥管理问题不好,就很难保证系统的安全 保密 双钥体制是由d i f f i e 和h e l l m a n 首先引入的,采用双钥体制的每个用户都 有一对选定的密钥:一个是可以公开的,以墨表示;另一个则是秘密的,以k , 表示,公开的密钥墨可以象电话号码一样进行公布,因此双钥体制又称作公钥 体制( p u b l i ck e y s y s t e m ) 双钥密码体制的主要特点是将加密和解密能力公 通信网络的密钥托管研究与实现 开,因而可以实现多个用户加密的消息只能由一个用户解读,或只能由一个用户 加密消息而是多个用户可以解读,前者可用于公共网络中实现保密通信,而后者 可用于认证系统中对消息进行数字签名有些密码算法能够实现加解密,有些密 码算法能够实现数字签名,也有些密码算法能够实现这两种目的 密钥托管是目前密码界的重要研究课题密钥托管的主要思想是将用户密钥 分拆为数个片段,由托管代理分别保管,获得授权的第三方可以利用托管代理保 存的片段恢复出用户密钥,解密通信密钥托管是一个庞大的系统工程,它不仅 涉及到密码算法、密钥管理、安全协议、认证、鉴别等许多安全技术,还涉及政 治、经济、社会、制度等密钥托管是美国政府的c l i p p e r 计划“1 和它的托管加 密标准e e s 的核心这里面临的挑战是开发一个密码系统,既要保护个人隐私同 时又要允许法院授权的搭线窃听 密钥托管主要解决以下问题:由于强有力的加密防止数据被窃听、被截获的 同时也带来了一个负作用:进行暗中的电子窃取越来越困难,在密钥托管系统中, 法律执行部门在法院授权的情况下能够进行搭线窃听,对犯罪怀疑分子进行秘密 跟踪另一个重要作用是如果用户的密钥丢失或损坏时,或者是在需要密钥而拿 不到的时候,执行密钥托管系统中的密钥恢复功能,得到需要的密钥或者信息再 次,如何保证密钥的安全性和有效性也是密钥托管研究的问题 本文提出的密钥托管方案0 1 能够满足个人和政府的需要,能够防范个人的欺 骗行为和阈下攻击,也能防止政府部门内部滥用密钥恢复系统同时在密钥托管 的软件和硬件实现,自动化实现等方面做了大量研究但由于密钥托管的风险、 复杂性、经济成本等不确定因素使得密钥托管的推广进展很慢,现仅处于理论研 究深入和工程实现初步阶段,还有大量工作需要完成 1 2 密钥托管的研究现状 a t & t 公司1 9 9 2 年开发了一种小型、便携、成本低又具有强语音加密电话 设备,这使得社会公众可以使用密码保护语音通信,然而政府如果想搭线窃听进 行执法,就需要花费昂贵代价去破译密钥,甚至不能破译密钥为此,美国政府 宣布了一项新的建议,倡导联邦政府和工业界使用新的具有密钥托管功能的联邦 加密标准提出了加强控制的密钥托管政策,并且颁布了具有密钥托管功能的加 密标准e e s ( e s c r o w e n c r y p t i o ns t a n d a r d ) 标准规定使用专门授权制造的,且算 法不予公布的c l i p p e r 芯片4 1 实旌商用加密该密码体制具有在法律许可时进行 通信网络的密钥托管研究与实现 密钥合成,可以使政府在必要时无须花费巨大代价破译密码,而能够直接侦听 c l i p p e r 芯片的弱点是: 1 1 校验和太短,不能抵抗穷搜索攻击; 2 ) 监听者一旦被法庭授权,他能监听任何时候的通信: 3 ) 只有消息发送者的信息包含在l e a f 之中,不能追踪消息的接收者 基于以上原因,美国n s a 开发另一个v l s i 加密芯片c a p s t o n e 【6 j ,它包含下 面的一些功能: 1 ) 支持e c b ,c b c ,c f b 和o f d 四种基本模式下的密码s k i p j a c k 算法; 2 ) 通用的求幂算法和安全散列算法( s h a ) ; 3 ) 采用公开密钥交换算法,可能是d i f f i e h e l l m a n ; 4 ) 采用纯噪声源的通用的随机数发生器; 5 ) 提供安全电子商务和其它基于计算机的应用所需的密码功能 e e s 硬件产品采用的加密算法是保密的,因而使用户深感怀疑和不满,而且 由于这两种芯片都只能保证政府的合法解密,而在用户密钥丢失或损坏时无所作 为,加剧了公众的不满情绪,使这两种硬件芯片的推广受到了严重阻碍考虑到 软件系统的透明性,使用灵活性和低价位,易推广的特性,曾有许多部门和专家 提出了开发软件密钥托管产品的议向,但也面临许多的问题7 ,羽,例;软件易于 被盗用,协议中容易泄露用户托管信息,不能检验通信双方的身份等现在有一 些密码专家提出了许多有建设性的密钥托管方案如根据采用的公钥算法不同, 提出了相应的方案根据运行环境的不同,有人提出软件中的密钥托管方案和移 动通信中的密钥托管方案为了防止监听机构滥用权力,进行大规模的进行密钥 恢复,有人提出部分密钥托管方案 在电子商务时代,国家为了能够对电子商务进行有效的管理和控制以使其健 康发展,必须强制实施一定形式的密钥托管技术,以便及时发现和阻止非法商务 活动,并为司法部门提供取证的方便密钥托管与证书授权认证中心相接合,既 能保证个人通信与电子交易的安全,又能实现法律职能部门的管理介入,是今后 电子商务安全策略的发展方向 德国s u s a n n ew e t z e l 提出了一种”可跟踪的可视密码学”方案它是一般的 ( ”,女) 门限方案的特例w e t z e l 等的新方案不仅符合基本门限方案的要求,同时还 是可以跟踪的在( 盯,七) 门限方案中,如果联合各自秘密的秘密共享者少于k 个, 则原始秘密不可能泄露这个方案实质上是假定:即使在现实社会中,有多于k 个 秘密共享者具有联合作案的企图,也不大可能真正找到同路人,因为他们担心密 4 通信网络的密钥托管研究与实现 谋会被揭发然而,在现实社会中,如果存在k 一1 个破坏者,他们联合各自的秘密, 并且公布这一信息,其后果是,所有其余月一k + 1 个秘密共享者中的任何一个都有 可能掌握原始秘密,这显然对系统的安全性构成了威胁w e t z e 等的新方案试图 解决上述实际问题一个可信的第三方只要掌握所谓的”标记信息”( 不要求掌握 部分秘密) ,就可以跟踪发布共享秘密信息的破坏者 基于指纹的智能认证,a e s 先进加密标准【,椭圆曲线算法等密码学新技术 的出现,使网络通信更加可靠,加密更快速,也将加速密钥托管的发展 1 3 本文主要工作 本文对密钥托管进行了理论研究和工程实现密钥托管系统是一个庞大的系 统工程,涉及到密码技术、安全协议、认证、数字签名等技术在第二章中,对 在本文提出的密钥托管方案中用到的关键技术进行了理论分析,尤其对d e s 和 r s a 用v c + + 进行了工程实现,解决了实现过程中遇到的问题并对密钥交换协 议和密钥共享方案进行了分析,总结出安全协议的一般框架 密钥托管系统是由用户安全分量、密钥托管分量、密钥恢复分量三部分组 成在本方案中,由用户和认证中心共同生成随机大素数,得到用户的私钥公 钥对,在此过程中采用了零知识证明,让用户和k e c 都知道参与了生成密钥对 的过程,防止了“影子攻击”利用混合密码系统,对需要传输的消息用d e s ( 或 i d e a ) h n 密,对称密钥( 即会话密钥) 随机生成并且生成法律执行接入域l e a f , 在其中包含会话密钥、通信双方的标识符等,用对方的公钥对l e a f 进行加密, 接收方利用自己的私钥对l e a f 解密,取出会话密钥,对消息解密得到原文在 密钥托管系统中是对用户的私钥进行托管,首先利用s h a m i r ( k ,n ) 门限方案分拆 私钥,结合了r s a 和s h a m i r ( k ,n ) 门限方案的优点,能够确切地知道失效的或 者不合作的托管代理,托管代理也能验证密钥碎片的正确性,系统能克服闽下攻 击和选择密文攻击认证中心产生随机数并传给托管代理,托管代理用用户的公 钥和用户传来的碎片对随机数加密并传给认证中心认证中心对这些碎片进行解 密,如果得到的随机数与发送出去的随机数相等,颁发认证证书给它们如果不 相等,则否认这次托管在方案中,法律执行部门可进行有效期内一次性在线式 和永久性离线式两种方式对用户实施监听 作者利用v c + + 对本方案进行部分工程实现在托管初始化阶段,如果存在 m 个托管代理,则需要2 m + 6 次r s a 计算,因此对r s a 的速度进行了研究一 通信网络的密钥托管研究与实现 方面对长整数模运算作修改,提高在软件和硬件环境中的运算速度;另一方面, 选择合适的求素数的方法并且在对密钥托管的自动化实现和软件实现等方面做 了大量研究 6 通信网络的密钥托管研究与实现 第二章密钥托管中的算法和协议分析 2 1 密钥托管的概念 随着信息技术发展速度的提高和信息使用的快速、廉价和简单,对重要信息 传递的控制和存储就越来越艰难,对对方是谁以及资料的来源的认证就更为困 难,在这种形式下,加密就越来越成为保证重要信息安全和身份认证的唯一可行 的方法,现在,较高安全的加密可以比较便宜地实现,在大多数的电子通信产品 和处理重要数据的应用中,加密将会被广泛的应用,或者是嵌入其中强有力的 加密防止数据被窃听、被截获的同时也带来了一个负作用:进行暗中的电子窃取 ( 尤其是搭线窃听) 越来越困难,而这正是法律执行部门在对犯罪怀疑分子进行 秘密跟踪时所要做的,现在美国和一些国家正在阻止加密系统的广泛使用,除非 在该系统中加入能够保证法律执行部门可以方便获得“明文”的“密钥恢复”机 制,密钥恢复加密系统提供某种对于“明文”的获取方法,这种方法不同于一般 的加密和解密,这种密钥恢复叫做密钥托管,有时又称为密钥档案、密钥备份或 数据恢复体制这种系统满足以下基本元素: ( 1 ) 高度重要的密钥的存在在一定时间段内,这些密钥必须是安全的 ( 2 ) 在加密和解密之外存在一种机制,通过这种机制第三方可以通过隐秘 的渠道获取加密数据的明文或者密钥,即在不被用户知道或者没有用户同意的情 况下,第三方或者是政府可以获得数据 因此,可如下定义密钥托管: 密钥托管:密钥托管系统( 即托管加密系统) 具有备份解密能力的加密系统, 它允许授权者( 包括用户、企业职员、政府官员) 在特定的条件下,借助于一个以 上持有专用数据恢复密钥的,可信赖的委托方所提供的信息来解密密文【m 】 对于密钥托管的作用,政府的要求和商业部门的要求f i l 】有很大的不同商业性密 钥托管的目的是除保证密钥的安全性之外能够可靠地恢复明文或者密钥政府的 最终目的是:利用密钥托管和密钥恢复加密系统,设计一个世界范围内的密钥管 理的基础设施对于这样个全球的密钥托管系统产品,应满足以下要求: ( 1 ) 不被用户知道或者没有用户同意的情况下,第三方或者是法律执行部 门可以获得数据 ( 2 ) 密钥托管在国际上的普遍使用只有密钥托管用得足够广泛的时候, 它才能帮助法律执行部门,因为只有在这种情况下,无论终端用户是否提出此种 通信网络的密钥托管研究与实现 要求,我们才可以用该系统得到大批的、加密存储的信息和通信信息 ( 3 ) 法律执行部门寻求快速获得解密密钥的能力,对明文获取的高可行性 和全天候可行性而对于商业性密钥托管来说,很少有加密用户需要全天候地恢 复密钥,而且也很少有用户要求在这么短的时间内恢复出密钥 ( 4 ) 仅需要获取加密存储的静态信息,还要求获取通信的动态信息而商 业性密钥托管要求恢复的信息是静态信息 在具体工程实现中,区分设计的密钥托管系统是政府性的还是商业性的,主 要考虑以下四个方面不同:需要恢复的数据种类:需要恢复的密钥种类;可恢复 密钥的组织形式:以及密钥认证和密钥恢复之间的关系 密钥托管系统要完成对密钥的托管,它的主要思路和通用协议模型如下: ( 1 ) a l i c e 产生出她的私人密钥公开密钥对,她把私人密钥公开密钥对分 成几个公开部分和秘密部分 ( 2 ) a l i c e 送给每个托管人一个公开的部分及对应的秘密部分这些消息必 须加密她也把公开密钥送给k d c ( 3 ) 每个托管人独立地完成计算以确认所得到的公开部分和秘密部分都是 正确的,每个托管人将秘密部分存放在安全的地方并把公开部分送给k d c ( 4 ) k d c 对公开部分和公开密钥执行另一种计算假设每一件事都是正确 的,k d c 在公开密钥上签名,然后把它送回给a l i c e 或把它邮寄给某处的数据库 如果法庭要求进行搭线窃听,那么每个托管人就把他或她的部分交给k d c , k d c 能重新构造出私人密钥在交出密钥前,无论是k d c 还是任何一个托管人 都不能重新构造出私人密钥,所有托管人一起才能重新构造出私人密钥 密钥托管系统是一个复杂的系统【12 1 ,它涉及到密码技术、密钥管理、密钥共 享和安全协议等许多技术本章后续章节分析了密钥托管系统中用到的关键技 术,以及如何进行有机的结合,设计出功能齐全、安全可靠的密钥托管系统 2 。2 密钥托管中的密码技术 2 2 1 单钥分组密码 在许多密码系统中,单钥分组密码是系统安全的一个重要组成部分分组密 码易于构造模拟随机数生成器、流密码、消息认证码( m a c ) 和杂凑函数等, 还可进而成为消息认证技术、数据完整性机构、实体认证协议以及单钥数字签名 体制的核心组成部分在实际应用中,对于分组密码,用户可能提出多方面的要 通信网络的密钥托管研究与实现 求,除了安全性外,还有运行速度、存储器、实现平台、运行模式等限制条件数 据加密标准d e s ( d a t a e n c r y p t i o ns t a n d a r d ) 是典型的分组密码 2 2 1 1d e s 算法的描述 d e s 算法的基本设计思想:通过循环或迭代,将简单的基本运算( 例如左移, 右移,模2 加法等) 和变换( 选择函数,置换函数) 构造成数据流的非线性变换( 加 密变换或解密变换) d e s 算法的数据流程的基本框架是固定的,通过密钥分解 将一个实际上是5 6 位的密钥分解成1 6 个4 8 位( 二进制) 的子密钥,每个子密钥 控制一次循环或迭代加密与解密的密钥和流程是完全相同的,区别仅仅是加密 与解密使用子密钥序列的施加顺序刚好相反 d e s 算法的主要步骤如下: 1 、即6 4 位码的明文; 2 、初始置换( i p ) ,移位操作注意,在初始置换过程不使用密钥,仅仅对 6 4 位码进行移位操作 3 、乘积变换,这是一个与密钥有关的对码组加密运算; 4 、逆初始置换( 俨。) ,它是第2 步中所完成变换的逆变换,这一变换过程 也不使用密钥; 5 、输出,即6 4 位码的密文 2 2 1 2 关于程序的几点说明 作者用c + + 算法语言编制了d e s 算法源程序,现在对程序作几点说明: 1 基本数据结构定义 基本单元定义为u n i o n ,由于d e s 涉及移位与置换运算,这样定义数据单元 有利于各数据单元位之间的无规则置换及快速移位 2 整体控制结构 密钥处理模块:p r e s e l e c t 将存放在i n k e y 中的6 4 位密钥变换成存放在k e y b u f 中的5 6 位密钥:s e t c i r c l e k e y 生成1 6 个4 8 位的予密钥,并将子密钥序列存放 在o u t k e y 中 循环体中模块:e x p a n d r 将r ( f ) 中的3 2 位数据扩展为4 8 位,并存放在 e x p a n d 4 8 数组中;x o r o p o r a t e 将存放在e x p a n d 4 8 中的4 8 位数据与o u t k e y 中相 应迭代的4 8 位子密钥进行模2 加法,其结果存放在4 8 位的a v a l u e 中;s b o x 将 a v a l u e 中的4 8 位数据分成8 组,每组6 位输入s 盒中的信息为6 位,输出为 4 位整个s 盒输出信息为3 2 位并存放在数组b v a l u e 中;f u n c p 是p 置换函数, 9 通信网络的密钥托管研究与实现 将b v a l u e 中的s b o x 输出的3 2 位数据通过p 置换函数变换后仍存放在b v a l u e 中: x o r r t e x t 将p 置换函数的输出b v a l u e 与。进行模2 加结果3 2 位数据仍存放 在b v a l u e 中;每一次迭代( 或循环) 的最后,将b v a l u e 的结果存放在r ( ,) 中,r ( j _ 1 ) 的结果存放在l 中 3 后处理模块 p o s t s e t 在第1 6 次迭代后,将三f f l 、r ( 程序中的三。,与r 。数组) 中的6 4 位 数据进行逆初始置换( 腰。) 4 辅助功能模块 v o i dg e tk e y ( v o i d ) 接收密钥5 v o i d p r yk e y ( v o i d ) 打印密钥5 v o i dp r es e tp l a i n ( v o i d ) 接收明文: v o i dp r tp l a i n t e x t ( v o i d ) 打印明文; v o i d p r i n t c i p e r t e x t ( v o i d ) 打印密文; 程序中加密变换与解密变换是一个整体,可根据实际需要和应用环境分开处理 2 2 1 3 d e s 算法的存储空间分析 d e s 算法的加密强度取决于函数f ( 它是选择函数f 和置换运算p 的结合) 的复杂度和执行函数p 的次数,是基于迭代或循环的运算模式,许多人已经进行 了论述现在对它的存储空间进行分析: b l o c ks i z e = n = 8 l 、i1 6 圈内部密钥i = 1 6 x 8 x s i z e o f ( c h a r ) = 1 2 8 个字节 2 、i 明文缓冲区f = n x s i z e o f ( c h a r ) = 8 个字节 3 、i 密文缓冲区i = n s i z e o f ( c h a r ) = 8 个字节 4 、i 左向量缓冲区i = ( n 2 ) s i z e o f ( e h a r ) = 4 个字节 5 、l 右向量缓冲区i = ( n 2 ) x s i z e o f ( c h a r ) - - :4 个字节 6 、i s b o x 2 8 b o x 4 r o w p e rb o x 8 s i z e o f ( c h a r ) p e rr o w = 2 5 6 个字节 以上累计为4 0 8 个字节( 不含临时变量) 2 2 2 公钥密码体制 公开密钥密码学的概念是由w d i f f i e 和m h e l l m a n 提出的1 9 7 6 年后, 提出了多种公开密钥算法,只有少数几个算法既安全又实用,一些仅适用于密钥 分配,一些适用于加密,还有一些只适用于数字签名只有三种算法可同时很好 地用于加密和数字签名:r s a 13 1 ,e l o a m a l 和r a b i n 通信网络的密钥托管研究与实现 公开密钥算法与传统的加密算法 1 4 , 1 5 在算法设计上有很大的不同:在传统加 密算法中,使用者可以完全自由地选取替代、置换、迭代所用的密钥,加密过程 中所用的全部步骤的逆过程就是解密过程的全部步骤而在公开密钥算法中,不 可能从加密过程的步骤反转过来确定解密过程的步骤因为在公钥密码体制中加 密与解密遵循着两条不同的路径,并受密钥控制变换,这样在只掌握加密密钥的 情况下,无法从加密过程来推断解密变换,即不能对加密结果进行解密下面介 绍最常用的r s a 算法 r s a 算法是建立在具有大素数因子的合数、其因子分解困难的基础上的, 即它的保密强度是建立在计算复杂性基础上的一个1 5 0 位左右的合数,即使采 用现在的巨型计算机进行因子分解,其运算量也是相当巨大的 r s a 算法的安全性依赖于把r 分解成p 和q 的困难程度为了更好地防范分 解,必须仔细地选择素数p 和q ,在选择p 和q 时还要注意以下方面: 1 p 和q 在位数上要相差几位数字; 2 ( p 1 ) 年1 2 ( q 1 ) 都应含有大的素数因子,以增加攻击者猜算出( ,) 的困难性; 3 g c d ( p 一1 ) ( g 一1 ) 应当,j 、 椭圆曲线密码体制 椭圆曲线密码体制的最大优点是,在实现相同的安全性下,其所需密码量比 r s a 少得多,甚至少一百倍 椭圆曲线这一代数数论和代数几何中的重要问题这所以能用于密码学,一个 主要原因是基于有限域的椭圆曲线提供了一个取之不尽,用之不易的有限交换群 的源泉在基于有限域的离散对数密码体制中,主要与域的乘法群建立关系从 很多方面来说,椭圆曲线很近似于这些乘法群,但人们在选择椭圆曲线过程中相 对于选择有限域有更在的灵活性 设k 为一域,且k 的特征值k 2 ,3 设z 3 + a x + b ( a ,b e k ) 为一3 次无重 根多项式k 上的椭圆曲线即为点集( x ,y ) ,石,j ,k 满足 y2 = x 3 + 积+ 6 ( + ) 另加一无限远处的点 如k 为一个特征值2 的域,则( ) 相应换成y 2 + y = x 3 + 锻+ b 且不考虑 x 3 + 黜+ b 是否有重根 如k 为一个特征值3 的域,则( + ) 相应换成y 2 = z 3 + 甜2 + 如+ c 现设k 为实数域,定义群运群如下: 望焦婴垒塑奎塑堑笪竺圣兰壅塾 设e 为一基于实数域的椭圆曲线设p 与q 为e 上两点定义p 的负,p + q 如下: ( 1 ) 如p 为无穷远点0 ,则一p 为0 ,p + q 为q ( 2 ) 如p 不为无穷点0 ,设p = ( x ,y ) ,则( x ,y ) 。( x ,y ) ( 3 ) 如p 与q 有不同的坐标,则,= 面交e 于第三点r ,定义p + q 为一r ( 4 ) 女口p = - q ,贝0p + q = 0 ( 5 ) p = q ,则设l 为过p 的切线,l 交e 于r 定义,p + q 2 - r 总而言之,设p 为( x i ,y o ,q 为( x 2 ,y 2 ) 若p q 则 铲搿一喝;舻叻+ ( 嚣卜u 若p = q ,则 驴 等) 2 砌。;胪叫等) “喝, 可以证明以上加法运算对于零元( 无穷远点) 成一群 类似于基于实数域的椭圆曲线,可以定义基于实数域的椭圆曲线 h a s s e 定理证明 i v 一( g + 1 ) 喀2 4 q 其中q = p 7 为有限域的基数p 为其特征值n 为椭圆曲线上点的个数 正如在有限交换群f 有限域之乘法群上可以构造公钥系统一样,人们 构造了很多基于有限域的椭圆曲线的有限交换群的公钥系统以下介绍基于椭圆 曲线的e i g a r n a l 系统 设e 为一公开的基于g f ( q ) 的椭圆曲线 b 为一公开点 每一用户选择一个随机数“,计算口b ,公开a b ,保密口 设a l i c e 要发送一消息p 。给b o b ,a l i c e 首先选择一随机数k 加密:a l i c e 计算( k s ,p 。+ k ( a 。口) ) 解密:b o b 计算p 。+ k ( a 日曰) 一( 柚) = p 。 椭圆曲线密码体制的现状 尽管椭圆曲线密码体制经过了十多年的研究,至今未发现明显的漏洞,进入 实际应用还需要一些时间但由于椭圆曲线体制有密钥量小等特点,特别适用于 1 2 通信网络的密钥托管研究与实现 硬件实现和智能卡应用所以经过成熟的验证和研究后,有非常广阔的前景 2 2 3 密钥管理 由于密钥技术的核心内容是利用加密手段对大量数据的保护归结为对若干 核心参量密钥的保护,因此,网络系统中加密密钥管理问题成为首要的核心问题 ”特别是,假设密码算法是公开的 密钥管理是处理密钥自产生到最终销毁的整个过程中的有关问题,包括系统 的初始化、密钥的产生、存储、备份恢复、装入、分配、保护、更新、控制、 丢失、吊销和销毁等内容 密钥管理主要考虑以下几个方面: ( 1 ) 密钥生成 在通信网中,密钥的种类主要有以下几种:基本密钥( b a s ek e y ) ,会话密 钥( s e s s i o n k e y ) ,密钥加密密钥( k e ye n c r y p t i n gk e y ) ,主机主密钥( h o s t m a s t e r k e y ) 不同等级的密钥产生的方式不同主机主密钥是控制产生其它加 密密钥的密钥,而且长期使用,因此要求保证其完全随机性,不可重复性和不可 预测性,主机主密钥的量小,可用投硬币、掷子、噪声产生器等方法产生;密钥 加密密钥可用安全算法,二极管噪声产生器,随机数产生器等产生;会话密钥、 数据加密密钥可在密钥加密密钥控制下通过安全算法产生 ( 2 ) 密钥分配 密钥分配研究密码系统中密钥的分发和传送中的问题,是密钥管理中最棘手 的问题,现在在大型网络中自动密钥分配方法已经允许密钥进行快速、透明、安 全地交换但是,一定程度的手工交换密钥仍然是必须的 密钥分配的基本方法: 1 、利用安全信道实现 2 、利用数学上求送的困难性,即各种双钥体制所建, - o r 雕1 安全信道实现 3 、利用物理现象实现 ( 3 ) 密钥保护 密钥安全保密的基本原则除了在有安全保证环境下进行密钥的产生、分配、 装入以及存储于保密柜内备用外,密钥绝不能以明文形式出现 密钥进行分级保护管理大量数据可以通过少量动态产生的数据加密密钥进 行保护;而数据加密密钥又可由更少量的、相对不变的密钥或主机主密钥来保 护这样,只有极度少数密钥以明文形式存储在有严密物理保护的主机密码器件 中,其它密钥则以加密后的密文形式存于密码器外的存储器中,因而大大简化了 通信网络的密钥托管研究与实现 密钥管理,并改进了密钥的安全性 ( 4 ) 密钥管理系统: 密钥管理系统要负责密钥整个生存期的管理主要有以下各阶段的管理工 作:预运行阶段,此时密钥尚不能正常使用;运行阶段,密钥可正常使用; 后运行阶段,密钥不再提供正常使用,但为了特殊目的可以在脱机下接入; 报废阶段,将有关被吊销密钥从所有记录中删去,这类密钥不可能再用 2 4 密钥托管中的安全协议 协议( p r o t o c 0 1 ) ,就是两个或两个以上的参与者为完成某项特定的任务而采 取的一系列步骤,这个定义包含的含义为:第一,协议自始自终是有序的过程, 每一步骤必须依次执行第二,协议至少需要两个参与者第三,通过执行协议 必须能够完成某项任务,我们把具有安全性功能的协议称为安全协议,又称为密 码协议,将密码协议进行严格分类是很难的事情,从不同的角度出发,有不同的 分类方法,例如,根据i s o 的七层参数模型,可以将其分成高层协议和低层协议; 按照协议中所采用的密码算法的种类,又可以分成单钥协议、双钥协议和混合协 议等;根据安全协议的功能可分为密钥建立协议、认证建立协议、认证的密钥建 立协议 在协议的设计过程中,我们通常要求协议具有足够的复杂性以抵御交织攻 击另一方面,我们还要尽量使协议保持足够的经济性和简单性,以便可应用于 低层网络环境,如何设计密码协议才能满足安全性、有效性、完整性和公平性的 要求呢? 这就需要对我们的设计空间规定一些边界条件m ,主要有以下几方面的 安全协议的设计规定: ( 1 ) 采用一次随机数来替代时戳 ( 2 ) 具有抵御常见攻击的能力 ( 3 ) 适用于任何网络结构的任何协议

温馨提示

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

评论

0/150

提交评论