收藏 分销(赏)

对称密钥密码算法研究应用.doc

上传人:精*** 文档编号:2989678 上传时间:2024-06-12 格式:DOC 页数:99 大小:2.24MB 下载积分:20 金币
下载 相关 举报
对称密钥密码算法研究应用.doc_第1页
第1页 / 共99页
对称密钥密码算法研究应用.doc_第2页
第2页 / 共99页


点击查看更多>>
资源描述
河 南 科 技 大 学 毕 业 设 计(论 文) 题目_________________ 姓 名 ________ 院 (系)________ 专 业 ________ 指引教师 ________ 年 月 日 毕 业 设 计( 论 文 )任 务 书 填表时间: 年 12 月 10 日 研究所(教研室)主任签字: 年 月 日 对称密钥密码算法研究 摘 要 对称密码是当代密码学中一种重要分支,其诞生和发展有着广泛使用背景和重要理论价值。当前这一领域尚有许多理论和实际问题有待继续研究和完善。这些问题涉及:如何设计可证明安全密码算法;如何加强既有算法及其工作模式安全性;如何测试密码算法安全性;如何设计安全密码组件,例如S-盒、扩散层及密钥扩展算法等。 当前分组密码所采用整体构造可分为 Feistel 构造(如CAST-256、DEAL、DFC、E2等)、SP网络(如Safer+、Serpent 等)及其她密码构造(例如Frog和HPC)。Feistel 构造最大长处是容易保证加解密相似性;SP 网络则是扩散性能比较好。AES 沿袭了 SQUARE 特点采用了 SP 网络构造,并在加解密过程大量使用矩阵运算,这样做使得加密和解密过程略有不同,但大幅提高了算法实现效率。 虽然AES设计在分组密码系统发展上有了一种质奔腾,然而当前仍有研究和改进空间。AES 在各种平台上实现效率有待进一步提高, 同步新加解密工作模式也有待研究。本论文简朴简介了对称密码学某些基本知识和 AES 算法工作过程,依照 AES 算法大量矩阵运算特点,改进了老式加解密速度,给出了其在时间上优化:该算法时间优化可以提高AES算法加解密速度。 核心词:对称加密算法,DES,Rijndael,有限域 The Research Of Symmetric Key Cipher Algorithm ABSTRACT Symmetrical cryptosystem is an important branch of modern cryptography,with its appearance and development there are wide applicant background and theorial value. There are lot theorial and applicant problems need to be studied and optimized,such as:how to design a provable safe cryptosystem,how to strengthen the safty of algorithms and working modules which are already available,how to test the safty of a cipher algorithm,how to design safe components of a cryptosystem,as S-boxes,diffusing layers,and key-expanding processes,etc. The general architecture of symmetrical cryptosystem at present can be sorted as Feistel (CAST-256,DEAL,DFC E2,etc.),SP network (Safer+,Serpent,etc.) and other architectures (Frog,HPC). Symmetry is the most distinct character of Feistel,while SP network has a good deffuse capability. AES inherited SQUARE in designation,and added in a lot of matrix operations. This causes a bit different between encryption and decryption,but it optimizes the efficiency of the algorism. AES is a rapid progress in cryptosystem development,however,it needs to be ameliorated yet. The efficiency of AES may be boosted,and new working module is also necessary to be developed. This paper introuduces the theory of semmetrical cryptography and the working process of AES algorithm,improves a conventional means of increasing the encrypting speed ,proposes its optimized algorism,which can greately increase the encryptingspeed。 KEY WORDS:symmetrical cryptography,DES,Rijndael,finite field 目 录 摘 要 I ABSTRACT II 第1章 引 言 1 §1.1 概述 1 §1.2 课题研究现状及发展趋势 2 §1.3 分组密码定义 4 第2章 DES加密办法 6 §2.1 DES算法基本原理 7 §2.2 DES算法f函数解决 9 §2.3子密钥生成 12 §2.4 DES安全性问题 14 §2.5 IDEA分组密码 15 第3章 AES加密算法 16 §3.1 AES发展史 16 §3.1.1高加密原则制定过程 16 §3.1.2 AES评估及中选 17 §3.2 AES算法数学基本 18 §3.3 AES算法设计原理 21 §3.3.1 安全性原则 22 §3.3.2 实现性原则 23 §3.4 AES 算法整体构造 23 §3.4.1 迭代密码算法构造分类 24 §3.4.1.1 Feistel 网络构造 24 §3.4.1.2替代/置换(SP)网络构造 25 §3.4.1.3 AES 算法构造 25 §3.4.2加、解密输入输出 26 §3.4.3 AES算法环节 28 §3.4.4 AES 算法描述 30 §3.4.4.1 字节代换(SubBytes) 30 §3.4.4.2 行移变换(ShiftRows) 31 §3.4.4.3 列混合变换(MixColumns) 32 §3.4.4.5 密钥扩展(ExpandedKey) 34 第4章 AES迅速实现 37 §4.1 Rijndael算法实现方案 37 §4.1.1 实现考虑 37 §4.1.2 实现方案及其分析 38 §4.2 各模块算法描述及其分析 39 §4.2.1 计算轮函数T表 39 §4.2.2 轮函数C语言实现 40 §4.3 加密性能测试 42 §4.3.1 测试环境及开发平台 42 §4.3.2 测试办法 43 §4.3.3 测试成果 44 总 结 45 参照文献 46 致 谢 50 第1章 引 言 §1.1 概述 密码学是保密学一某些,保密学是研究密码系统或通信安全科学。密码学重要任务是解决信息保密性和可认证性,即保证信息在生成、传递、解决和保存过程中不被未授权者非法提取、篡改、删除、重放和伪造。它包括两个分支,即密码学( cryptology )和密码分析学(cryptanalytic)。密码学是对信息进行编码实现隐蔽信息一门学问,密码分析学是研究分析破译密码学问。两者互相对立又互相增进。 密码学使用与研究已有几千年历史,但是直到Shannon于1949年刊登了“保密通信信息理论”[1]之后,它才真正成为一门科学。而“密码学新方向”[2]刊登和美国数据加密原则DES颁布实行标志着当代密码学诞生,并从此揭开了商用民用密码研究序幕。此后,实用密码体制研究基本上沿着两个方向进行,即以RSA为代表公开密钥密码体制和以DES为代表秘密密钥分组密码体制。分组密码具备速度快、易于原则化和便于软硬件实现等特点,普通是信息与网络安全中实现数据加密、数字签名、认证及密钥管理核心体制,它在计算机通信和信息系统安全领域有着最广泛应用。 对称算法(symmetric algorithm),有时又称老式密码算法,就是加密密钥可以从解密密钥中推算出来,同步解密密钥也可以从加密密钥中推算出来。而在大多数对称算法中,加密密钥和解密密钥是相似。因此也称这种加密算法为秘密密钥算法或单密钥算法。它规定发送方和接受方在安全通信之前,商定一种密钥。对称算法安全性依赖于密钥,泄漏密钥就意味着任何人都可以对她们发送或接受消息解密,因此密钥保密性对通信性至关重要。 对称加密长处在于算法实现效率高、速度快。 对称加密缺陷在于:第一,密钥量问题。在单钥密码系统中,每一对通信者就需要一对密钥,当顾客增长时,必然会带来密钥量成倍增长,因而在网络通信中,大量密钥产生、存储和分派将是一种难以解决问题。第二,密钥分发问题。单钥密码系统中,加密安全性完全依赖于对密钥保护,但是由于通信双方使用是相似密钥,人们又不得不互相交流密钥,所觉得了保证安全,人们必要使用某些此外安全信道来分发密钥,例如用专门信使来传送密钥。这种做法代价是相称大,甚至可以说是非常不现实,特别在计算机网络环境下,人们使用网络传送加密文献,却需要此外安全信道来分发密钥,显而易见,这需要新解决办法。 §1.2 课题研究现状及发展趋势 分组密码[3-12]研究始于20世纪70年代中期,至今已有近30年历史,这期间人们在这一研究领域已经获得了丰硕成果。分组密码研究大体上涉及三个方面:分组密码设计原理、分组密码安全性分析和分组密码记录性能测试。 分组密码设计与分析是两个既互相对立又互相依存研究方向,正是由于这种对立增进了分组密码飞速发展。初期研究基本上环绕DES(Data Encryption Standard)进行,进入20世纪90年代后,人们对DES类密码研究更加进一步,特别是差分密码分析[13-14]和线性密码分析[15-16]提出,迫使人们不得不研究新密码构造。IDEA密码浮现打破了DES类密码垄断局面,IDEA密码设计思想是混合使用来自不同代数群中运算。随后浮现Sqare、Shark和Rijndael[17-18]都采用了构造非常清晰代替-置换(SP)网络[19-24],每一轮由混淆层和扩散层构成。这种构造最大长处是可以从理论上给出最大差分特性概率和最佳线性逼近优势界,也就是说密码对差分密码分析和线性密码分析是可证明安全。 1997年4月,AES征集掀起了分组密码研究新高潮,15个AES候选算法[25-29]反映了当时分组密码设计水平,可以说是近几年研究成果一种汇总。当前分组密码所采用整体构造可分为Feistel构造、SPN构造及其他密码构造。Feistel构造由于DES发布而广为人知,已被许多分组密码所采用。Feistel构造最大长处是容易保证加解密相似,这一点在实现中特别重要。而SPN构造比较难做到这一点,但是SPN构造扩散特性比较好。在既有分组密码中,所用基本运算有异或、加、减、查表、乘及数据依赖循环等。S盒是分组密码中唯一非线性部件,由于S盒需要某些存储器,因此其规模不能太大。15个AES候选算法所采用S盒规模有6种,分别是4×4、8×8、8×32、11×8、13×8及8×32。S盒又称黑盒子,它常给人们导致故意设立陷门嫌疑,因而,Rijndeal、Safer+等选用公开数学函数来避免嫌疑。S盒设计与分析是分组密码设计中重要环节,它好坏直接影响密码体制安全性。当前,对S盒设计并没有一种完备原则,但总但愿是增强S盒非线性度、差分均匀度及其分量函数代多次数和项数。 2月27日,欧洲签名、完整性和加密新原则筹划NESSIE[30](New European Schemes for Signatures,Integrity and Encryption)宣布了第二阶段终选算法。自此,密码学界继AES之后又一场为期三年旨在面向全球范畴进行公开征集,通过透明、公开测试评估,制定一整套高效密码原则(涉及分组密码、流密码、哈希函数、消息认证码函数、数据签名方案和公钥加密方案等)具备深远意义活动筹划尘埃落定。NESSIE通过四次国际会议热烈讨论、分析和评估,最,从48个算法中选出了24个原则算法。其中,分组密码加密原则共有四个算法——MISTY1(64比特)、AES(128比特)、Camellia(128比特)[31]和SHACAL-2(256比特)算法。 当前对分组密码安全性讨论重要涉及强力袭击、差分密码分析和线性密码分析等。从理论上讲,差分密码分析和线性密码分析是当前袭击分组密码最有效办法,而事实上,强力袭击是袭击分组密码最可靠办法。到当前为止,已有大量文献讨论各种分组密码安全性,同步推出了譬如差分-非线性密码分析[32]、截断差分-线性分析[33]、高阶差分密码分析[34]及插值袭击[35]等各种分析办法。自从AES候选算法发布后来,国内外许多专家学者都致力于候选算法安全性分析,推出了某些新袭击办法,这无疑将进一步推动分组密码发展。 当前在分组密码设计与分析方面尚有许多理论和实际问题亟待继续研究和完善,这些问题重要涉及[10]: (1) 算法部件方面,对多输出布尔函数各种性质进行摸索,如何对各种性质进行折衷而增强S盒实质安全性等。 (2) 算法构造方面,设计出算法如果能证明能抵抗某种袭击,算法则不会太复杂,有也许存在别分析办法;但是算法过于复杂又不利于设计者自身分析其密码性质。如何折衷也是值得考虑问题。 (3) 算法分析方面,除了从差分分析和线性分析发展起来各种分析办法外,针对算法整体构造,密钥扩展算法等方面分析办法也不断浮现,因而各个某些设计准则也相应在不断更新。 §1.3 分组密码定义 依照被加密明文解决方式不同,单钥密码体制普通可分为秘密密钥分组密码体制(简称分组密码)和秘密密钥流密码体制(简称流密码)。分组密码(Block cipher)是将明文消息编码表达后数字序列划提成长为n组x = (x0,x1,...,xn-1 ),各组长为n矢量分别在密钥k = (k0,k1,...,kn-1 ) 控制下变换成输出数字序列y = (y0,y1,...,ym-1 ) (长为 m 矢量),如图 1 所示。 图 2.1-1 分组密码简化框图 普通分组密码算法明文与密文长度相等,这表白加密和解密构造同样,便于简朴实现。若n>m,则为有数据扩展分组密码,易增长密文解密难度;若n<m,则为有数据压缩分组密码;若n=m,则为无数据压缩和扩展分组密码。密钥长度r在加密过程往往是一种变数,目是为了增长混乱和扩展性。普通地,相应密钥长度r,则有密钥量为2r。考虑GF(2)上共有2n、个不同置换,必要保证2r2n!。固然,r还不能太大,否则密钥难管理;但也不能太小,由于难以抵抗穷举搜索袭击。 第2章 DES加密办法 美国国标局年开始研究除国防部外其他部门计算机系统数据加密原则,于1973年先后两次向公众发出了征求加密算法公示。加密算法要达到目,重要为如下四点: (1) 提供高质量数据保护,防止数据未经授权泄露和未被察觉修改; (2) 具备相称高复杂性,使得破译开销超过也许获得利益,同步又要便于理解和掌握; (3) DES密码体制安全性应当不依赖于算法保密,其安全性仅以加密密钥保密为基本; (4) 实现经济,运营有效,并且合用于各种完全不同应用。 1977年1月,美国政府颁布:采纳IBM公司设计方案作为非机密数据正式数据加密原则即(DES即Data Encryption Standard)。它是由IBM公司研制一种对称加密算法,属于分组加密算法。美国国标局于1977年发布把它作为非机要部门使用数据加密原则,三十年来,它始终活跃在国际保密通信舞台上,扮演了十分重要角色。 DES是一种分组加密算法(即将数据分块),它用56位密钥以64位分组对数据加密。同步DES也是一种对称加密算法,它密匙长度是56位(添加个奇偶校验位后成64位,但有效位依然是56位),密匙可以是任意56位数,并且可以任意时候变化。其中有很少量数被以为是弱密匙(即很容易破解),但是很容易避开她们"因此保密性依赖于密钥。 DES寿命还不届时,就已被多次攻破而被以为不安全了,其中最知名两个袭击是差分密码分析和线性密码分析。但DES设计至今仍闪烁着人类设计思想精华,其构造和部件仍在被后人效仿。DES轮函数采用Feistel网络,8个s盒,扩充-压缩置换,块置换。其算法简洁迅速且加解密相似,但一种明显缺陷是s盒设计原则始终没有公开,因而公众长期地抱怨并怀疑它设有陷门。初期迭代分组密码设计重要环绕DES进行,日后在此基本上有很大发展,浮现了众多Feistel型密码,如:LOKI,FEAL,GOST,Lucifer等。 §2.1 DES算法基本原理 DES是分组长度为64比特,密钥长56比特分组密码算法。明文长度与加密得出密码长度同样,没有数据压缩和扩展。DES算法完全公开,保密完全依赖于密钥。 图2.1-1[36]是DES算法所有16轮构造图,输入(input)可以是明文也可以是密文,视使用者进行是加密或是解密操作。加密和解密唯一不同在于图右边16个轮子密钥Ki,1i16使用顺序正好相反,加密为K1,K2,...,K16,解密为K16,K15,...,K1。子密钥由密钥扩展算法生成。 图 2.1-1 DES加密算法16轮迭代过程 DES算法对输入64位明文进行一种初始置换IP(INITIALPERMUTATION,如图2.1-2),以打乱本来比特顺序。把置换后数据提成各32位左右两某些,左边记为L0,右边记为R0。对R0进行轮密钥控制下变换f,其成果记为f(Ro,K1),得到成果再与L0进行逐位异或(XOR)运算,成果作为下一轮数据右半部32比特R1。而R0作为下一轮数据左半部32比特L1。对L1和R1实行同样过程得L2和R2。这样一种过程称为轮加密,或轮迭代。如此进行16次轮迭代,最后得到L16和R16。最后再对(R16 L16)实行初始置换逆置换IP-1(INVERSE INITIAL PERM,如图2.1-3),得到密文。 轮运算可以简洁地表达如下: Ri=Li-1⊕f(Ri-1,Kl) Li=Ri-1,i=1,2,...16 初始置换及其逆置换是拟定,因此其在密码学上并没故意义。在DES之后某些密码就改进了这一点。 图 2.1-2 初始换位IP 图 2.1-2 逆初始换位IP-1 §2.2 DES算法f函数解决 DES迭代过程核心问题是非线性f函数功能,它是每轮实现加密混乱和扩散重要途径。其基本思想如图2.2-1所示。 图2.2-1 第i次f函数解决示意图 每一轮迭代过程密码函数f(Ri-1,ki)(1i16)都必要通过三个子过程(扩展置换、S盒替代(压缩)、P盒排列)解决得到。函数f是将32bit输入转化为32bit输出,中间参加运算成果为48为,加密函数f计算如图2.2-2所示。 图2.2-2 加密函数f计算过程 (1) 扩展置换 扩展置换简称E函数(Expand),功能是把32位扩展成48位,是一种与密钥无关纯移位变换,构造示意图如图2.2-3所示。扩展置换按32bit输入,分8组,每组4位,经E函数扩展后变成每组6位输出。若令ai(l)(1i4,18)为选取组相应每位输入,bj()(1i4,18)为选取组扩展每位输入,则有扩展公式为: 其中组排列具备循环性,即当=1时,b1(1)=a4(8);=8时,b6(8)=a1(1)。 扩展置换所有形式如表2.2-1所示。扩展成果与子密钥Ki(1i16)进行异或运算,成果作为S盒输入。 表2.2-1 扩展置换E函数 图 2.2-3 扩展置换示意图 (2) 压缩替代(S盒选取) 压缩替代是通过8个S盒(替代盒Substitution Box)对的选用将48位属入变换为32输出。 第i个S盒是一种6比特输入4比特输出变换,变换规则是取{0,1,…,15}上4个置换,即它4个排列排成4行,得到4*16矩阵。设S盒输入是b0b1b2b3b4b5,输出相应矩阵中b0b5行b1b2b3b4列中元素。8个S盒构造可由表2.2-2表达。 表 2.2-2 S盒选取表 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 S1 0 1 2 3 14 0 4 15 12 151 12 13 7 14 8 1 4 8 21 2 14 13 4 15 2 6 9 11 13 2 1 8 1 11 7 3 10 15 5 10 6 12 11 6 12 9 3 12 11 7 14 5 9 3 10 9 5 10 0 0 3 5 6 7 80 13 S2 0 1 2 3 15 3 0 13 1 13 14 8 8 4 7 10 14 7 11 1 6 15 10 3 11 2 4 15 3 8 13 4 4 14 1 2 9 12 5 11 7 0 8 6 2 1 12 7 13 10 6 12 12 6 9 0 0 9 3 5 5 11 2 14 10 5 15 9 S3 0 1 2 3 10 13 13 1 0 7 6 10 9 0 4 13 14 9 9 0 6 3 8 6 3 4 15 9 15 6 3 8 5 10 0 7 1 2 11 4 13 8 1 15 12 5 2 14 7 14 12 3 11 12 5 11 4 11 10 5 2 15 14 2 8 1 7 12 S4 0 1 2 3 7 13 10 3 13 8 6 15 14 11 9 0 3 5 0 6 0 6 12 10 6 15 11 1 9 0 7 13 10 3 13 8 1 4 15 9 2 7 1 4 8 2 3 5 5 12 14 11 11 1 5 12 12 10 2 7 4 14 8 2 15 9 4 14 S5 0 1 2 3 2 14 4 11 12 11 2 8 4 2 1 12 1 12 11 7 7 4 10 1 10 7 13 14 11 13 7 2 6 1 8 13 8 5 15 6 5 0 9 15 3 15 12 0 15 10 5 9 13 3 6 10 0 9 3 4 14 8 0 5 9 6 14 3 S6 0 1 2 3 12 10 9 4 1 15 14 3 10 4 15 2 15 2 5 12 9 7 2 9 2 12 8 5 6 9 12 15 8 5 3 10 0 6 7 11 13 1 0 14 3 13 4 1 4 14 10 7 14 0 1 6 7 11 13 0 5 3 11 8 11 8 16 13 S7 0 1 2 3 4 13 1 6 11 0 4 11 2 11 11 13 14 7 13 8 15 4 12 1 0 9 3 4 8 1 7 10 13 10 14 7 3 14 10 9 12 3 15 5 9 5 6 0 7 12 8 15 5 2 0 14 10 15 5 2 6 8 9 3 1 6 2 12 S8 0 1 2 3 13 1 7 2 2 15 11 1 8 13 4 14 4 8 1 7 6 10 9 4 15 3 12 10 11 7 14 8 1 4 2 13 10 12 0 15 9 5 6 12 3 6 10 9 14 11 13 0 5 0 15 3 0 14 3 5 12 9 5 6 7 2 8 11 (3) P盒排列 P盒排列也是一种置换(Permutation),将压缩替代得到32位成果重新按图2.2-4顺序排列,得到变换后32位,即为密码函数f(Ri-1,Ki)输出。 图2.2-4 P排列 §2.3子密钥生成 在DES算法中,每一轮迭代运算都是用一种子密钥,子密钥自身是从顾客输入密钥来产生,图2.3-1给出了子密钥产生流程图。K是长度为64位比特串,其中56位是密钥,8位是奇偶校验位,分布在8,16,24,32,40,48,56,64,比特位置上,目是用来检错,可在8位组中检查单个错误,事实上,在密钥编排计算中用56位,不涉及这8位。 子密钥生成大体过程分为:置换选取1(pc-1)、循环左移、置换选取2等变换,分别产生16个子密钥。 (1) 置换选取1(pc-1) 对56位密钥输入按表2.3-1进行重新编排。将前28位作为C,后28位作为D。即 C0=K57K49K41...K52K44K36 D0=K63K55K47...K20K12K4 图 2.3-1 子密钥产生流程 表2.3-1 PC-1 57 49 41 33 25 17 9 1 58 50 42 34 26 18 10 2 59 51 43 25 27 19 11 3 60 52 44 36 63 55 47 39 31 23 15 7 62 54 46 38 30 22 14 6 61 53 45 37 19 21 13 5 28 20 12 4 (2) 循环左移计算 对16轮计算模型描述如下: LSi表达循环左移一种或两个位置,它取决于i值变化次数,当i=1,2,9,16时,则左移一种位置,别的左移两个位置,如表2.3-2所示。 表5-3 迭代次数 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 左移位数 1 1 2 2 2 2 2 2 1 2 2 2 2 2 2 1 例如,相应不同次数,左移变化状况如下: i=1,C1=c1c2...c27c28, D1=d1d2...d28 i=2,C2=c2c3...c28c1, D1=d2d3...d28d1 i=3,C3=c4c5...c28c1c2c3, D1=d4d5...d28d1d2d3 以此类推。 (3) 选取置换2(pc-2) 其作用是删除每次移位后C中第9、18、22、25位和D中第7、9、15、26比特位,别的比特按表2.3-3置换后从出48位比特,作为第i次迭代子密钥ki使用。 表2.3-3 PC-2 14 17 11 24 1 5 3 28 15 6 21 10 23 19 12 4 26 8 16 7 27 20 13 2 41 52 31 37 47 55 30 40 51 45 33 48 44 49 39 56 34 53 46 42 50 36 29 32 §2.4 DES安全性问题 DES密钥空间为256,使用硬件解码速度相称快。在1997年,人们预计建成一台每秒钟检测一百万个密钥专用机用于DES解密要耗资两千万美元,并且需要12个小时破解才干得到成果,因此当时被以为是一种十分强健加密办法。其问世年来,成为密码界研究重点,经受住了许多科学家研究和破译,是一种世界公认较好加密算法,在POS、ATM、磁卡及智能卡(IC卡)、加油站、高速公路收费站等民用密码领域有着广泛应用。应用范畴涉及:计算机网络通信中数据保护、电子资金传送系统中信息加密、保护顾客文献、顾客辨认等,为全球贸易、金融等非官方部门提供了可靠通信安全保障。 但是,当今计算机速度越来越快,1997年,制造一台用于DES解密专用机费用降到十万美元左右,破解时间为6小时。而在21世纪今天破译成本更低,DES已经不再安全。因而,56位密钥显然影响了它保密强度。针对DES算法密钥短问题,密码学家又研制了80位密钥,以及在DES基本上采用三重DES和双密钥加密办法。双密钥办法用两个56位密钥k1、k2对明文进行三次加密,发送方用k1加密,k2解密,再使用k1加密。接受方则使用k1解密,k2加密,再使用k1解密,其效果相称于将密钥长度加倍,缺陷是要耗费本来三倍时间[37]。当前,三重DES112位密钥长度被以为是很“强健”加密方式。此外,由于DES算法完全公开,其安全性完全依赖于对密钥保护,必要有可靠信道来分发密钥(如采用信使递送密钥等),不适合在网络环境下单独使用。 §2.5 IDEA分组密码 对DES成功破译迫使人们重新设计密码算法。IDEA[38]是第一种不采用Feistel网络密码。IDEA安全性设计思想是:采用同一明文空间上三个不同群运算,使掩蔽,混淆和扩散溶为一体。IDEA是分组密码杰出代表,开创了新一类设计风格。 第3章 AES加密算法 §3.1 AES发展史 §3.1.1高加密原则制定过程 最初阶段,1997年1月,美国国标和技术研究所(NIST)发布公示征集新加密原则,即AES。新加密原则将取代旧数据加密原则(DES)和三重DES而成为一种(美国)联邦信息解决原则(FIPS)。 与DES、安全散列算法(SHA-1)和数字签名算法(DSA)选取过程不同。NIST宣布AES选取过程将是公开,任何人都可以提交候选密码算法,任何符合规定提案都将被仔细考虑,NIST自身不进行任何安全或效率评估,而是邀请密码学界袭击候选算法并进行密码分析,并且任何感兴趣人都可以评估候选算法实当代价。所有成果都可以作为公开评论发给NIST,并在NISTAES网站发布,或者也可以提交AES会议进行陈述。NIST只是收集这些评沦。将其作为评比AES根据,并在评估报告中增进它们被选取。 FIPS原则官方范畴非常有限,它只合用于美国联邦行政部门。然而新AES将仅仅用于保护包括敏感但非机密信息文档,然而 AES预期影响将远远不止这些:由丁AES是DES继承者,它自从被接纳为原则之日起就已经被银行业、行政部门和工业界作为事实上密码原则。 Rijndael被正式批准为政府原则事实赋予了它一种官方“质量证书”。当前,AES己经提交国际原则化组织(ISO)和因特网工程任务组(IETF),同步电子和电气工程师协会(IEEE)也正在考虑接纳其作为原则。甚至在Rijndael成为AES之前,己经有多家组织和公司声明接纳Rijndael。欧洲电信原则协会(ETSI)在其MILENAGE算法集中集成了Rijndael模块,并且有多家密码库提供商也早已在它们产品中包括了Rijndael。 Rijndael被迅速接受因素重要在于其可免费获得,并且可以在不明显减少带宽前提下易于在大量平台上实现。 §3.1.2 AES评估及中选 DES因其密钥仅有56位等因素而存在被破译也许,日后浮现了三重DES,但三重DES又因加密速度太慢而不能满足人们需要,这就规定提出安全性更好、加密速度较快新数据加密原则。 1997年1月2日,美国国标技术研究所(NIST)发起了征集AES(Advanced Encryption Standard)算法活动,并专门成立了工作组。目就是开发一种联邦信息解决原则(FIPS)来提出一种能保护下一世纪政府敏感信息算法。1997年9月12日正式提出了征集AES公示。并指出:AES候选算法必要是一种非保护、公开、全球免费使用安全算法,并且也是一种能支持分组长为对称密钥分组算法,其密钥长可以是128/192/256bit。 1998年8月20日,NIST召开第一次AES候选会议,宣布了满足候选规定15个候选算法,并在会议上和出版FederalRegister杂志上对这些算法进行公开评论。1999年3月22日召开了第二次AES候选会议,公开了对第一阶段15个候选算法分析和测试成果,并从中选取5个候选算法,分别是IBM公司提出MARS算法,RSA公司提出RC6算法,Joan Daemen和Vincent Rinmen提出Rijndael助算法,Ross Anderson、Eli Biham和Lars Knudsen提出Serpent算法以及由Bruce Schneier、John Kelsey、Doug Whiting、David Wagner、Chris Hall和Niels Ferguson提出Twofish算法。11月从中选用Rijndael算法作为下一代密码算法AES[39-40] 在AES候选算法评估过程中,AES工作组考虑所有评论、论文、NIST研究和报告,提出了如下评判准则[41]. (1) 安全性。这是评估中最重要因素,涉及:算法抗密码分析强度,稳定数学基本,算法输出随机性以及与其她候选算法比较相对安全性。 (2)代价。这是评估中第二重要因素[42],重要涉及:应具备高执行效率和低存储需求有点;并且各运算部件具备良好记录特性,并行执行度高;加、解密速度快,不需要繁琐乘法运算。 (3)算法实现特性[43]。它涉及:灵活性,硬件和软件适应性,算法简朴性。其中灵活性应涉及:解决密钥和分组长度必要超过最小支持范畴;在许多不同类型
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 研究报告 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服