版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、.:.;摘要由于互联网的开放性和匿名性,不可防止的存在诸多平安隐患,因此实现数据在网络传输上的性、完好性、不可抵赖性、访问控制性和身份可靠性等是保证数据平安的关键所在。这就要求网络能提供平安效力,包括加密技术、数字签名、电子平安买卖认证、防火墙、虚拟公用网等,使数据和资源免遭泄密、系统免受基于网络攻击。Web本质上就是运转在Internet上的客户栅效力器运用程序,Internet上的各种网络运用几乎都以Web的方式出现。由于Internet是一个开放的环境,各种数据将经过公共网络进展传输,因此保证Web系统平安的关键性问题之一在于保证数据的传输平安。密码技术是数据平安的中心技术,是一切通讯平
2、安的基石。数据加密过程是由形形色色的加密算法来详细实施,它以很小的代价提供很大的平安维护,数据加密几乎是保证信息性的独一方法。本文主要针对以下几个重点进展论述:首先系统研讨了密码学实际根底和运用技术,着重分析了各种密码技术的思想、方法,给出了各种密码的数学描画及特点,比较了主要算法的优缺陷,重点研讨了AES、ECC算法、身份认证和数字签名等相关算法。其次分析了WEB网络数据传输平安需求,比较了现有主要密码算法的平安性,特别是AES算法的平安性和ECC算法的平安性。接着针对Web网络数据传输所面临的平安要挟,根据各种密码技术的特点,本文给出了一种基于ECC与AES混合加密的网络数据传输方案,该方
3、案主要实现了基于ECC身份认证,并共同协商会话密钥。协商出会话密钥后采用AES算法对所传输的数据进展加密。针对WEB网络数据传输方案,对身份认证模块、AES优化模块和ECC与AES混合签名模块进展了实现。计算机模拟阐明,该方案具有较高的平安性和适用性。关键词:Web网络,数据传输平安,椭圆曲线加密算法,高级加密算法,混合加密AbstractBecause of the openness and anonymity of Internet,there exist many hidden trouble of security,the key for keep information securi
4、ty is to implement secure information transmission、reliable system identity authentication and some other secure measures。So there require a solution to provide a endto-end project,it must include encryption,digital signatures,firewall,VPN,etcAnd it Can protect information from leak。Essential of Web
5、 iS a cs application which iS running on the Internet,and a variety of applications on Internet almost entirely to the form of WebAs the Internet is an openenvironment,a variety of data will be transmitted through public networks,one of the key issues to protect the safety of the Web system is to en
6、sure security of data transmissionCryptography is the core technology for data security,and this is the cornerstone of security ill all communicationsData Encryption is implemented by all kinds of encryption algorithms,it provides a lot of security protection with a small price,data encryption is al
7、most the only way to ensure confidentiality of informationThis paper discusses the following priorities:Firstly,the system researches on the basis theories of cryptography and application of technology,focuses on an analysis of the thinking of the various cryptographic techniques and methods,and giv
8、es the mathematical description of the various passwords and the characteristics,compares the several main algorithms on the advantages and disadvantages especially on the AES,ECC algorithms,digital signature authentication and other related algorithmsSecondly,it analyses data security requirements
9、of WEB network,compares the existing the major cryptographic algorithms of safety,particularly the security of AES algorithm and ECC algorithmS securityThen for Webnetwork security threats of data transmission of facing,and bases on the characteristics of a variety of cryptographic techniques,this p
10、aper presents a mixed encryption of network data transmission program bases on the ECC and AES,which implements the main ECC-based authentication,and the common consensus session keyAfter the session key is consulted ituses AES algorithm to encrypt the sensitive data of transmissionFinally,for me WE
11、B network program of data transmission,it implements the authentication module,optimized AES module,ECC and AES mixed signature modulesComputer simulation shows that the program has a high safety and practicalityKey word:Web Network,Date Secure Transmission,ECC,AES,Mixed Encryption1绪论11课题背景111网络数据平安
12、现状 随着计算机技术,特别是网络的高速开展,无论是军队、政府、企事业单位还是个人都逐渐依赖和运用计算机存储数据,并借助网络进展传送和交换,所涉及的数据范围更加广泛,方式也更加多样。以Intemet为代表的信息网络必将在21世纪成为人类消费、生活的一个根本方式。 世界很精彩也很无法,任何科技的开展过程中都必然会产生本人的对立面。Intemet是在特殊历史环境下生长起来的,军转民后,开场只用于科研信息的共享,网上衔接并不多。随着Intemet大举进入社会生活、任务、消费的各个领域,其潜在的平安隐患也充分暴显露来。一方面,Intemet分布范围广泛,具有开放和分布处置的体系构造,提高了资源共享程度和
13、任务效率。另一方面,也带来了网络平安的脆弱性和复杂性,资源共享和分布计算添加了网络遭到要挟和攻击的能够性。经过网络犯罪给国家、企业、个人呵斥的损失也日益严重,网络数据平安己经成为最为关怀和棘手的问题。 网络平安的本质是网络数据平安,因此确保网络系统的数据平安是网络平安的主要目的。随着我国Intemet建立的飞速开展,各种Web运用在社会生活、任务、消费的各个领域发扬着越来越大的作用。但同时在我国发生的信息平安事件也大为添加,比如电子商务、数字货币、网络银行等一些网络新业务中,任何关键、敏感的数据流动均是通过不平安的网络传输实现的,所以保证网络数据在动态传输过程中的平安成为数据平安的关键。 We
14、b本质上就是运转在Internet上的客户机1t务器运用程序,Intemet上的各种网络运用几乎都以Web的方式出现。由于Internet是一个开放的环境,各种数据都是经过公共网络进展传输,因此保证Web系统平安的关键性问题之一在于保证数据的传输平安。密码技术的开展使之成为数据传输平安的中心和根底。密码技术是数据平安的中心技术。如今,计算机网络环境中数据的严密性、完好性、可用性和抗抵赖性,都需求采用密码技术来处理。密码体制大体分为对称密码(私钥密码)和非对称密码(公钥密码)两种。112网络数据传输面临的主要要挟网络数据传输过程中主要面临两方面要挟:一是被动攻击,二是自动攻击。被动攻击主要包括:
15、流量分析、监视和窃听明文、解密弱加密的数据流、获取鉴别信息(如口令)等攻击。攻击者利用这些攻击能够窃取传输的信息,分析、判别网络的规模、拓扑构造、定位节点位置、设备特性等。自动攻击主要包括:修正传输数据、重放、劫持会话、伪装成授权的用户效力器、未授权运用运用程序和操作系统软件、利用数据执行、插入或利用恶意代码(特洛伊木马、陷门、蠕虫)、利用协议或根底设备的错误、回绝效力。攻击者利用篡改或伪造的信息插入网络,尤其是对网管和信令信息的攻击,会影响网络设备的正常运转,甚至呵斥网络配置混乱,使整个网络瘫痪11。12国内外研讨现状目前在网络数据传输平安领域人们所关注的焦点主要是密码实际与技术,下面就简要
16、引见一下国内外在这个问题上的研讨现状及开展趋势。1976年Diffie和Hellman提出公开密钥密码体制是现代密码学的里程碑。自此以后,密码算法的改良和研讨沿着对称密钥密码体制和公开密钥密码体制两个分支开展的【21。在对称密钥密码体制算法方面,继最常用的DES算法之后,针对DES密钥长度过短的弱点开发了3DES算法或DESX算法,他们分别将密钥长度加长到168位和184位。相继出现了RC5,RC6,IDEA等算法【3J,在1997年,美国国家规范局(NISn征集替代研讨阐明不平安DES的下一代密码规范,即AES(Advance Encryption Standard),它有一点与DES显著不
17、同,即密钥长度是可变的。到1999年,共有5个算法入选,分别是MARS(IBM公司)、RC6(RSA公司)、Rijndael(L卜,利时)、Serpent(英国、以色列、挪威)、Twofish(美国),2000年NIST宣布选中了Rijndael算法建议作为AESl4,2001AES成为FIPS同意的高级对称密码算法【5J。 目前,DES算法已存在着极大平安隐患,由于其密钥空间小,进展穷举攻击就能够获得胜利。此外,对DES的攻击还有差分分析方法和线性分析方法,为了加强DES算法的平安性,密码设计者又研讨并提出了DES改良算法3DES,这些改动有些作用但作用不大,有些还减弱了DES的效率和平安性
18、。总之,DES需求更新更有效的加密规范来替代。而AES算法聚集了强平安性、高效性、易用性和灵敏性等优点,使得其最终将替代DES算法。国内外许多研讨机构和学者从事AES算法研讨,获得了不少成果。主要研讨了AES算法在网络传输协议中的运用和算法的改良与实现。如:研讨了AES的特点,提出了一种高速先进加密算法(AES)IP核的VLSI实现方案161;研讨了在IPSec封装平安载荷(ESP)qb运用AES加密机制,实现了AES加密机制在IPSec协议中运用【7J;研讨了AES算法,实现了基于Jave的AES数据加密器【8】;研讨分析了AES算法,并对关键单元的硬件设计进展了优化,设计了一个用于IPSe
19、e协议的AES核【9】。在公开密钥密码体制算法方面,目前呈百花齐放的局面。公开密钥都是基于某些数学上的难解问题,比较著名的算法有RSA算法和EIGamal算法【l o】和目前最新进展的ECC算法。现今流行的公钥密码算法主要有两类:一类是基于大整数因子分解问题的,其中最典型的代表是RSA;另一类是基于离散对数问题的,比如EIGamal公钥密码和影响比较大的ECC密码。RSA算法主要是利用由两个大质数之积的模运算来实现,其根底是欧拉定理,其加密强度依赖于对大数因式分解的难度。EIGamal那么是利用解离散对数的问题。但目前一切公开密钥算法的普遍缺陷,就是其加密解密速度远比私密密钥算法慢,现今普通不
20、单独运用它对大批量数据进展加密解密,而是与私密密钥加密算法配合运用。由于科技的开展,分解大整数的才干日益加强,所以给RSA的平安带来了一定的要挟。研讨证明目前128比特模长的RSA已不平安,普通建议运用1024比特模长,而要保证20年的平安就要选择1280比特的模长,增大模长就带来了实现上的难度。基于离散对数问题的公钥密码算法在目前技术下只需512比特模长就可以保证其平安性;特别是椭圆曲线上的离散对数问题的计算要比有限域上的离散对数问题的计算更困难,目前技术条件下只需160比特模长即可,适宜运用智能卡实现,引起国内外研讨机构的广泛关注。国际上制定了椭圆曲线公钥密码规范,IEEE、RSA等一些公
21、司声称他们已研发出了符合该规范的椭圆曲线公钥密码。我国研讨机构和学者也提出了一些公钥密码,对公钥密码的快速实现方面也做了许多任务,比如在RSA的快速实现和椭圆曲线公钥密码的快速实现方面都有所突破。公钥密码的快速实现是当前公钥密码研讨中的一个热点,包括算法优化和程序优化,特别是ECC将会成为未来公钥密码算法的一个研讨方向。国内外有很多科研院所从事基于椭圆曲线加密算法的数字签名技术的研讨,获得了不少研讨成果,主要研讨运用于不同环境下的数字签名技术的实际和运用,如:研讨了基于椭圆曲线的数字有序多签名技术【l21,并提出一种基于椭圆曲线的无需求逆的数字签名方案;研讨了基于椭圆曲线数字签名的序列码生成算
22、法,并提出了一种基于该算法的软件序列码生成和验证方案Il习;研讨了基于椭圆曲线的可转移不可否认的数字签名技术,并提出了一个新的基于椭圆曲线的可转移不可否认的数字签名方案【14l;研讨了对具有音讯恢复功能的椭圆曲线签名技术,并提出了一种基于该技术的数字签名方案【l 51。由于对称密码体制和公钥密码体制各有千秋,因此在构建一个密码系统时,为了发扬他们各自的优点,建立一个高效的系统,我们经常把私钥密码和公钥密码配合运用,构成混合密码体制。在混合密码系统中,运用私钥算法加密大量数据,实现了数据的严密性;运用公钥算法对对称密码密钥管理,此外公钥密码还实现了确保数据的完好性、可鉴别性、抗否认性等效力。我们
23、可以充分发扬公钥算法密钥易管理、密钥短,计算开销少,带宽要求低、运算速度快等优点和私钥算法的加、解密速度快等优势,构造出平安、高效的密码系统。混合加密算法的研讨中,发表的论文不是很多,主要是研讨公钥密码体制和私钥密码体制相结合的混合加密算法,并把混合加密算法运用到数字签名中,主要有:研讨了基于RSA与AES混合加密系统的算法【16】,混合加密的方法是提出混合动态RSA密码系统的新思想;对基于DSA和RSA的证明数字签名方案平安性问题进展研讨,并提出了一种证明数字签名方案【l7】;研讨了DES与ECC混合数字签名技术,主要是运用ECC私钥对信息摘要签名,公钥进展验证签名,明文发送前用DES进展加
24、密,并设计了一种数字签名系统Il驯;实现了一种基于IDEA和RSA算法的多媒领会议系统加密方案,方案中把IDEA和RSA两种算法的优点结合起来实现混合加刮191。了解密码学根底知识清楚,假设密钥序列真正随机产生,而且密钥序列的长度不小于所需维护的信息序列长度,就可构成实际上严密的完全严密体制。现有的绝大部分密码体制都不是真正意义上的严密体制,只是实际上的严密体制。人们在不断改良那种实践严密的密码体制的同时,也时辰不忘密码学实际所指出的那种实际严密体制,并从实践物理世界中去寻觅这样的体制,量子密码及混沌密码正是在这种背景下应运而生。这些体制都有了较为深化的研讨,并获得了很好的效果,但要真正实践运
25、用还需很多任务要做,下面简单引见这两种密码体制。量子密码学的根本思绪是利用光子传送密钥信息。假设第三方对光子的一切测定尝试都会改动电子的偏振特性,就会呵斥接纳者产生测试偏向。窃听者要想不改动密钥信息的内容,逃过收发方的眼睛而窃取密钥是绝对不能够的。一旦发现密钥被窃听,双方就会自动丢弃收到的信息重新进展密钥分配。作为现代密码体制中的一个新实际,量子密码学已从纯实际阶段开展到实验阶段,但离实践运用还有一些重要的任务要做,特别是在实践通讯环境中,敌方的攻击是多种多样的。比如断断续续地窃听密钥信息,就有能够会使正常的收发双方无法最终完成随钥的分配任务,因此研讨适用的量子密码体制是今后的主要研讨内容12
26、0J。上世纪60年代人们发现了一种特殊自然景象一混沌(英文为chaos)。这种物理景象可以用确定的方程来描画,且其数学模型非常简单;“混沌景象具有以下奇特的特性:对参数和初始条件极其敏感,参数和初始条件的极微小变化都将使结果大相径庭,而且不可预测。混沌学和密码体制相结合,就构成了所谓的“混沌密码体制。从密码学的角度来研讨和讨论混沌实际在严密通讯中的运用当前还处在起步阶段。国内在这方面也做了大量的研讨任务。比如电子科技大学、复旦大学、四川大学、中科院上海技术物理研讨所、南京通讯工程学院等单位院所均对此进展了相关研讨,就目前情况而言,“混沌严密能否成为一种适用的密码体制,还有待于进一步研讨、探求【
27、2l】。13论文主要任务本文主要做了以下任务:本文系统研讨了密码学实际根底和运用技术,着重分析了各种密码技术的思想、方法,给出了各种密码的数学描画及特点,比较了主要算法的优缺陷,重点研讨了AES、ECC算法、身份认证和数字签名等相关算法。(2)分析了WEB网络数据传输平安需求,比较了现有主要密码算法的平安性,特别是AES算法的平安性和ECC算法的平安性。(3)针对Web网络数据传输所面临的平安要挟,根据各种密码技术的特点,本文给出了一种基于ECC与AES混合加密的网络数据传输方案,该方案主要实现了基于ECC身份认证,并共同协商会话密钥。协商出会话密钥后采用AES算法对所传输的敏感数据进展加密。
28、(4)针对WEB网络数据传输方案,对身份认证模块、AES优化模块和ECC与AES混合签名模块进展了实现。计算机模拟阐明,该方案具有较高的平安性和适用性。14论文的组织构造论文共分六章:第一章,引见了选题背景、国内外研讨现状、论文的主要任务。第二章,研讨和分析各种密码体制相关实际根底,重点研讨了AES、ECC算法、身份认证和数字签名等相关算法。第三章,分析了WEB网络数据传输平安需求,比较了主要密码算法的平安性。第四章,针对现有WEB网络数据传输平安方案的缺乏,给出了一种基于椭圆曲线和AES混合加密的信息平安系统,实现了基于ECC身份认证,并共同协商会话密钥。协商出会话密钥后采用AES算法对所传
29、输的敏感数据进展加密。第五章,对本文给出的WEB网络数据传输平安技术方案进展了详细的实现。第六章,总结了论文所做的任务,并对下一步任务进展了展望。2密码技术根底21密码学概述 从远古时代到1949年,可看作是科学密码学开展的前夜,此期间的密码学与其说是-17科学,不如说是-I1艺术。密码专家们通常是凭直觉和信心来进展密码分析和设计,而不是依托严厉的推理证明。从1949年到1975年,以Shannon于1949年发表的一文为起点,密码学就成为了-I3科学,Shannon的文章也从此成为了对称加密体制(私钥密码系统)的实际根底【221。由于美国政府的严厉审查和严密,密码学实际的研讨任务进展不大,公
30、开的密码学文献很少。1967年David Kahn出版了一本专著(Thecode breakers),它的意义在于记述了1967年以前的密码学开展简史,并使很多不懂密码学的人了解了密码学并开场研讨密码学。1976年Diffie和Hellman提出公开密钥密码体制是现代密码学的里程碑。自此以后,密码算法的改良和研讨是沿着对称密钥密码体制和公开密钥密码体制两个分支开展的。密码学是以认识密码变换的本质,研讨密码严密与破译的根本规律为对象的学科,它包括两个分支:密码编码学和密码分析学。密码编码学主要研讨信息变换,以维护信息在信道的传输过程中不被攻击者窃取、解读和利用的方法。而密码分析学那么与密码编码学
31、相反,它主要研讨如何分析和破译密码。两者之间构成既相互对立又相互促进的局面。一个密码体制(或密码系统)由以下五大部分组成:1明文空间P:全体明文集合;2密文空间C:全体密文集合;3密钥空间K:全体密钥集合,K=Ke+Kd,Ke表示加密密钥,Kd表示解密密钥;4加密算法E:明文和密文之间的变换规那么;5解密算法D:密文和明文之间的变换规那么。加密变换:C=E(P,Ke); (21)解密变换:P=D(C,Kd)=D(E(P,Ke),Kd)。 (22)典型的密码体制如图21所示。发送端首先将明文P利用加密变换E及加密密钥毛加密成密文C=Ek1(P),接着将c利用公开信道送给接纳端。接纳端收到密文后利
32、用解密变换D及解密密钥K2将密文解密成明文P=Dk2(C)=Dk2(Ek1(P)。假设公开信道中有一密码分析者,他并不知道解密密钥毛,但想利用各种方法得知明文P,或冒充发送端伪造信息让接纳端误以为真,这一过程称为密码分析或密码攻击田】I冽【25】。图21完好密码体制原理图普通而言,密码体制依其运用可对数据提供如下功能:1性:防止非法的接纳者发现明文;2鉴别性:确定数据来源的合法性,也即此数据确实是由发送方所传送,而非他人伪造;3完好性:确定数据没有被有意或无意的更撰改,以及被部分交换、添加或删除等;4不可否认性:发送方在事后不可否认其传送过此信息。22对称密钥体制 对称(单钥或私钥)密码体制如
33、图22所示,它的加密密钥和解密密钥一样或彼此间容易确定,通讯双方都采用一样的加密算法和共享的公用密钥。由于数据加密和解密采用的都是同一个密钥,因此它的平安性依赖于所持有共享密钥的平安性。传送和保管密钥是也就成为新的问题,通讯双方之间要确严密钥平安交换,假设运用对称加密技术进展数据加密,系统就必需强化密钥管理体系。图22对称密码体制原理图在对称密码算法中,它的平安性都是基于复杂的数学运算。我们以M表示一切的明文信息,C表示密文信息,K是一切的密钥,那么对称密码体制就是由这样一组函数对构成的:Ek:MCDk:CMkK在这里,对于一切的mM及kK,都有Dk Ek(m)=M运用此系统时,通讯的双方A和
34、B需求事先达成某一钥kK,他们可以经过直接会晤或者可以信任的方式来相互得到对方的钥;之后,假设A想发送一组明文给B,它传送的密文数据CEk(m);B接纳到C后,经过解码函数DK复原成明文M。221 DES、3DES密码 数据加密规范(DES)是迄今为止世界上最为广泛运用和流行的一种对称密码加密算法,它是由美国IBM公司研制的,是对早期Lucifer密码的一种改良和开展。DES是一种分组加密算法,它先把数据进展64位分组后对数据进展加密。同时DES也是一个对称算法,即加密和解密用的是同一个算法。它的密钥长度是56位,密钥可以是恣意的56位的数,而且可以随时改动。虽有极少量的数被以为是弱密钥,但是
35、运用过程中很容易避开它们。DES对64(bit)位的明文M分组进展操作,明文M首先经过一个初始置换IP置换,将明文分成左半部分和右半部分,各32位长。然后进展16轮完全一样的运算,这些运算被称为函数f,在运算过程中数据与密钥结合。再经过16轮后,左、右半部分合在一同经过一个末置换,最后所得到的输出即为密文。每一轮中,密钥位先移位,然后再从密钥的56位中选出48位,接着经过一个扩展置换将数据的右半部分扩展成48位,并经过一个异或操作替代成新的32位数据,再将其置换一次,这四步运算构成了函数fo然后,经过另一个异或运算,函数f的输出与左半部分结合,其结果成为新的右半部分,原来的右半部分成为新的左半
36、部分。将一切操作反复16次,便实现了DES的16轮运算【26】。其加密过程如图23所示。3DES是DES加密算法的一种改良算法,它运用3条64位的密钥对数据进展三次加密。3DES(即Triple DES)是DES向AES过渡的加密算法(1999年,NIST将3DES指定为过渡的加密规范),是DES的一个更平安的改良。它以DES为根本模块,经过组合分组方法设计出来的分组加密算法,其详细实现如下:设E()和q()表示DES算法的加密和解密过程,K表示DES算法运用的密钥,P表示明文,C表示密表,3DES加密过程为:C=Ek3(Dk2(Ek1(P) (24)3DES解密过程为:P=Dk1(Ek2(D
37、k3(C) (25)毛,七2,毛决议了算法的平安性,假设三个密钥互不一样,该算法本质上就相当于用一个长为168位的密钥进展加密。多年来,它对付强力攻击时是比较平安的。运用过程中对数据平安性要求不那么高,毛可以等于毛。在这种情况下,密钥的有效长度为1 12位。图23 DES加密流程图222 AES密码由于DES算法的密钥太短,已不能满足现代通讯系统的平安性要求,因此需求寻求一种新的加密规范来替代DES算法。2000年10月,NIST选中了Rijdael算法作为AES来替代DES,评选规范有:1抵御一切知攻击的;2在各种平台上的速度及编码紧凑型;3设计简单性。Rijndael算法之所以能中选AES
38、主要有以下缘由:1运算速度快:在无论能否具有反响方式的计算环境下的软硬件中,都能表现出非常好的性能;2顺应性强:对内存的需求非常低,它很适宜用于受限制的环境;3可靠性高:运用非线性构造的S盒,表现出有足够的平安余地;4抗攻击性强:它的设计战略是宽轨迹战略,这种战略能有效抵抗差分分析和线性分析攻击;5灵敏性好:Rijndael是一个分组迭代密码,被设计成128192256比特三种密钥长度,可用于加密长度为128192256比特的分组,相应的轮数为101214,分组长度和密钥长度设计灵敏:6简易性好:操作简单,并可抵御时间和能量攻击27282930。2221 AES算法的数学根底1有限域和域上的多
39、项式有限域即有有限个元素的域,域中元素个数称为域的阶。q阶域存在,当且仅当q=pn,P为素数并称为有限域的特征,有限域记为GF(pn)。AES算法中涉及两类如下方式的特征2域上的多项式:b(x)=b7x7+b6x6+b5x5+b4x4+b3x3+b2x2+blx+b0,b1GF(2) (26)a(x)=a3x3+a2x2+alx+a0,aiGF(28) (27)其中b(x)表示AES算法中的单字节(Byte)数据,a(x)表示AES算法中的4字节(4Bytes)或字(word)数据。单字节也可以用数据向量b7,b6,b5,b4,b3,b2,bl,b0八进制数m,n)表示。2字节运算与字运算1)
40、单字节(Byte)运算单字节运算是两个形如(26)的多项式的运算。a)单字节加法:两个多项式一样指数项系数的模2加,用符号+表示。b)单字节乘法:两多项式一样指数项系数的模m(x)乘,用符号表示。m(x)为8次既约多项式,+X4+x3+x+l,模m(x)能保证乘后的多项式一直在GF(28)上。2)字(Word)运算字运算是两个形如(27)的多项式的运算。a)字加法:两多项式的一样指数项系数的对应比特的模2加。例: a(x)=a3x3+a2x2+alx+a0 b(x)=b3x3+b22x2+b1x+b0那么a(x)+b(x)=(a3+b3)x3+(a2+b2)x2+(a1+b1)x+(a0+b0
41、) (28)b)字乘法:两多项式一样指数项系数的模m(x)乘,用符号表示。m(x)是可约多项式x4+l,模m(x)以保证字乘之后的结果仍为一个字。由于m(x)不是GF(28)上的不可约多项式,故并非一切多项式在模m(x)下均有乘法逆元。2222 AES算法构造AES算法加密设计中突出特点是设计者放弃了Feistel构造,而采用Suqare构造。由于Feistel构造的特点是其中间形状的部分字节被没有改动地置换到其他位置,导致一些密钥信息泄露给密码分析者,而且近几年密码分析者提出的差分分析和线性分析方法都是针对Feistel构造设计的密钥分析方法。AES中间态的变换仅仅是作简单的移位处置,其轮变
42、换是由3个可逆的简单变换组成,我们称之为层。形状变换过程中,每个字节的处置根本一样,这为算法实现快速并行处置提供了能够。在设计中经过这种不同层的选择和组合,使之具有抗线性和差分攻击的才干。各层详细功能如下:1线性混合层:确保经过多轮变换后,系统具备很好的分散效果;2非线性层:经过这些S盒变换的并行运用优化了输入数据与密钥组合在最坏情况下的非线性特征;3密钥相加层:在各中间形状,将本轮密钥与该形状的数据块做简单的异或操作。2223 AES算法的轮变换轮变换由4个不同的变换组成:S盒(SubByte)变换、行(ShiftRow)变换、歹lJ(MixColumnl变换和密钥加与扩展(AddRound
43、Key),轮变换中的各个变换如下31。S盒变换S盒变换即S盒运算,将每个字节经过S盒做非线性运算。这个交换表(或说是S盒)是可逆的,并且它是由两个变换复合而成,这两个变换是:1)对一切的子字节在有限域GF(28)中求其乘法逆,且规定00的逆为00,0l的逆依然为0l;2)经1)处置后的字节值进展如下定义的仿射转换:经过两个变换构造出S盒。S盒在形状的一切字节上运算的变换用SubByte(State)来记。在这个变换中经过查S盒表找到这个字节对应的多项式,然后对这个字节进展交换。逆S变换的计算那么是经过查逆S盒表来进展字节交换,即首先进展逆仿射变换运算,然后利用前面引见过的方法求得输入字节乘法逆
44、。2行变换在行左平移变换中,形状的行以不同的位移向左循环平移,第0行不动,第1行挪动C1个字节,第2行挪动C2个字节,第3行挪动C3个字节。Cl,C2,C3与分组长Nb有关,相关关系如表21所示。此变换用ShiflRow(State)来表示。3列变换和逆列(InvMixColumn)变换在列变换中,我们把形状的每一列看作是在系数域GF(28)上的多项式,然后用模(x4+1)与固定多项式c(x)=03x3+。01x2+01x+02相乘。此运算可用矩阵乘法来表示,记b(x)=a(x)c(x),那么:对一切的列进展此运算就用MixColumn(State)表示。由于c(x)与x4+l互素,因此c(x
45、)可逆,且c-1(x)=d(x)=OBx3+0Dx2+09x+0E。逆列变换类似于列变换,只需将c(x)换成d(x)即可,即只需求将系数矩阵换成其乘法逆矩阵,如下式:4密钥加与扩展轮变换开场前,普通先进展密钥扩展,来产生轮密钥(RoundKey)。假设不算初始密钥,此过程中需扩展出Nr个轮密钥,用于每轮变换的最后的密钥加运算(AddRoundKey),即把形状矩阵和轮密钥进展异或,实现将形状矩阵的一次性掩盖。由于每轮运用的轮密钥相关,因此在有些算法中需求把产生轮密钥的步骤置于轮变换中。密钥扩展的作用是在数据加/解密前得到轮变换中运用的轮密钥,它的根本原那么是:1)轮密钥的总位数等于分组长乘以(
46、1+Nr),假设分组长为256bits,轮数为10,那么轮密钥的长度为256(10+1)=2416bits;2)种子密钥扩展为扩展密钥,种子密钥长度为4Nk个字节;3)轮密钥由如下方法从扩展密钥中获得:第一轮密钥由前Nb个字构成:第二轮密钥由第二个Nb个字即第Nb+1个字到第2Nb个字构成:以下依次类推。Rijndael的算法操作简单,都是根本的逻辑、代数运算,有较强的扩展性,能以较少的编码和资源需求在智能卡上实现。密钥扩展的非线性使得该算法不存在弱密钥(所谓弱密钥,就是密钥与输出之间存在超出一个好密码所应具有的相关性)和半弱密钥。AES算法不仅具有良好的平安性,而且在软硬件实现上都比较简单且
47、具备很快的加密速度。同时AES并不依赖于S-Box的选择,对抗击差分密钥分析及线性密码分析具有良好的防御才干。但由于没有运用Feistel构造,导致加解密过程不完全一样,使得查找表和电路不能被充分利用。23公钥密码体制由于对称密码体制必需事先传送加密密钥而使得严密性遭到要挟,再加上对称密码先天缺乏无法实现不可否认的数据传输,因此在计算机网络上传输加密数据就迫切需求一种新的加密技术的出现。1976年,Diffie和Hellman的文章“密码学的新方向,掀开了公钥密码研讨的序幕。在图24所示的密码体制中加密密钥K1与解密密钥K2不同,即使密码分析者知道了加密密钥K1还是无法得知解密密钥K2,那就可
48、以将K1公开,但只需接纳方知道K2。在这种情况下,任何人都可以利用K1加密,而只需知道K2的接纳方才干解密复原所传数据。图24公钥密码体制的原理图按数论所说,任何公钥系统的根底都是建立在一个NP问题之上,即对于特定的问题我们没有方法找到一个多项式时间的算法求解该问题,普通求解此类问题的算法都是指数时间或者亚指数时间,现有的计算机体系构造不适于求解此类问题。正由于有了此实际根据,我们才可以放心地将公开密钥发送给任何人,而不用担忧它利用公钥反推出私钥。目前比较典型公钥密码算法主要有:1基于整数因式分解的公钥密码算法,如RSA;2基于离散对数的公钥密码算法,如DSA,DH,EIGamal:3基于椭圆
49、曲线的公钥密码算法,如ECC。公钥密码体制运用的密码算法的平安强度都是基于一些数学难题,这些难题被专家们以为在短期内不能够得到处理。这些难题(如因子分解问题)至今己有数千年的历史了。公钥密码采用公钥、私钥分别加、解密的方法,使加、解密密钥分别,从而保证严密性,可以很好地处理对称密码所存在的问题,从技术上打弥补了对称密码体制的缺乏32。2.3.1 RSA密码RSA算法是Rivest、Shami和Adleman于1 977年提出的一个比较完善的公钥密码算法。RSA的数学根底是数论中的欧拉定理,其平安性基于分解大整数的困难性,即到目前为止尚无法找到一个有效的算法来分解两个大素数之积33。普通地讲,可
50、将RSA密码算法分成三个主要函数即:大素数的产生、密钥对的产生和RSA音讯处置。1大素数的产生产生两个大素数P、q,大素数的产生是RSA算法体制中一个重要算法,是根底。2密钥对的产生就是加密指数e和解密指数d的产生,二者满足ed=lmod(n),密钥对的产生是RSA的关键,只需适宜的密钥对,才干确保RSA的平安。3RSA音讯处置音讯处置是RSA的中心,包括加密、解密、签名和验证四种,其本质上它们是相通的,处置过程也类似。这里以对信息n的加解、密为例,处置过程描画如下:将n划分成假设干个数据块m i,m in(此举是为了保证m i在解密时的独一性)。加密公式为:cimie(mod)n (2. 1
51、2)解密公式为:micid(mod)n (213)232 ECC密码1985年,Neil Koblitz和Victor Miller分别提出了椭圆曲线密码算法(ECC)。椭圆曲线密码算法平安强度不仅依赖于在椭圆曲线上离散对数的分解难度,也依赖于曲线的选取和参数的选定,目前160比专长的椭圆曲线密码体制己经有相当高的平安强度。椭圆曲线密码算法是一种新的密码算法思想,与传统的密码算法不同的是它需求人为构造有限域和定义域中的运算,并将信息经过编码嵌入自构造的有限域中。椭圆曲线密码体制的平安性由椭圆曲线上的离散对数问题(ECDLP)确保,这是一个NP完全问题,处理这个问题的时间复杂度为指数级,远远超越
52、了其它公钥密码算法的复杂程度3435。2321 ECC算法数学根底椭圆曲线作为代数几何的一个重要分支,经过150多年开展,它已得到广泛的研讨,并经过这些研讨构成了一套丰富而深化的实际36。由于日常所接触得到的椭圆曲线是延续的(定义域是实数域),并不适宜用于加密,所以,我们必需把椭圆曲线变成离散的点,才干运用到密码学中。椭圆曲线实际描画为:椭圆曲线上一切的点外加一个叫做无穷远点的特殊点构成的集合连同一个定义在该集合上的加法运算构成一个阿贝尔(Abel)群。在有限域Fq中定义椭圆曲线为:E:y2=x3+ax+bmodq,其中q为素数,4a3+27b20,E能构成群。椭圆曲线有一个特殊的点,记为O,
53、它并不在椭圆曲线E上,故此点称为无限远的点,在E这个群集合中有如下运算规那么:1加法规那么对一切的点PEp(a,b),那么:P+O=O+P=P,P+(-P)=0 (214)令P=(x1,y1)Ep(a,b),及Q=(x2,y2)Ep(a,b),且P-Q,那么:P+Q=(x3,y3) (215)其中x3=2-x1-x2y3=(x1-x2)-y1 (y2-y1)/(x2-x1)if PQ = (3x12+a)/2y1 if P=Q由于加法的操作对象和运算结果均是椭圆曲线上的点,因此椭圆曲线上的加法又简称为点加运算。点加运算的结果一定是椭圆曲线上的点,反之,假设有一条曲线上的点加运算的结果不在该曲线
54、上,那么它不是椭圆曲线。点加运算满足交换律和结合律。2数乘规那么椭圆曲线上的点可以相加,但不能相乘。可以定义一种数量乘法运算:将一个正整数和椭圆曲线上一个点相乘,简称数乘。设k是一个正整数,而尸是椭圆曲线上的一个点,那么数量乘法即的运算结果就是对点尸本身累加k次。如下式所示:kP=P+P+P=Q (216)等式KP=Q,其中Q和P属于EP(a,b),kp。(如图25所示)图25椭圆曲线的加法运算知k和点尸求点Q比较容易,反之知点Q和点P求k却是相当困难的,这个问题称为椭圆曲线上点群的离散对数问题(ECDLP)。椭圆曲线离散对数问题是椭圆曲线密码算法的中心。椭圆曲线密码算法的平安性与相应的椭圆曲
55、线离散对数问题的求解困难性等价。一个群G上的离散对数问题定义如下:用E(F)表示定义在有限域GF(Fq)上的椭圆曲线E在扩域F上的有理子群,设P,QE(F),假设知对某整数m有Q=mP成立,那么称m为点Q的椭圆曲线离散对数,简记为ECDL;而由P,Q及E求出m的问题称为E上的椭圆曲线离散对数问题,简记为ECDLP;相对于点Q,点P称为基点。与普通的DLP求解不同,ECDLP的求解更难。这是由于普通的DLP中,有限域上的对数问题由域加法和域乘法两种根本运算构成,这使亚指数时间的DLP指数积分算法变得可行37;而在ECDLP中,其代数对象只包括一种根本运算,即椭圆曲线群上的点加运算,这使得除了少数非常特殊的,可以转化为有限乘法域的椭圆曲线以外,亚指数时间的DLP求解算法对求解ECDLP无效。目前针对普通的ECDLP求解,尚未出现好的低于指数级时间的求解算法。目前针对ECDLP的求解算法主要有以下三类:1)针对普通
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度年福建省高校教师资格证之高等教育心理学押题练习试题B卷含答案
- 2024年度山西省高校教师资格证之高等教育法规题库综合试卷B卷附答案
- 2024年度年福建省高校教师资格证之高等教育学能力提升试卷B卷附答案
- 一年级数学(上)计算题专项练习汇编
- 职业培训学校计划及实施方案
- 2024年度合作伙伴保密义务协议
- 吊车租赁协议:2024年详细
- 2024年度工程承包施工协议范本
- 大理石产品购买与销售专项协议范本
- 2024年企业对外担保协议样式
- 皮炎湿疹诊断治疗课件
- Python程序设计课件第7章面向对象程序设计
- 空运提单格式
- 课件零件手册vespa gts250ie2011-2013cina
- 咽喉解剖生理医学课件
- 幼儿园课件《挠挠小怪物》
- 骨质疏松症-PPT课件
- 调查问卷-“职工之家”建设调查问卷
- 2019年11月系统集成项目管理工程师真题
- 小小建筑师公开课-PPT课件
- 完整版老旧住宅小区综合整治工程施工组织设计方案
评论
0/150
提交评论