(计算机应用技术专业论文)基于算子库的安全用户代理的实现研究.pdf_第1页
(计算机应用技术专业论文)基于算子库的安全用户代理的实现研究.pdf_第2页
(计算机应用技术专业论文)基于算子库的安全用户代理的实现研究.pdf_第3页
(计算机应用技术专业论文)基于算子库的安全用户代理的实现研究.pdf_第4页
(计算机应用技术专业论文)基于算子库的安全用户代理的实现研究.pdf_第5页
已阅读5页,还剩94页未读 继续免费阅读

(计算机应用技术专业论文)基于算子库的安全用户代理的实现研究.pdf.pdf 免费下载

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

文档简介

摘要 。 卜 _ 一信息化时代,计算机网络及其应用空前发展,以网络为平台的信息传输等 各类应用对计算机网络系统中数据的安全性和保密性提出了很高要求。作为一个 实用的网络,动态数据流的安全保护显得尤为突出。, j 本文主要围绕动态数据的安全保护,在相关的密码机制和体制的基础上,尝 试将其与本文给出的网络数据安全用户代理s e c u r e u a 的设计和应用相结合,从 而为满足各不同层次的网络安全通信服务。论文提出了多级加密的思想,针对用 户的不同安全需求,在相关的密码机制和体制的基础上系统设计并实现了对网络 数据的多级安全保护。 本文在研究p k i 实现公钥库中,将l a p 目录服务与p k i 的应用相结合来创 建公钥库,提供信息资源的访问控制及单点连接,通过l d a p 目录服务实现公钥 的分发和用户身份的认证。 在对公钥的保护中,采用改进的b a s e 6 4 编码和对称密钥加密算法对私钥进 行双重保护。在对私钥加密编码的基础上,提出了自己的观点和相应的改进方法, 使用这种改进的编码很大程度上可以消除目前密钥或口令文件保护中的安全隐 患。 本文结合对各种加密算法的探讨和研究,给出了一种基于加密库的安全用户 代理s e c u r e _ o a 。系统最大的特点是不依赖于任何特定的加密算法,给出了添加 新算法的接口规范和标准,在新算法开发出来后,允许用户添加新算法,使系统 ,、 具有很强的扩尽竺e 心e c u r eu a 的主要设计思想是:将已有各种加密算法作为算 法库的一个组件,允许用户根据不同需要或安全等级调用不同算法,允许新的加 密算法添加到库中,使得不同加密算法由用户自定义组合加密的方法成为可能。 s e c u r e _ o a 吸收了其它安全传输系统中的特点,如:结合p k i 技术和l d a p 目录服务技术创建公钥库;结合j a v a m a il 和j 芦v a s e c u r e 技术创建s e c u r e _ u a 的用户界面;设置便于审计的通信日志文件;应用数字签名算法于信息不可否认 等等。卜 , 关键词:网络安全、密码、算子库、p k i 、l d a p 、u a s e c u r eu s e r a g e n t r e a l i z a t i o nr e s e a r c hb a s e do n o p e r a t o rl i b r a r y a b s t r a c t i nt h ei n f o r m a t i o nt i m e s ,w i t ht h eu n p r e c e d e n t e dd e v e l o p m e n to fc o m p u t e r n e t w o r k ,v a r i o u sa p p l i c a t i o n so fi n f o r m a t i o nt r a n s f e r so nn e t w o r kp l a t f o r mw o u l d n e e dm o r es e c u r i t ya n ds e c r e c y a sa p r a c t i c a ln e t w o r k ,t h es a f e t yo fd y n a m i cd a t a e s p e c i a l l yw i l lb eg i v e np r o m i n e n c e t o t h i sp a p e rm a i n l yd e a i sw i t ht h es e c u r i t yp r o t e c to f d y n a m i cd a t a ,r e s e a r c h e s r e l a t e d c r y p t o g r a p h m e c h a n i s ma n d s y s t e m ,a n dt r y t oc o m b i n e d e s i g n w i t h a p p l i c a t i o nd e p e n d i n go nd i f f e r e n tr e s e a r c h e s ,w h i c hi sc o n c e r n e dw i t hs e c u r eu a r u n n i n go ni n t e m e t i n t r a n e t t h e r e b y ,i tc o u l ds a t i s f yt h en e e d so fd i f f e r e n tn e t w o r k s e c u r i t yc o m m u n i c a t i o n i nt h i sp a p e r ,a i m i n g 砒d i f f e r e n tu s e r s n e e d s m u l t i l e v e l e n c r y p t i o nt e c h n i q u e w i l lb e p r o p o s e d c o m b i n e d w i t hd i f f e r e n t e n c r y p t i o n a l g o r i t h m sa n dm e c h a n i s m ,s a f e g u a r d i n gt h en e t w o r kd a t au s i n gm u l t i l e v e le n c r y p t i o n t e c h n i q u e i si m p l e m e n t e di nt h es e c u r e u as y s t e m i np u b l i ck e y l i b r a r yr e s e a r c h ,t h i sp a p e rd i s c u s s e st h ep u b l i ck e yl i b r a r yw h i c hi s c r e a t e d b yc o m b i n i n gw i t hl d a pd i r e c t o r ys e r v i c ea n dp k ia p p l i c a t i o n i tc a n p r o v i d eo n l yo n ec o n n e c t i o na n da c c e s sc o n t r o lf o ri n f o r m a t i o n & r e s o u r c e s a n di t c a nd i s t r i b u t ep u b l i ck e ya n d p r o v i d e u s e r si d e n t i t ya u t h e n t i c a t i o n i n s a f e g u a r d i n gp r i v a t ek e yr e s e a r c h ,d o u b l ep r o t e c t i o n m e t h o d a g a i n s t i n f o r m a t i o nl e a k i n e s so fp r i v a t e k e y i si n t r o d u c e di nt h i s p a p e r w h i c ha d o p t s i m p r o v e db a s e d 6 4e n c o d i n ga n ds y m m e t r i c a le n c r y p t i o na l g o r i t h m o nab a s i so f p r i v a t ek e ye n c r y p t i o na n de n c o d i n g ,n e wi d e aa n di m p r o v e dm e t h o di sb r o u g h t f o r w a r d t oac e r t a i ne x t e n ti tc a na v o i ds e c u r i t yh i d d e nt r o u b l ei ng u a r d i n gk e ya n d p a s s w o r d t h r o u g hd i s c u s s i n ga n dr e s e a r c h i n gc o m b i n e w i t hv a r i o u se n c r y p t i o na l g o r i t h m s , as e c u r eu s e ra g e n tn a m e d s e c u r e u a b a s e do ne n c r y p t i o nl i b r a r yi st a k e n u p ,w h i c h i sr u n n i n go ni n t e r n e ta n di n t r a n e t t h em o s tr e m a r k a b l ec h a r a c t e ri st h a ts e c u r eu a d o n td e p e n do na n y s p e c i a le n c r y p t i o na l g o r i t h m t h i ss y s t e mp r o v i d e st h es t a n d a r d i n t e r f a c eo f a d d i n gn e we n c r y p t i o na l g o r i t h m s a f t e ran e we n c r y p t i o na l g o r i t h mi s 2 d e v e l o p e do rc r e a t e d ,i tc a nb ea d d e di n t oa l g o r i t h ml i b r a r y t h e n ,t h es y s t e mh a s s w o n ge x p a n s i b i l i t y t h em a i ni d e ao ft h ed e s i g n i n gi s t ot a k ev a r i o u se n e r y p t i o n a l g o r i t h m sa sac o m p o n e n t o ft h ed a t a a s e ,a n da l l o w su s e rt os e l e c ta n ya l g o r i t h m b yi t sd i f f e r e n tn e e d s ,m e a n w h i l e ,t h es e c u r i t yl e v e li sc o n s i d e r e d s o ,i ti sf e a s i b l e t h a tu s e r b i n d i n gt o g e t h e rw i m k i n d so f e n c r y p f i o n a l g o r i t h m s 。 s e c u r e u aa b s o r b s t h ec h a r a c t e r i s t i c so f o t h e r s e c u r i t yv a n s f e rs y s t e m s ,s u c h a s : c r e a t e dp u b l i ck e yw i t hp k la n dl d a pd i r e c t o r ys e r v i c e ;e r e m e ds e c u r e u au s e r i n t e r f a c ew i t hj a v a m a i la n dj a v a s e c u r et e c h n i c a l ;s e tu pd a i l yf i l e sr e c o r dw h i c h w o u l db ea u d i t e d e a s i l y ;a p p l i e dd i g i t a ls i g n a t u r e i nu n d e n ya n di t se t c h u a n gs u m e i ( c o m p u t e rs c i e n c e ) d i r e c t e d b yp r o f e s s o r :w a n gy i g a n g k e y w o r d s :n e t w o r ks e c u r i t y , c r y p t o l o g y ,e n c r y p t i o na l g o r i t h ml i b r a r y ,l d a p ,u a 3 1 1 网络数据安全概述 第一章引言 计算机的应用和i n t e m e t 的普及,尤其是近年来网络上各种新业务的兴起,如 网络银行、电子钱包和电子商务的快速发展,网络的重要性及其对社会的影响越来 越大。其中存贮、传输和处理的信息有许多是重要的政府宏观调控决策、商业经济 信息、银行资金转帐、股票证券、能源资源数据、科研数据等重要信息,有很多是 敏感信息,甚至是国家机密。保障这些信息安全的重要性,正随着全球信息化步伐 的加快而变得越来越重要。采取某些技术来防治对网络数据的破坏已成为网络应用 中的当务之急。 1 1 1 网络数据的安全需求 人们正处在一个“信息爆炸”的社会。在计算机网络日益普及和扩展的今天, 通过网络,人们可以方便地传递数据、共享信息。但另一方面网络中的黑客给人们 带来了不安,于是对网络安全的要求更高,涉及面更广。不但要求防治病毒,还要 提高系统抵抗外来非法黑客入侵的能力,提高对远程数据传输的保密性,避免在传 输途中遭受非法窃取。 一般来说,由数据库收集或存储的大量数据,由于传输中的公共信道或存储的 计算机系统非常脆弱,容易受到攻击:一种是从传输信道上截取信息,或从存储的 载体上偷窃或拷贝信息,这称之为主动攻击,其结果可能引起数据或文件的混乱, 严重时可能导致信息处理系统完全失控。对于这些可能受到的攻击除了制定法律外, 还需要有合适的保护措旌。加密技术是保证信息安全一个必不可少的手段,加密技 术的核心就是密码技术,分组密码是目前比较流行的加密技术1 1 1 。 信息网络国际化、社会化、开放化和个人化的特点,决定了它在给人们提供信 息资源共享、给人类带来数字世界的同时,也投下了不安全的阴影。在2 l 世纪,谁 掌握了信息,谁就掌握了主动权。国际上围绕信息的获取、使用和控制的斗争愈演 愈烈。信息安全将决定世界政治和经济的明天,已成为影响国家安全、社会稳定和 经济发展的企局性问题。 但是,安全的意识往往建立在人们为安全付出了惨重的代价之后。没有9 l l 事 孛,美藿对撬场懿l 栗安帮低空爨德秘会簿敦轾心;没有历史上对镶行戆器耱玫_ 夤, 银行不会率先建立较现代的信息安全体系;如果国内证券公司没有受到攻击,则证 券界对信息安全的认识不会很快上一个台阶。 针对霹络痿惑安全露浆豹隧天冷毒,网终安全繁珞正在发生蓬大戆转交;出售 息保护转为对信息、系统、操作等多项保护;由技术安全转为对技术、管理、法律 的综合安全;由静态防护转为动态防护;由消极防御转为积极防御:由点防御转为 瑟茨缬往l 。 信息安全随着新技术的出现和发展面临多样化、蔓延化、深层次化、潜伏化和 严重化的威胁。这种威胁在与日俱增。 1 1 2 网络数据安全研究的内容 网络信息安全研究内容很多,它涉及安金体系结构、安全协议、安全密码、信 息分析、安全监控、应怠处理等。密码是解决网络倍患安全的关键技术。网络辫:境 下售崽兹保密性、完整瞧、可月牲窝抗抵赖瞧,郡爨要采翅密羁技本来姆决。题入 w t o 后,我国面临一个全球电予商务、电子政务的大环境,信息产业将砸临着重大 的挑战。安全保密研究成为大家感兴璐的并能为入服务的科学,社会的发展对安全 保密豹磅究提窭7 越寒越褰熬要求。 计算机网络憝现代信息系统的一个重要组成部分,而信息安全的首要任务是控 制信息的访问,原则上说,只商专门授权的人才能穗阅、建立、删除和修改信怠。 然压,在理实藿爨中,纛论是羚态薅患( 数攥疼、管理覆垮、系统软搏等) = ;荟是动 态信息( 在通信途中的编码信息) 都受到来囱各方颟的干扰和破坏,其严重性不仅 可造成巨大的经济损失,还可以使整个系统瘫痪1 4 l 。 溉然存在诸多危害专 舞辍嬲络安全戆嚣索,叁然就为入痰提滋了一些毒特璞究 的课题。按静态数据和动态数据在网络传输系统中的安全性角度肖如下几方面的研 究内容: 1 主橇萃嚣终端数据安全谯 众所周知,构成一个计算机网络,必须是由若干台主机与终端经相应的电缆连 2 接,在网络软件管理下,方可实现。面一个正在运行的网络,其大量的数握、售息 均存放在主机或终端规内、外存中,妞德防止 法用户的访蛔,是至关羹要浆。在 这一方瑟,羲毋究螅方法可有鞠耱;8 设置难戬被人猜测或推戮戆滔令;b 浚置磁卡、 密钥识蹦;e 设饕指纹、签名、声音识瘸;d 般鬟焉户特征谈羽系统。 辘葺前的应灞情况来看,a 、b 两项稻对较为成熟,甚大薰应用实际领域。但好 的口令系统及密诵仍是研究的热点,而c 、d 两项目前尚处迸步研究完善之中。 2 通信途中数据安全性 随着计算机网络的全球化进程不断加快,计算机通信的范围巴远远超出局域网 络的管辖区。因此,在传输中的数据极易受到攻击,传统的对繁毒如下三秘:熄 通信数据加密使合法收信人以铃的人看不懂;b 在逶绩嬲上采鼹分缎交换,遥过调 换分组的颁序及变更传送路由防止整个数据被盗;e ,将逶信线路与设备教置在舞人 黢以接近的堍方,并采用不鬟被截取静传输方法( 翔光通信) 。 然 掰,通信线路两往往是有线、无线通信的有视结含,卫星通信、微波通信也 已加入到计算梳广域阏中,难免出现被人窃听,从这种意义上说,数据加密方式是 目前保护通信线路上的数据安全的有效方法。 3 箍个网络的数据保护 在整个数据通信网络上,必须采取的数摆保护措施包括确认遥信本身的会法性 和保谜通信数据的合法牲鼹个方联,视不网鬟求,毒三秽保护管理方法:a 。嬲终赞 理中心集中管理;b 。各主诗算援分数管理;c 潮络内黪交换棍( 节点) 分数管灌。 健是,在用翔密方式遴罩子逶僚的数据通信阏巾,糯密蔫静密锈由各主梳逡行分 散管理是缀难办蓟的,往往采用在阿络内集中管理密镅的方法。此外,在利用加密 签名等手段来验证信息时,还需要有个部门来确切证明该信息是否是发信人发的, 因此,要采用集中管理方式,在管理中心将各用户的签名( 实际上是加密用的密钥) 一一登记。 燎于以上所述,网络信息安全研究内容缀广。对傣息安全的技术分类方法枣几 种,可以憋监控、扫攒、检测作为一类;姆烟寮认涯、防攻老翻防癍毒炸必第二类; 审计作为第三类傣息安全技术浆镕系缝梅霉以出甏1 1 表示,冒戳看爨,信惑安全 静核心技术仍然是凝密技术。 图1 1 信息安全技术的体系结构 在网络安全的实施中,不仅要考虑链路层的安全,还要考虑应用层的安全。在 互联网中,更实际的解决方案是协议层和应用层。图l 一2 所示是安全管理层次模型。 l安叠管理一 图1 2 安全管理层次模型 管理层的安全包括安全技术和设备的管理、安全管理制度、部门与人员的组织 规则、对安全设备的访问控制措施、安全设备配置和设置的政策、审批的权限。应 用层的安全覆盖范围更广泛,包括数据库、w e b 服务、电子邮件、交互机和路由器、 防火墙和网关、应用程序和平台安全、物理隔离、口令、防病毒、防入侵检测、加 密和认证。系统层的安全包括操作系统、网络系统软件、服务器系统软件、访问控 制、权限分配、漏洞扫描、防病毒、防入侵、加密和认证。网络层安全包括路由器、 4 s w i t c h 、v p n 、加密和认证、密码机、防病毒、防入侵等。 1 1 3 网络数据安全现状 在全球普遍存在信息安全意识欠缺的状况。人们在组建一个信息系统和一个网 络的时候,并没有像买门时自然会想到买锁一样的想到信息安全和网络安全。这导 致大多数的信息系统和网络存在着先天性的安全漏洞和安全威胁。 密码有着悠久的历史,但在漫长的时间只是作为一个技巧,发展缓慢。 s h a n n o n l 9 4 8 年发表的“通信数学理论1 7 j ”,首次把数学理论运用于通信,开创了通 信研究的新视角,在科学和工程届引起了强烈的反响。1 9 7 9 年,他的保密系统的 信息理论1 8 l 的发表,为密码学建立起科学理论,宣告了科学的单钥密码编码学的 到来。七十年代中期,为适应网络化信息安全要求,密码学以空前的速度发展着。 w d i f f i e 和m h e l l m a n 的公开密钥体制以及美国加密标准( d e s ) 1 5 l 的提出,是密码发 展中的重大变革。从此,密码理论与技术不再是仅为少数人掌握的服务于政府、军 事及外交领域的学科,密码应用范围日益扩大,密码研究领域不断拓宽,密码科研 走向社会,所有这些,大大促进了密码学的发展。 国际上,公开密钥( p k i ) 建设,公开密钥密码的理论和技术仍是研究的热点。 2 0 0 0 年1 0 月2 日,美国商务部从公布的1 5 个候选密码算法( a e s ) 中1 6 1 ,依据安全( 保 密) 性,速度性能,实现实用性、通用性和灵活性标准,终选出2 1 世纪新的数据加 密标准r i j n d a e l 算法【1 6 j ,以代替已过时的d e s 。同年,欧洲计划在三年时间内, 建立起欧洲的分组密码、流密码、非对称密码、消密认证码以及h a s h 函数等算法标 准。分组密码成为了研究热点。 密码学是我国基础较好,积累较多的一门学科。我国的密码研究及其应用又很 长一段时间了,且得到了很好的应用和发展。目前就密码协议来讲,从基本的密钥 交换、鉴别、秘密共享等,到高级一些的阙下信道、盲签名、保密多方位等,这些 安全机制已经比较完备。但是,目前已有的工具或应用解决方案比较零散,也不是 很好用1 3 l 。为适应新形势下网络信息安全的需要,研究创新的密码理论,密码技术 和密码算法,仍是一项长期、十分艰巨的任务。 我国的密码研究,除国家专门机构外,已有较为广泛的社会基础,密码学是我 国基础较好,积累较多的一门学科。但是,适应新形势下网络信息安全的需要,研 究创新的密码理论、密码技术和密码算法,仍是一项长期的、十分艰巨的任务,需 要在国家主管部门的支持和引导下,凝聚国内更多的优势单位和优秀人才共同参与。 当前,密码学理论研究面临着众多挑战。对密码编码而言,面对日益增强的计 算能力,高速网络和信息安全的需求,需要发展密码理论,为创造出更强、更快、 适应性更好的密码算法提供坚实的理论基础;对密码分析而言,要为评价和检测密 码算法( 对称密码算法和非对称密码算法) 的强度提供理论准则和科学方法。 1 2 本文主要研究内容 1 2 1 背景 研究密码及其加密算法,就近几年国际上总的趋势来看,不外是: 1 、提出不同于前人的新的加密算法。如:新的分组加密算法i d e a 和a e s 。 2 、对已有算法的分析和改进。如:g o s t 等算法均是基于d e s 的改进。 通过对各种加密机制和加密算法的研究发现,现行的或已公开发表的各种机制 及算法,在实用中都有一定的局限性。一个再好的算法,在它一旦被公开后,自然 经受不起时间的考验,迟早将被破译。因此,加密机制及其算法的相对保密,将是 今后相当一段时期的主要潮流。可以说,没有一个应用了加密机制的机构愿意公开 自己的加密算法。 求变,求新永远是加密机制的主题。归纳密码算法的应用,有几个方面的欠缺: 真正的用户在实际中由于对密码理论与密码算法了解不足,往往不知道在何 种场合采用何种算法更为合理有效。 用户对网络数据安全性问题认识不够,所以虽然一些客户端软件都采用了一 些数据加密和数字签名技术,由于这些技术本身操作复杂,缺乏加密知识的用户难 以做到,致使真正使用的用户不多。因此,对于一般用户,还必须提供强有力的u a , 方便广大用户利用现有技术保护网络数据的安全。 从已有的各种算法看,均有其一定的局限性,往往不能以一概全,即一种算 法不能解决信息安全中各不相同安全内涵的需求,如信息加密,认证,知识证明等。 即便是古典密码算法,如代换,乘数,映射等,由于具有一定的隐蔽性和扩 散性,至今仍是设计现代密码算法不可缺少的组成部分,如何使用前人已经创造的 各种算法为后人所充分利用,即每一算法的有效核心部分是否可成为后人构造新算 6 法的+ 个基元,亦是一个大难题。 鉴于上述,从网络信息安全应用的现状、问题和解决方案来看,在集成已发表 的有效密码算法的基础上,设计并开发出一个可视化的简单易操作,友好的用户代 理,使之成为系统解决方案的最有效的、最基本的工具是本文的构想。 1 2 2 研究内容 本文的目标是保障网络数据的安全传输和保密,在分析了现有的网络传输和数 据保密的保护方法的前提下,结合现代软件发展的趋势,提出了一种面向用户个体 的基于算子加密库多安全级别的加密技术,设计并开发出一个可视化、简单易操作、 友好的安全用户代理s e c u r e _ u a ,提供可靠的透明的信息加密功能,使之成为系统 解决方案的最有效的、最基本的工具。 s e c u r e _ u a 的最重要特性之一是它不依赖于任何一种特殊的加密算法。每种广 为人知的加密算法都各有利弊,且新加密算法的开发一直在进行。s e c u r eu a 允许 开发出新算法时将它们插入。它采用一种基于混合加密机制与多种安全机制相结合 的方法来保证网络数据的安全。正如文章的题目“基于加密库的用户代理s e c u r eu a 的设计与实现”所述,s e c u r e u a 是一个面向加密库的用户代理。用户无需网络安 全的基础知识,只要根据安全保密需要选择相应的安全等级,用户代理自动从算予 库中随机调用该加密级别的若干算子或算法组合对网络数据进行加密解密处理。采 用不同安全级别对网络数据加密( 见4 3 节) ,每个安全等级有多个算子或算法组合 可供用户代理随机选择,且每种组合由多个加密算法或重构后的加密算法组成。在 算法选择上,留有接口以装载自行开发的算法,满足用户网络数据安全的特殊需要 ( 见4 4 节) 。 相对于已有的安全用户代理,该方案的主要特点如下: 1 基于算子库,不依赖于任何一种特殊的加密算法,高级用户可以随时添 加或者删除自行开发的算法。 2 多安全级别的数据加密,通信中的数据安全级别分为:绝密、机密、秘 密、一般和普通级5 级,可以满足用户的不同安全保密需求。 3 基于l d a p 的公钥库实现,将l d a p 应用于p k i 系统,可以降低系统身 份验证的负载量和系统管理员的维护工作,提高p k i 的运作效率。 4 提供了回执的功能,具有收信方不可否认性,回执的过程类似于t c p i p 中防止重复连接的三次握手法。 5 提供了日志文件,记录用户的所有操作,便于追踪。 1 2 3 本文结构 第一章引言指出了研究背景及目标。 第二章第三章综合分析了安全用户代理的实现基础。第二章通过介绍密码体制、 密码算法类别,密码算法的发展,最终介绍密码算法库思想和实现的设计构想,这 是安全用户代理进行数据安全处理的核心部分。第三章是关于安全用户代理实现的 各种基本技术及其相关研究,如l d a p 服务器在p k i 中的应用,密钥的产生和私钥 的保护,j a v a m a i l 邮件收发实现方法探讨,j a v a 密码术体系结构在s e c u r eu a 系统中的应用等。 第四章第五章是关于安全用户代理s e e u r eu a 的描述。其中第四章主要介绍了 s e c u r eu a 的功能及特点;第五章是关于s e c u r eu a 实现的具体描述。 第六章对s e c u r eu a 的分析小结及发展的展望。 第二章网络数据加密安全体制 现实世界中系统的安全往往是通过各种各样的手段来保障的,如确定使用者 的身份、将重要信息锁在保险柜中、审核各种信息等等;在信息世界中保障系统 安全的主要手段就是各种各样的安全机制,如加密机制、签名机制、访问控制、 认证机制等等。本章主要分为两部分,首先介绍保证现行的网络数据安全的各种 算法和发展,然后引出并介绍s e c u r eu a 安全用户代理进行数据安全处理的核心 部分:密码算法库思想和实现的设计构想。 2 1 数据加密体制及其分类 本节介绍了在s e c u r eu a 中保护传输数据安全的算法和保护密钥安全的算法。 密码体制从密钥管理原理上可分为两大类,即单钥密码体制和双钥密码体制。在 i m e m e t 中,主要的加密算法可分以下三类: 单钥密钥加密算法( 对称密钥加密算法) 双钥密钥加密算法( 公开密钥加密算法) 认证密码散列( h a s h ) 函数 2 1 1对称密钥加密技术 单钥体制是指信息的发送方和接收方均共享一把密钥,在现代网络通信条件下, 该体制的一个关键问题是如何将密钥安全可靠地分配给通信对方,并进行密钥管理。 密文 图2 - 1 单钥体制加密、解密 由图2 - 1 可知,单钥密码体制在实际应用中,除了要设计出满足安全性要求的加 密算法外,还必须解决好密钥的产生、分配、传输、存贮和销毁等多方面的问题。 因为通信对象的多元性,导致了一个用户必然要拥有多个不同对象的密钥,方可安 9 全可靠地进行通信。 在单钥体制下,对明文信息进行加密一般有两种方式:一是按明文字符( 如 a s c i i 字符) 逐位地加密,此种方式又称为流密码( s t r e a m c i p h e r ) ;另一种是将明 文信息按一定长度先进行分组,然后逐组进行加密,此种方式又称为分组密码( b i o c k c i p h e r ) 。 单钥体制不仅可用于数据加密,也可用于消息的认证。单钥密码体制主要由古 典密码算法发展演变而成,在渗透了一些新的方法后,使单钥体制仍然是活跃在保 密通信舞台上的主要成员之一。 分组加密算法是近二十年来最为活跃的加密手段之一,基于分组加密的算法有 很多阳其中最为著名的当推d e s ( d a t ae n c r y p t i o ns t a n d a r d ) 1 1 0 j ,该算法于1 9 7 7 年正式投入使用,直到1 9 9 8 年,二十多年来一直作为美国联邦信息处理标准,d e s 算法的出现是密码学史上的一个里程碑,因为以往的任何设计对于密码体制及其设 计细节都是严加保密的,而d e s 却将算法公开,任人测试、研究和分析,一直到被 使用了二十年之后,才有报道破译了d e s i l l l 。 d e s 是一种对二进制数据进行加密的算法,数据分组长为6 4 b i t ,密钥长也为 6 4 b i t ,经1 6 轮的迭代,乘积变换,压缩变换等,输出密文也为6 4 b i t ,d e s 算法的 安全性完全依赖其所用的密钥。 前苏联国家标准局采用的加密算法g o s t 亦是分组加密算法的典型代表1 1 2 l 。 g o s t 算法亦是针对6 4 b i t 明文输入,产生6 4 b i t 密文输出,所不同的是,g o s t 采 用2 5 6 b i t 密钥,需经3 2 轮加密变换才产生输出,因此,g o s t 的抗攻击能力在某种 程度上并不比d e s 差。 而于1 9 9 2 推出的另一个分组保密算法i d e a ( i n t e r n a t i o n a ld a t ae n e r y p t i o n a l g o r i t h m ) 是近年来提出的分组加密算法中较为成功的方案之- - 1 1 3 1 1 1 4 】。该方案的核 心是设计了一个乘法力日法非线性构件,通过8 轮迭代,能使明码信息更好地扩散和 混淆。 1 9 9 7 年n i s t 公开征集高级加密标准a e s ( a d v a n c e d e n c r y p t i o ns t a n d a r d ) ,以 取代d e s 。经过三轮筛选,比利时的j o a nd a e m a n 和v i n c e n t r i j m e n 提交的r i j d a e l 算法被提议为a e s 的最终算法。这一新加密标准的问世将取代美国国家标准技术研 究所于1 9 7 7 年所采用的显得过时的密匙长度不变的太短的d e s 数据加密标准,成 为2 1 世纪保护国家敏感信息的高级算法。r u d a e l 算法是一种分组加密方法,信息 的内容是1 2 8 位长度的分组为加密单元。加密密匙长度有1 2 8 ,1 9 2 或2 5 6 位多种选 择。而d e s 加密的分组长度是6 4b i t ,密匙长度只有6 4b i t 。三重d e s 加密的分组 长度通常是6 4b i t ,而密匙长度上11 2b i t 。 2 1 1 1d e s ( d a t ae n c r y p t i o ns t a n d a r d ) 算法 d e s 加密有1 6 轮,下面以第一轮为例介绍d e s 的加密步骤i l o l 口 1 任何给定明文将被分割成6 4 位长的明文组,逐一加密。 2 对给定明文组x 通过一个规定的初始置换i p 来重新排列x 中的比特( 即打乱原 先的排序) ,令i p ( x ) = x 0 = l o r 0 ,l 0 表示置换后x o 的前3 2 位,r 0 表示 后3 2 位。 3 通过扩展函数对r 0 运算,使r o 由3 2 位变为4 8 位,其算法核心是对原3 2 位的 某1 6 位重复取值,记为e ( r 0 ) 。 4 将e ( r o ) 与第一轮密钥k l 进行异或运算,此处k l 为任意4 8 为二进制串, 记为e ( r 0 ) o k l ,产生的4 8 位比特以6 位为一组,记为e ( r o ) o k l = b ( 4 8 ) = b l b 2 8 3 8 4 8 5 8 6 8 7 8 8 。 5 将每一b i 分别通过对应的s i 置换。由于s 盒是事先设计好的,它是一个固定的 4 行1 6 列矩阵,每行中所有的元素取遍o 1 5 。对给定长度为6 的比特串,b i = b l b 2 b 3 b 4 b 5 b 6 ,计算s i ( b i ) 如下:由b l b 6 两比特确定s i 的行t 的二进制表 示( o t 3 ) ,而b 2 b 3 b 4 b 5 确定s i 的列l 的二进制表示( 0 l 1 5 ) ,由行坐标 和列坐标所唯一确定的4 1 6 矩阵的元素,记为c i ,c i 的取值范围为o 1 5 , 故其长度为4 比特,则有c i = s i ( b i ) ,( 1 i 8 ) 。 6 由于每个b i 经过s i 置换后由6 位变成4 位,故由原先4 8 位b 经置换产生3 2 位比特串c = c l c 2 c 3 c 4 c 5 c 6 c 7 c 8 ,再将c 经p 转换后得到比特串p ( c ) ,记 为f ( r 0 ,k 1 ) 。 7 计算r 1 = l 0 0 f ( r o ,k 1 ) ,l 1 = r 0 。 l i r l 做为第一轮的输出,是第二轮的输入,如此循环,经过1 6 轮,当最后l 1 6 r 1 6 经过i p 一1 置换后,便是可用来传递的密文。 2 1 1 2i d e a ( i n t e r n a t i o n a ld a t ae n c r y p t i o na l g o r i t h m ) 算法 i d e a 算法基于“不同代数群之间的混和运算”的概念,它把明文按6 4 位分 块输入,在1 2 8 位密钥的控制下,将明文转换为等块长的6 4 位密文输出,其密钥空 间为2 1 2 8 。i d e a 加密算法的基本工作原理可用图2 - 2 描述如下1 2 1 l l ”l : 由图2 2 可见,x 1 ,x 2 ,x 3 ,x 4 作为某一轮的输入( o 轮数 9 ) ,每个x 二进制 长度为1 6 位,每个z i ( j ) 为1 6 位长的密钥,每一轮1 6 6 = 9 6 位密钥取自1 2 8 位 总密钥,且密钥的选取每轮根据密钥变换表而定,每一轮的输出则作为下一轮的输 入。 图2 - 2i d e a 加密过程 运算符。为异或运算,田为模2 n 加,0 为2 n + l 乘,田,0 的真值表如表2 1 表2 2 。 表2 - 1 口真值表表2 - 20 真值表 u 0 l1 0 0 10 01 l0 0 0 10 01 01 1 0 0 1 01 01 00 1 1 1l l0 il o o0 00 l1 0 0 10 01 10 0 0 l0 00 l1 0 1 01 11 00 00 l l l1 0l l0 10 0 分析i d e a 算法,其核心是将输入数据再划分为若干子块,在子块间两两交互 运算,且运算的结果再作下一运算的输入,数据从输入到输出( 第一轮) 一共要经 过多次运算,这样,便达到了完全混淆和乱码的目的。 2 1 1 3a e s ( a d v a n c e de n c r y p t i o ns t a n d a r d ) 算法1 1 5 1 1 1 6 1 1 1 7 1 新的加密算法r i j n d a e l 是出两位比利时工程师提交,分别是p r o t o n w o r l d i n t e r n a t i o n a l 的j o a nd a e m e n 和天主教大学电子工程系的v i n c e n tr i j m e n 。这两位在 密码学界都有一定的知名度。该算法的原形是s q u a r e 算法,它的设计策略是宽轨迹 策略( w i d e t r m ls t r a t e g y ) 。r i j n d a e l 算法是一个数据块长度和密钥长度均可变的迭代 分组密码,数据块和密钥长度都可分别为1 2 8 、1 9 2 或2 5 6 位。 数据块要经过多次变换操作,每次变换操作所产生的中间结果称为“状态”。状 态可由一个4 行、n b 列的二维字节数组表示,n b 等于数据块长度除以3 2 ,如表2 3 所示。 表2 - 3n b = 6 时的状态编辑表 a o oa 0 1a o 2a 0 3a o 4a 0 5 a 1 oa 1 1a 1 2a l ,3a 1 4a 1 5 a 2oa 2 1a 2 2a 2 3a 2 4a 2 5 a 3 oa 3 1a 3 2a 3 3a 3 46 3 5 密钥也可类似地由一个4 行、n k 列的二维字节数组表示,n k 等于密钥长度除 以3 2 ,如表2 - 4 所示。在某些情况下,可以认为这些数据块是4 字节向量的一维数 组,每个向量包含数的个数与相应的二维数组表述中的列数相等。 表2 _ 4n k = 4 时的密钥编排表 k o 0i ( 0 ,k o 2k o 3 k 1 ok 1 1k t 2 k 13 k 2 0k 2 1k 2 2k 2 3 k 3 0i 3 1k 3 2k 3 3 r i j n d a d 在它的外部接口所用的输入输出被认为是从o 4 + n b - 1 个8 位字节的 一维数组。密钥被认为是从0 4 * n k 1 个8 位字节的一维数组。因此,这些数据块 和密钥分组长度都分别为1 6 ,2 4 或3 2 ,数组下标分别为o 3 5 ,0 2 3 ,o 3 1 。密 码输k ( 原文) 字节按a 0 0 、a 1 0 、a 2 0 、a 0 1 、a 1 1 、a 2 1 、a 3 1 、a 4 1 、的顺序映射 为状态中的字节密钥按k 0 0 、k 1 0 、k 2 0 、k 3 0 、k 0 1 、k 1 1 、k 2 1 、k 3 1 、k 4 1 、 的顺序映射为状态中的字节。加密操作结束时,密码输出( 密文) 按同样的顺序从状 态中取出。因此,如数据块的一维数组和二维数组下标分别为n 和( i ,j ) ,则有: i - - nm o d 4 ;j = i 似】;n = j + 4 * j 轮数n r 由n b 和n k 决定,它们的关系如表2 5 。 表2 - 5 轮数n r 的取值 n rn b - - 4n b = 6 n b = 8 n k = 11 21 21 4 n k = 61 21 21 4 n k = 81 41 41 4 m j n d a e l 算法的加密过程由4 个变换组成: ( 1 ) b y t e s u b 变换 b y t e s u b 变换是作用在状态中每个字节的非线性字节置换,这个置换表( 或称s 一盒) 是可逆的,并由以下两个变换组成:在域g f ( 2 8 ) * 取字节的乘法逆,o o 的 乘法逆是它自己:在域g f ( 2 ) 中进行如下定义的仿射变换: + ( 2 ) s h i f t r o w 变换 s h i f t r o w 变换是将状态行循环移位,0 行不移,第l 行移c 1 字节,第2 行移 c 2 字节,第3 行移c 3 字节,移位量c l 、c 2 、c 3 与数据块长度n b 有关,如表2 - 6 所示。 表2 - 6 移位量与数据块长度的关系 n bc 1c 2c 3 4123 6l23 8134 加m也妇舛巧娟订 l l 1 1 o o o 1 1 1 l o o 0 1 1 1 o o 0 l 1 l 1 o o o l l l l 1 o o 1 1 1 1 1 o 加h坨坞m坞均” ( 3 ) m i x c o l u m n 变换 m i x c

温馨提示

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

评论

0/150

提交评论