(基础数学专业论文)基于aes和rsa组合算法的软件加密系统的研究与应用.pdf_第1页
(基础数学专业论文)基于aes和rsa组合算法的软件加密系统的研究与应用.pdf_第2页
(基础数学专业论文)基于aes和rsa组合算法的软件加密系统的研究与应用.pdf_第3页
(基础数学专业论文)基于aes和rsa组合算法的软件加密系统的研究与应用.pdf_第4页
(基础数学专业论文)基于aes和rsa组合算法的软件加密系统的研究与应用.pdf_第5页
已阅读5页,还剩53页未读 继续免费阅读

(基础数学专业论文)基于aes和rsa组合算法的软件加密系统的研究与应用.pdf.pdf 免费下载

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

文档简介

基于a e s 和r s a 组合算法的软件 加密系统的研究与应用 基础数学专业研究生:卜晓燕指导教师:张根耀副教授 摘要:随着计算机技术的飞速发展,各种新技术、新思路不断涌现,各种软件 越来越大,技术内涵也日趋复杂。优秀软件成为他人窃取的重点,因此软件保护和数 据加密技术成为软件开发中越来越重要的一个环节。 目前在软件加懈密技术中应用到的密码体制主要分为对称密码体制与非对称密 码体制。a e s 密码体制属于对称密码体制,是2 1 世纪的高级分组加密标准。该算法 具有算法简洁、高效、安全性高等优点,具有广泛的应用领域。而r s a 密码体制是 当前非对称密码体制的突出代表之一,因其具备数据加密、身份认证和数字签名等功 能,正在被越来越多的学者和研究机构所重视。 i 本文在广泛查阅大量国内外有关软件加解密方面资料的基础上,通过对现有数 据加密技术的分析,提出了一种将a e s 和r s a 相结合的组合加密系统。利用a e s 算法加密速度快,而r s a 安全性高这一特点,从而有效的解决了速度和安全二者不 能兼顾的问题。提高了软件的加密处理速度与加密强度。 1 对目前普遍使用的软件加懈密技术进行了简单分析,使研制的软件加密系统 能满足需求,具有先进性和实用性; 2 :分析了数据加密模型,并对目前现存的有代表性几种密码体系的思想、方法 进行了研究; 3 。对a e s 算法、r s a 算法两种算法的数学原理、算法实现及算法优化进行了详 细的讨论; 4 针对现有数据加懈密方法各自的优、缺点,结合很多具体项目既要求一定的 加密强度又需要较高的处理速度的需求,本文提出了一种基于a e s 与r s a 算法的缀 合加解密方案。 5 基于以上提出的解决方案,给出了软件加解密系统的设计思想、算法流程及 实现过程。 本文的研究与实践对于软件加懈密方面技术进步具有一定的参考价值和应用价 值。在一些既要求加解密速度快又要求一定的安全性的应用领域中具有很好的应用 前景。 关键词:算法软件加密解密对称密码体制非对称密码体制 r e s e a r c ha n da p p l i c a t i o nf o rt h es o f t w a r ee n c r y p ts y s t e m b a s e do nt h ec o m b i n a t i o na l g o r i t h mw i t ha e sa n dr s a a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fc o m p u t e rs c i e n c e v a r i o u sk i n d so ft e c h n o l o g ya n d i d e a sa p p e a r , a n dt h es o f t w a r ei si n c r e a s i n gi ns i z ea n dt e c h n o l o g y e x c e l l e n ts o f t w a r e b e c o m e st h ef o c u so fs t e a le d i t i o n t h e r e f o r e ,t op r o t e c ts o f t w a r ea n dr e s e a r c hd a t at h e e n c r y p t i o nt e c h n o l o g ya r ev e r yi m p o r t a n ti ns o r w a r ed e v e l o p m e n t a tp r e s e n t , c r y p t o s y s t e mu s e di ns o f t w a r ee n c r y p t i o na n dd e c r y p t i o nt e c h n o l o g yi s d i v i d e di n t os y m m e t r i cc r y p t o s y s t e ma n da s y m m e t r i cc r y p t o s y s t e m a e sc r y p t o s y s t e m b e l o n g st os y m m e t r i cc r y p t o s y s t e m ,i ti st h ea d v a n c e de n c r y p t i o ns t a n d a r di nt h e2 1 “ c e n t u r y t h i sa l g o r i t h mi s b r i e f , e r i c i e n ta n ds a f e i th a sb e e nw i d e l yu s e d r s a c r y p t o s y s t e mi st h ef a m o u sr e p r e s e n t a t i v eo ft h ep r e s e n ta s y m m e t r i cc r y p t o s y s t e m d u e t ot h ef u n c t i o n so fd a t ae n c r y p t i o n , i d e n t i t yr e c o g n i t i o na n dd i g i t a ls i g n a t u r e ,m o r ea n d m o r es c h o l a r sa n dr e s e a r c hi n s t i t u t e sa r cp a y i n ga t t e n t i o nt oi t b a s e d0 nt h ee x p l o r a t i o no ft h er e f e r e n c e sc o n c e r n i n gs o f t w a r ee n c r y p l i o na n d d e c r y p f i o n , t h i sp a p e rp u t sf o r w a r da na e sa n dr s ac o m b i n e dd a t ae n c r y p t i o ns y s t e m b ya n a l y z i n gt h ec u r r e n td a t ae n c r y p t i o nt e c h n o l o g y b ym a k i n g u s oo f t h er a p i ds p e e do f a e si nd a t ae n c r y p t i o na n dt h eh i g hs e c u r i t yo fr s a , t h i ss y s t e me f f e c t i v e l ys o l v e st h e p r o b l e mo f i n c o m p a t i b i l i t yo f s p e e da n ds e c u r i t y , t h u si m p r o v e s t h ee n c r y p t i o ns p e e da n d i n t e n s i t y 1 t h i st h e s i sa n a l y z e sb r i e f l yt h ew i d e l yu s e ds 0 1 a r ee n c r y p t i o n d e c r y p t i o n t e c h n o l o g ys oa st om a k et h i ss y s t e mm e e tt h en e e d so ft h eu s e r s i ti sa d v a n c e d a n d p r a c t i c a l 2 t h i st h e s i sa n a l y z e st h em o d e lo fd a t ae n c r y p t i o na n dd i s c u s s e st h ec u r r e n t r e p r e s e n t a t i v ei d e a sa n dm e t h o d so f c n e r y p t i o ns y s t e m 3 t h em a t h e m a t i c a lp r i n c i p l e s ,r e a l i z a t i o na n do p t i m u mo fa e sa n dr s aa r ca l s o d e t a i l e di nt h i st h e s i s 4 r e g a r d i n gt ot h ea d v a n t a g e sa n dd i s a d v a n t a g e so ft h ec u r r e n td a t ae n a y p t i o n a n dd e c r y p t i o nm e t h o d sa n dr e l a t i n gt ot h es p e c i f i cp r o j e c t sw h i c h r e q u i r eb o t h i n t e n s ea n dq u i c ke n c r y p f i o n ,t h i sp a p e rp u t sf o r w a r da e n c r y p t i o na n dd e c r y p t i o n & s i g nb a s e do nt h ec o m b i n a t i o no f a e sa n dr s a 5 b a s e do nt h ea b o v ed e s i g n , t h ei d e a , f l o wc h a r ta n dp r o c e d u r eo ft h ed e s i g na r e g i v e n t h i sr e s e a r c ha n dp r a c t i c ea l ev a l u a b l ef o rr e f e r e n c ea n da p p l i c a t i o n t h es y s t e mv f e n c r y p t i o na n dd e c r y p t i o nh a sab r i g h tp r o s p e c ti ns o m ee n c r y p t i o na n dd e c r y p t i o n a p p l i c a t i o n sw h i c hr e q u i r eb o t hh i g l ls p e e da n ds e c u r i t y g r a d u a t e :b u x i a o y a n o v l a j o r :p u r em a t h e m a t i c s ) d i r e c t e db y a s s o p r o f z h a n g g e n y a o k e q s w o r d s :a l g o r i t h ms o f t w a r ee n c r y p t i o nd c c r y p t i o ns y m m e t r i cc r y p t o s y s t c m 创新性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不包 含其他人已经发表或撰写过的研究成果;也不包含为获得延安大学或其它教育机构 的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已 在论文中做了明确的说明并表示谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名: ! ! 整整日期:兰立:笸 关于论文使用授权的说明 本人完全了解延安大学有关保留和使用学位论文的规定,即:研究生在校攻读 学位期间论文工作的知识产权单位属延安大学。本人保证毕业离校后,发表论文或 使用论文工作成果时署名单位仍然为延安大学。学校有权保留送交论文的复印件, 允许查阅和借阅论文;学校可以公布论文的全部或部分内容,可以允许采用影印、 缩印或其它复制手段保存论文。( 保密的论文在解密后遵守此规定) 本学位论文属于保密在年解密后适用本授权书。 本人签名:l = 燃 导师签名:主塾! 兰望 日期: p 1 。6 基于a e s 和r s a 组合算法的软件加密系统的研究与应用 第1 章绪论 1 1 引言 自1 9 4 6 年第一台电子计算机诞生以来,计算机的应用已进入人类生活的各个 领域。然而,众所周知一套完整的计算机系统是由计算机硬件和软件两部分组成的, 计算机软件是计算机的“灵魂”,离开了软件的“裸机”等于废铁一堆。随着计算 机技术的不断发展,软件越来越显示出它的重要性。 计算机软件是集知识、经验、方法和智慧等多种因素创造而成的,是研究与开 发小组人员集体智慧的结晶。软件的一个很大的特点就是生产难度大却很容易被复 制,生产的成本高而复制的手段和费用却较低。因而研究软件保护技术是保护软件 研发人员著作权和知识产权的一个非常重要的手段。 1 2 论文的研究意义及常见软件保护技术 软件安全是计算机安全领域目前研究最为薄弱的环节。由于计算机软件是一种 特殊的商品,具有价值,但是它极易被复制,所以软件加密技术就成了保护软件产 品的一种必要手段。为保护软件权益,目前主要实施法律策略和技术策略。世界各 国都制定了各自的软件保护法,1 9 8 0 年美国首先规定用著作权保护软件,我国也在 1 9 9 1 年6 月颁布了计算机软件保护条例) 3 0 l ,开始以立法的手段对软件实施保护。 规定作为知识产权的软件是一种专有权利,未经作者许可不得使用该权利,只有软 件所有者有复制、修改、翻译、注释、发行等权利。由于软件安全问题涉及的范围 较广,监督力度不够,执法困难,所以仅靠立法的收效是很有限的。因此,软件的 研究与开发人员为保护自身的权益,就必须积极研究和发展软件保护技术,不断改 进软件的加密算法。 常见的几种软件保护方法有 3 2 , 3 3 ; 数据加密、身份识别、访问控制、移动控制、推断控制、防拷贝加密、防静态分 析与反动态跟踪。 第l 章绪论2 目前所采用软件的加密方式主要可分为两大类:软件加密和硬件加密。硬件加 密主要指加密系统依赖特定的硬件( 如:加密狗、加密卡等) 来实旌加密的过程,因 其成本较高,本文主要研究不依赖于硬件的软件加密方法。 1 3 国内外软件加密算法的研究现状 目前国内外软件加密技术中使用的加密算法主要有: 1 r i j n d a e l 算法 a 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 s ) 作为d e s ( d a t ae n c r y p t i o ns t a n d a r d ) 算 法的替代者将成为未来数十年最重要的对称密码算法。2 0 0 1 年夏天,美国国家标准 技术协会已经将j o a n d a e m o n 和v m c e n t r i j m e n 提出的密码算法r i j n d a e l ( 算法名称采 用了他们两人姓的组合) 作为下一代对称密码算法的标准,该算法借鉴了很多s q u a r e 算法的设计思想。 r i j n d a e l 算法在设计时就考虑到了3 个原则:抵抗已知的密码攻击方法;兼顾速 度和代码大小以适应各种平台的需求;设计思想简单。大多数加密算法每轮的转换都 具有f e i s t e l 结构这种结构的特点是其中间状态的部分字节被没有改变地置换到其 他位置,显然这会将一些密钥信息泄露给密码分析者,而且近几年提出的差分分析和 线性分析方法都是针对f e i s t e l 结构设计的密钥分析方法。作为下一代对称密码算法 的r i j n d a e l 算法在每轮的转换中并不具有f e i s t e l 结构,它由3 个独特的可逆均衡转换 组成,我们将它们称之为层。这些均衡转换可以将中阅状态的每一位按照同样方式处 理,进而避免了f e i s t e l 结构产生的加密信息不均匀的问题;相关测试也表明,7 轮以 上的r i j n d a e l 算法对于针对s q u a r e 算法提出的攻击方法也是安全的。 2 椭圆曲线密码系统e c c ( e l l i p t i cc u r v ec r y p t o g r a p h y ) 1 9 7 6 年d i t t i e 和h e l l m a n 在 l ,g c d ( a ,所) = l ,贝存在c 使得c a = - l ( m o d m ) ,我们把c 称为是a 的模m 的逆,记做a 。( m o d m ) a 或a 一。 定理4 3 ( r e t r e a t 定理) 若p 为素数,g c d ( a ,p ) ;l ,则有口川- = l ( m o d 力显然 可以推出a 9z a ( m o d p ) 。 定理4 4 若a - = b ( m o d m l ) ,a - b ( m o d m e ,a - g b ( m o d m , ) , 则: 口gb ( m o d ( m i m 2 r o d ) 。 定义4 5f 是至少含有两个元素的集合,对定义了两种运算“+ ”和“”并 且满足以下一个条件的代数系统( f ,+ ,) 称为域。 ( 1 ) ,元素关于运算“+ ”构成阿贝尔群,设其单位元为d 。 ( 2 ) f 、 d 关于运算“”构成阿贝尔群。 ( 3 ) 对于a ,b ,c f ,分配律成立,即 ( 4 + 6 ) c = a c + 6 c : c 幸( 口+ 6 ) = c a + c b 。 若域f 中元素个数有限,则称之为有限域或伽罗瓦( g a l o i s ) 域。 r s a 的理论基础是一种特殊的可逆模指数运算。它的安全性理论上是数论中的 董王丛璺塑堕叁组合算法的软件加密系统的研究与应用 基于大整数分解的困难性,虽然这一点还没有被证明。r s a 是一个比较完善的密码 体制,它既可用于数据加密也可用于数字签名( d i g i t a ls i g n a t u r e ) r s a 密码体制包括两部分内容: ( 1 ) r s a 加密算法 ( 2 ) r s a 数字签名算法 r s a 算法有许多方面需要讨论,包括建立密码系统的细节、加密和解密的有效 性以及安全性等问题。下而我们主要描述r s a 加密算法具体步骤。 4 2 2r s a 加密算法 r s a 算法流程图如图4 - 2 所示,下而我们概括地描述r s a 加密算法的具体实现 步骤 i s , 1 9 : 图4 - 2r s a 算法实现流程图 1 r s a 算法的初始化 ( 1 ) 系统产生两个大素数( 保密) ; 第4 章a e s 和r s a 加密算法及其优化4 1 ( 2 ) 计算, = p g ( 公开) ,欧拉函数吸力= ( p - 1 x q 1 ) ; ( 3 ) 随机选取整数e 作为公钥( 加密密钥) ,满r g c d ( e ,9 ( 砌= l ( 公开) ; ( 4 ) 计算私钥d ( 解密密钥) ,满足e ds l ( m o d | t p ( n ) ) ,也就是说 e 兰e - i ( r o o d f o ( n ) ) 。销毁p ,q r ( o ( n ) 。 2 r s a 加密解密变换 首先将明文分块并数字化,每个数字化明文块的长度不小于l l 0 9 2 j ;然后对 每个明文块m ( o 研 m i r i ) m o d n ( 4 - 1 8 ) i = o 所以m 对n 求模,等于m 的非零位所对应的余数之和。 由式( 4 - 1 8 ) 可知求第i 个余数的算法,可由第i - 1 个余数迭代而来: = ( 2 术2 “) m o d n = ( 2 事( 2 n m o d n ) ) m o d n = ( 2 宰一) m o d n ( 4 1 9 ) 用t 表示n 的位数,厂表示n 的各元素因子欧拉数的最小公倍数,即p 、q 为素 数,拧= p 弗g ,烈力,伊q ) 分别表示p 、q 的欧拉数,则j = 【伊( p ) 、伊( g ) 】。 因为在传统的b p 算法的第i 次迭代中,乘积的最大绝对值不会超过( 2 t - 1 ) 位,所 以在求2 。( m o d n ) 时,最多只需计算( 2 t - 1 ) 个余数。又因为i = t - 1 时,2 t ( m o d 功= 2 , 无需求余数。因此,只需计算2 2 弘1 ,对n 的( t - 1 计。余数。当t = j - - - - 2 t 1 时,则 只需计算2 。2 。对n 的j t - 1 个余数。那么,递归余数和算法就是事先迭代产生( m 1 ) 个或者( t - 1 ) 个余数,建成余数表,在进行求模运算时,只需查出与被模数非零位相 对应的余数并求和。如果和超过了n ,可以重复使用r s a 优化算法,直到结果落在n 的完全剩余系里为止。 基于a e s 和r s a 组合算法的软件加密系统的研究与应用 第5 章组合密码算法的实现 5 1 组合密码体制的提出 在对称加密体制中,使用同一个密钥对数据进行加、解密,它具有运算开销少、 速度快、便于实现等优点,但在传输过程中,密钥容易泄露。另外如果有n 个用户需 要互相传输加密数据,则需要n ( n - i ) 2 个密钥,从而使得密钥的分发和管理比较困难。 在非对称加密体铝4 ( 公钥加密体系) 中,数据加密和解密采用不同的密钥,而且用 加密密钥加密的数据只有采用相应的解密密钥才能正确解密数据,并且由加密密钥来 求解解密密钥十分困难。在实际应用中,用户通常对外公开加密密钥( 公钥) ,而秘密 持有解密密钥( 私钥) ,从而使得非对称密码体系密钥分发和管理简单。但是,相对于 私钥加密算法而言,公钥加密算法比较复杂,实现的速度比较慢、效率也较低。所以 一般不用于加密大块数据,通常用于传输密钥、数据签名等方面。 r s a 算法是公开密钥系统的代表,其安全性建立在具有大素数因子的合数,其 因子分解困难这一法则之上的。r i j n d a c l 算法作为新一代的高级加密标准,运行时不 需要计算机有非常高的处理能力和大的内存,操作可以很容易地抵御时间和空间的攻 击,在不同的运行环境下始终保持良好的性能,这使a e s 将安全、高效、性能、方 便、灵活性集于一体,成为数据加密的首选算法。而r s a 算法需要进行大整数的乘 幂和求模等多倍字长处理,处理速度明显慢于a e s ,所以a e s 算法加,解密处理速度 明显高于r s a 算法。在密钥管理方面,因为a e s 算法要求在通信前对密钥进行秘密 分配,解密的私钥必须通过传送才能到加密数据接收方,而r s a 采用公钥加密,私 钥解密( 或私钥加密,公钥解密) ,加,解密过程中不必传输保密的密钥,所以r s a 算法密钥管理要明显优于a e s 算法。 综上所述,由于a e s 算法与r s a 算法都具有自身的局限性,而彼此优缺点又 可以相互弥补。将两者相结合,形成一种新的加密系统鲴合密码系统,其主要思想: 用a e s 算法加密软件数据,用r s a 算法生成对称加密算法所使用的加密密钥,从而 保障了数据在传输过程中的安全性 第5 章组合密码算法的实现 5 2 基于a e s 与r s a 的组合密码体制的实现流程 对称加密算法具有速度快、强度高、便于实现等优点,尤其适合加密大块数据, 但密钥分配与管理比较困难,而非对称加密加密算法具有密钥分发与管理简单、速度 慢等特点,一般用于加密少量数据、如传输密钥、数字签名等。所以在本系统中,用 对称加密算法( a e s ) 加密明文数据,用非对称加密算法( r s a ) 生成对称加密算法所使 用的加密密钥。将两者结合起来形成一种新的组合密码体制,即基于a e $ 算法与g a s 算法的组合密码体制,从而可有效地提高效率,使软件数据的传输更安全。 1 密钥的产生 确定两个素数p 和q 。 选择e 或者d , 计算d 或者c 。并满足d g e - i ( m o d e ( n ) ) ,疗= p q 。 2 系统具体实现流程 针对具体应用,可以采取不同的组合次数和组合方案,本文为了描述的方便, 给出了一种在网络数据( 文件) 发送方与接收方之间使用的方案,下面简称为发送方a 和接受方b 。其数据流通信道模型如下: l 发送方:对数据( 文件、接收方:对经过组合加密 i 软件) 进行组合加密的数据进行解密,获得明 l 文数据 不难看出,这个模型是可以很方便地在计算机网络、或者是单独分布的、而只 通过存储介质交换文件( 数据) 的计算机上使用的。 其实现过程描述如下: 发送方a :( 发送方加密流程如图5 1 所示) ( 1 ) 用a e $ 算法对明文m 进行加密,得到密文c ,加密密钥为k | a 。 ( 2 ) 用r s a 算法对k - a 进行加密,得到a e s 密钥块。 ( 3 ) 将密文c 、a e s 密钥块同传给接受方b 。 基于a e s 和r s a 组合算法的软件加密系统的研究与应用 差扣懈一卜 发 送 数 据 甲= i i 图5 一l 发送方加密流程 加密算法代码实谢1 3 4 , 3 5 1 : v o i df i l e e n c r y p t ( s t r i n gi n p u t f i l e n a m e ,s t r i n go u t p u t f i l e n a m e ) r i j n d a e lr i j n d a e l a l g = r i j n d a e l c r e a t e 0 ; r i j n d a e l a l g k e y :a s c i i e n c o d i n g a s c i i g e t b y t e s ( ”建立加密密钥”) ; r i j n d a e l a l g i v = a s c i i e n c o d i n g a s c i i o e t b y t e s ( ”加密向量”) ; 西n d a e l a l g m o d e 2 c i p h e r m o d e e c b ; f i l e s t r e a mf s p l a i n t e x t = n e w f i l e s t r e a m ( i n p u t h l e n a m e ,f i l e m o d e o p e n , f i l e a c c e s s r e a d ) ; f i l e s t r e a mf s c i p h e r t e x t = n e wf i l e s t r e a m ( o u t p u t f i l e n a m e ,f i l e m o d e c r e a t e , f i l e a c c e s s w r i t e ) ; i c r y p t o t r a n s f o r ma e s e n c r y p t2r i j n d a e l a l g c r e a t e e n c r y p t o r 0 ; c r y p t o s t r e a mc i p h e r s t r e a m = n e wc r y p t o s t r e a m ( f s c i p h e r t e x t , a e s e n c r y p t = c r y p t o s 缸e a m m o d e w r i t e ) ; b y t e b y t e a r r a y i n p u t2 n e w b y t e f s p l a i n t e x t l e n g t h ; f s p l a i n t e x t r e a d ( b y t e a r r a y i n p u t , 0 ,b y t e a r r a y i n p u t l e n g t h ) ; c i p h e r s t r e a m w d t c c o y t e a r r a y i n p u t ,0 ,b y t e a r r a y i n p u t l e n g t h ) ; c i p h e r s t r e a m c l o s e o ; f s p l a i n t e x t c l o s e 0 ; f s c i p h e r t e x t c l o s e 0 ; , 接收方b :( 接收方解密流程如图5 - 2 所示) ( 1 ) 用r s a 解密a e s 密钥块,得到1 4 a 。 第5 章组合密码算法的实现撕 ( 2 ) 用k a 对密文c 进行解密,得到明文消息m 。 图5 2 接收方解密流程 解密算法代码实现【1 】: v o i dd e c r y p t f i l e ( s t r i n gi n p u t f i l e n a m e ,s t r i n go u t p u t f i l e n a m e ,s t r i n gk e y , s t r i n gi v ) r i j n d a e lr i j n d a e l a l g = r i j n d a e l c r e a t e0 : r i j n d a e l a l g k e y = a s c i i e n c o d i n g a s c i i g e t b y t e s ( k e y ) : r i j n d a e l a l g i v = a s c l l e n c o d i n g a s c i i g e t b y t e s ( i v ) : f i l e s t r e a m f s c i p h e r t e x t = n e w f i l e s t r e a m ( i n p u t f i l e n a m e , f i l e m o d e o p e n ,f i l e a c c e s s r e a d ) : i c r y p t o t r a n s f o r ma e s d e c r y p t = r i j n d a e l a l g c r e a t e d e c r y p t o r ( ) : c r y p t o s t r e a mc i p h e r s t r e a m 2 n e w c r y p t o s t r e a m ( f s c i p h e r t e x t , a e s d e c r y p t ,c r y p t o s t r e a m m o d e r e a d ) : s t r e a m w r i t e rf s p l a i n t e x t 。n e ws t r e a m w r i t e r ( o u t p u t f i l e n a m e ) : f s p l a i n t e x t w r i t e ( n e ws t r e a m r e a d e r ( c i p h e r s t r e a m ) r e a d t o e n d ( ) ) : f s p l a i n t e x t 。f l u s h ( ) : f s c i p h e r t e x t c l o s e0 : f s p l a i n t e x t ,c l o s e0 : 基于a e s 和r s a 组合算法的软件加密系统的研究与应用 5 3 基于a l e s 与r s a 的组合密码体制的系统 1 系统的软硬件需求 ( 1 ) 硬件环境: 内存2 5 6 m 以上; c p u :p 4 以上; 硬盘:8 0 g 以上。 ( 2 ) 软件环境 操作系统:中文w i n d o w sx p 或w i n d o w s 2 0 0 0 编程语言:c 捍n e t 数据库:s q ls e n ,e r 2 0 0 0 【3 q 2 系统的使用说明 ( 1 ) 文件加解密 图5 - 3 所示:文件加密,解密 第5 章组合密码算法的实现 4 8 如图5 - 3 所示,用户在“加密完成是否删除源文件”选择任一单选项,然后输 入a e s 密钥后,之后在“预备加密的文件名”后点击“浏览”按钮,从磁盘中获得 欲加密的明文文件,然后在“加密后的输出的文件名”中输入加密后的文件。也可选 择“浏览”按钮,选择现有的文件,点击“加密”按钮,系统开始调用a e s 加密算 法对明文文件进行加密处理。 解密与加密类似,用户在“预备加密的文件名”后单击“测览”按钮。选择解 密文件名后,点击“解密”按钮,系统开始调用a e s 解密算法对密文文件进行解密 处理,并生成解密后的文件。 ( 2 ) 密钥加解密 利用r s a 算法对密钥加密时,选择发送方用户、并输入发送方的a e s 密钥,然 后再选择接受方,获得接受的公钥。点击“加密”按钮,系统开始调用r s a 算法对 发送方的a e s 密钥进行加密运算,计算后产生发送方的a e s 密钥信息,即密文,并 显示在文本框中。 然后点击“保存”按钮,将发送的a e s 密钥保存到磁盘上的数据库文件中,以 便解密时使用。 密钥解密时选择接受方用户,从数据中获得接受方私钥,然后再选择发送方, 获得发送方的a e s 密钥信息,点击“解密”按钮,系统开始调用r s a 算法对a e s 密钥信息进行解密运算,计算后产生a e s 密钥信息,并显示在文本框中。 基于a e s 和r s a 组合算法的软件加密系统的研究与应用 结束语 l i s a 算法是公开密钥系统的代表,其安全性建立在具有大素数因子的合数,其 因子分解困难这一法则之上的。r i j n d a e l 算法作为新一代的高级加密标准,运行时不 需要计算机有非常高的处理能力和大的内存,操作可以很容易地抵御时间和空间的攻 击,在不同的运行环境下始终保持良好的性能,这使a e s 将安全、高效、性能、方 便、灵活性集于一体,成为数据加密的首选算法。而r s a 算法需要进行大整数的乘 幂和求模等多倍字长处理,处理速度明显慢于a e s ,所以a e s 算法加解密处理速度 明显高于r s a 算法。在密钥管理方面,因为a e s 算法要求在通信前对密钥进行秘密 分配,解密的私钥必须通过传送才能到加密数据接收方,而r s a 采用公钥加密,私 钥解密( 或私钥加密,公钥解密) ,加,解密过程中不必传输保密的密钥,所以r s a 算法密钥管理要明显优于a e s 算法。 本文分别介绍了目前著名的对称加密算法a e s 和非对称加密r s a 算法,结合 他们各自的优缺点,提出一种互补性的组合数据加密方案及实现过程。这种新的加密 方案具有加密速度快,密钥管理简单的优点,改善了l i s a 加密速度慢的缺点,也解 决了a e s 体制中密钥管理困难的问难,将更适合于软件的加密。 但在当今计算机技术飞速发展与密码学研究不断取得进展的时代,任何一种加 密体制都面临新的攻击挑战,这种攻击和挑战主要来两个方面,计算机处理能力的提 高和破译算法本身取得的进展。因此为提高系统的安全性,要不断改进和寻求新的算 法和加密体制。我相信随着数据加密研究方面进展的不断加深,密码的研究会如雨后 春笋,蓬勃发展。在这方面我国起步较晚,而我国的软件出口业已仅次印度,占出口 量的很大比重,因此,进一步研究软件加密技术对保护我国软件产品的知识产权和著 作权起着举足轻重的作用。 当然,任何的加密系统总是有他的不足之处,软件业真正意义上的安全还要靠 我们国家制定相应的法律、法规来规范软件开发业内的行为,最重要的,也是根本性 的问题还要靠不断提高公民素质,自发的来维护软件业的秩序 由于时间紧迫,加之我的水平有限,文中的不当之处在所难免,恳请各位专家、 同学不吝指正,以利于我今后的迸一步提高。 基于a e s 和r s a 组合算法的软件加密系统的研究与应用5 0 参考文献 【1 】j d a e m e n , v r i j m e n a e sp r o p o s a l 刚n d a e l h t t p :w w w c r y p t o s o r a e s 【2 】w i l l i a ms 协l l i n g s 密码编码学与网络安全( 第三版) 【m 】电子工业出版, 2 0 0 4 【3 】段钢加密与解密叫】( 第二版) 北京:电予工业出版社,2 0 0 0 【4 】冯登国,密码分析学 q 北京:清华大学出版社,2 0 0 0 【5 冯登国,吴文玲公组密码的设计与分析【m 1 北京:清华大学出版社2 0 0 0 【6 】李红军,缪旭东数据加密在网络安全中的应用【j 】微型机与应用,2 0 0 2 ( 1 0 ) :3 i 一5 3 【7 】丁存生,肖国镇流密码学及其应用口咽北京:国防工业出版社,1 9 9 4 【8 】施奈尔应用密码学( 第二版) 【m 】北京:机械工业出版社,2 0 0 0 9 n e c h v a t a lj , b a r k e re , b a s s h a ml ,b u r rw , d w o r l d nm ,f o t ij , r o b a c ke r e p o r to nt h ed e v e l o p m e n to f t h e a d v a n c e de n c o q 口t i o ns t a n d a r d ( a e s ) a v a i l a b l ef r o mn i s t s a e s h o m e p a g e u r l :h t t p - j w w w n i s t g o v a e s 【1 0 j o h nd a e m e n , v m c e n tr i j m e n 高级加密标准( a e s ) 算法_ r i j n d a e l 的设计嗍谷大武,徐胜波译 北京:清华大学出版社,2 0 0 3 【1 1 】孙淑玲应用密码学咖北京:清华大学出版社,2 0 0 4 【x 2 t 衍波,薛通应用密码学咖北京:机械工业出版社, 2 0 0 3 【1 3 】刘惠珍,张民,陈建中软磁盘加密解密技术研究仞北京工业大学学报,1 9 9 9 3 ,8 2 - - 8 7 【1 4 】孙兆林主编软件加密解密与计算机安全技术【m 】 中国水利水电出版社, 2 0 0 1 4 【1 5 】鲍振东密码古今谈咖北京:清华大学出版社1 9 9 7 【1 6 h t t p :w w w e s a t k u l e u v e n a c b e - r i j m e n r i j n d a e l 【1 7 】j o a nd 扯m 即v i n c e n tr i j m e n a e sp i j n d a e l d o c u m e n tv e r s i o n2 1 9 9 9 【1 8 】章照止现代密码学基础 h q 北京:北京邮电大学出版社,2 0 0 4 【1 9 a l f r e dj m e n e z e s , p a u lc v 髓o o r s c h o t , s c o t ta v a n s t o n e 著h a n d b o o ko f a p p l i e dc r y p t o g r a p h y 应 用密码学手册d 川胡磊,王鹏等译北京:电子工业出版社, 2 0 0 5 【2 0 】张瞿加密解密与网络安全技术i m i ,北京:冶金工业出版社, 2 0 0 0 【2 l 】程一飞r s a 算法及其应用们安庆师范学院学报( 自然科学版) , 2 0 0 4 ( 2 i :6 8 , - 6 9 2 2 p a u lg a r r e t t 著密码学导引 h q 机械工业出版社,2 0 0 3 基于a e s 和r s a 组合算法的软件加密系统的研究与应用 5 1 2 3 h t t p :h c s m n i s t g o v 印c r y p f i o n a e s r i j n d a e l 【2 4 j d a e m e n a n d v r i j m e n , t b 碡p r o p o s a l :剐n d a e l , a e s a l g o r i t h ms u b m i s s i o n , s e p t e m b e r 3 ,1 9 9 9 ,a v m l a b l e 越h t t p :w w w n i s t g o v c r y p t o t o o l k i t 2 s l

温馨提示

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

评论

0/150

提交评论