收藏 分享(赏)

LBlock密码的实现与分析.docx

上传人:文档投稿赚钱 文档编号:1430761 上传时间:2018-07-16 格式:DOCX 页数:35 大小:265.38KB
下载 相关 举报
LBlock密码的实现与分析.docx_第1页
第1页 / 共35页
LBlock密码的实现与分析.docx_第2页
第2页 / 共35页
LBlock密码的实现与分析.docx_第3页
第3页 / 共35页
LBlock密码的实现与分析.docx_第4页
第4页 / 共35页
LBlock密码的实现与分析.docx_第5页
第5页 / 共35页
点击查看更多>>
资源描述

1、 本科毕业设计(论文)题目: LBlock 密码的实现与分析学生姓名: 所在系别: 管理系 专 业: 信息管理与信息系统 学 号: 20124304 指导教师: 教授 2016 年 6 月 北京电子科技学院本科毕业设计(论文)原创性及知识产权声明本人郑重声明:所呈交的毕业设计(论文)是本人在导师的指导下取得的成果。对本设计(论文)的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。因本毕业论文引起的法律结果完全由本人承担。本毕业设计(论文)成果归北京电子科技学院所有。特此声明毕业设计(论文)作者签名: 年 月 日【摘 要】随着信息技术的发展,物联网技术的普及,数据安全问题引起人们密切关注

2、,物联网的应用组件大致是由计算能力较弱的微型处理设备组成,因其运算量小、存储空间有限,导致许多物联网中的传统密码已经不能满足日益发展的数据安全需求,如高级加密标准(AES) 。为了保护数据安全,提高数据运算量和存储空间,出现了许多轻量级密码算法。其中 LBlock 算法是由我国吴文玲等人在 2011 年 ANCS 会议上提出来,与其他轻量级分组密码相比,LBlock 算法执行效率更高,适应性更强。LBlock 算法是一种 32 轮、分组长度为 64 比特、主密钥为 80 比特的类 Feistel 结构的轻量级分组密码。在 VC6.0软件环境下对 LBlock 算法进行实现,然后在此基础上结合

3、TCP/IP 协议以及Hash 函数对其进行实用化程序设计。【关键词】 轻量级分组密码 LBlock 算法 算法实现 安全性分析【Abstract】The information technology is developing very quickly, data security issues become increasingly prominent in the field of IOT caused serious concern, networking System components more computing power is relatively weak micro-p

4、rocessing equipment, its limited computing, storage capacity, leading to a traditional password, such as the advanced encryption standard (AES), we have been unable to better solve the problem of data security of its existence. To protect your data secure computing resource constrained environment,

5、there have been a number of lightweight cryptographic algorithms. The LBlock proposed by a lightweight block cipher, compared with other lightweight block cipher LBlock software and hardware implementation of more efficient and adaptable. LBlock algorithm 32, the packet length is 64 bits, the master

6、 key for the 80-bit block cipher lightweight class Feistel structure. In VC6.0 software environment for Mickey algorithm to achieve, and then combined on the basis of TCP / IP protocols as well as its practical function Hash programming.【Keywords】Lightweight block cipher LBlock algorithm achieve sec

7、urity目 录前 言步入 21 世纪信息时代,互联网,移动通信快速发展,人们对信息数据的安全关注度越来越高。最近几年,科技发展带来的信息进步是显而易见的,RFID技术和数据传输渗透到人们工作和生活的点点滴滴,由于轻量级分组密码算法结构较简单,密钥长度相对较短,硬件实现相对容易,能耗少,对设备的硬件要求也低,并对信息数据提供很大强度的安全保障,很适应微型设备,最近这几年轻量级分组密码有了迅速的发展,并在人们的工作和生活中起着十分重要的作用。近代密码学,尤其是进入二十一世纪以后,由于信息安全的不断深入,信息安全的重要性愈发突出。密码技术作为信息安全最重要的中心部分,涉及密码算法的部件设计、各种算

8、法的安全性分析还有数字签名等各种不同的领域,受到全世界各国的普遍重视。分组密码在对称密码学中起着十分重要作用,进入 20 世纪 90 年代,分组密码的理论得到普及,应用得到迅速发展。分组密码的原理大致如下:在加密过程中,明文被划分成相等长度的,并使用同一个加密算法和密钥对一组组明文数据进行加密。设明文数据序列为 p1,p2,,每 m 个组成一组明文 P= (p1,p2,pm)加密密钥为 K= (k1,k2,.,kt),明文 P 在加密密钥的控制下转换成一组密文 C = (c1,c2,.,cn),简记为 C=Ek(P ) 。轻量级分组密码 LBlock 算法是由吴文玲等人在 2011 年 ANC

9、S 会议上提出来的,其分组长度是 64 比特,密钥的长度是 80 比特,是 32 轮迭代分组算法, 采用 Feistel 算法结构,加密算法和解密算法互逆,使用的轮密钥顺序相反,其次对密钥扩展算法进行了独创设计,采用的是 Feistel 结构和 SPN 结构。因此分组密码在现实生活中有着非常广泛的应用,研究 LBlock 算法的实现与分析具有很高理论价值和实用价值。1 绪论轻量级分组密码算法是分组密码 1其中一种,分组密法算法的设计人大都受到 DES 算法和 AES 算法设计原理的影响。但轻量级分组密码不仅可以保障数据的安全,还提高的执行效率,以便适应特殊复杂环境,本质上,轻量级分组密码算法足

10、一种有限轮的带密钥的置换,其大致原理是将一定长度的明文数据经过分组,转换为相同长度的密文。分组密码算法主要有两种设计结构:其一是 Feistel 网络结构,不是所有分组都进入轮函数,只有一半分组才可以率先实现加解密,并且加解密互逆,使用的硬件资源较少,所以在计算能力低的环境中使用是十分有效的;其二是代替-置换网络(SPN)结构,每一轮包括混淆层和扩散层。该结构的最大优点是能够从理论上给出最低差分特征概率和最佳线性逼近优势的边界。本课题通过对分组密码算法 LBlock2进行实现与分析,理解分组密码算法的设计原理,进一步掌握现代分组密码学的知识,学习各种分组密码攻击方法,优化该算法的某些性能。1.

11、1 分组密码1.1.1 分组密码基本原理分组密码实现的具体过程如下:将明文数据表示的数字序列,划分成相等长度,每组长度为 n,可理解是 n 的矢量,然后对每组明文数列进行相同的加密计算,根据相应的密钥,变换成等长的输出序列。解密过程是加密的逆运算。扩散(diffusion)和扰乱(confusion)是影响密码安全的主要因素。扩散可以使明文中的单个字节或数据影响解密文件中的多个数据,从而使明文的统计特征丢失,影响运算准确性,等同于明文的统计特征被扩散。扰乱可以让密钥与密文的统计特征丢失,使信息数据之间的关系变得尤为复杂,从而提高了使用统计方法进行攻击的难度。解决扰乱的办法可以通过代换算法来实现

12、。AES 是分组密码中最典型的算法之一。AES 的征集开启了分组密码研究的新大门,大约有 15 个 AES 候选算法,也体现了如今分组密码设计实现的水平。分组密码所采用的整体结构有如下三种:包括 Feistel 结构,典型的代表有CAST-256 算法、 DEAL 算法、DFC/E2 算法等,SP 网络,典型的代表有 Safer+算法、Serpent 算法等,还包括其他密码结构,典型的代表有 Frog 算法和 HPC算法。DES 是典型的 Feistel 结构代表,Feistel 因其的公布而广为流传人知,并且被许多分组密码所采用。Feistel 结构的有其独特的好处,可以使得加解密相似,这一

13、点在实现中尤其重要。其次,SP 网络的特点是扩散特性尤其突出。在现有的分组密码中,所有的基本运算包括异或、加、减、乘及数据循环等。查表运算为 DES 的安全打下了基础,通过仔细地选择 S-盒,能有效地抗击线性和差分密码分析攻击,提供好的数据及密钥比特的雪崩特性。而 S-盒的设计与分析实现是分组密码设计实现中的重要组成部分,它直接影响密码算法的安全性,对 S-盒的设计并没有一个确定的要求,但一般提高 S-盒的非线性度、函数的代数次数以及项数。1.1.2 分组密码 S 盒S 盒(substi tution Box)首次出现在 Lucifer 算法中,随后因 DES 的使用而广为流行。S 盒是许多分

14、组密码算法中唯一的非线性部件,因此,它的密码强度决定了整个密码算法的安全强度,它的工作速度决定了整个算法的制乱速度。特别地,使用高强度的 S 盒对于增强 Feistel 型密码, SPN 型密码和 IDEA 型密码的安全性起着至关重要的作用。对 S 盒的深入研究不仅有助于迭代分组密码的设计,而且对于以非线性变换为核心的密码算法的分析有相当价值,同时也有助于快速寻求满足某些特定密码需求的新的密码函数。目前对分组密码的设计主要集中在非线性 S 盒的设计、置换方法的选择和寻找好的密钥扩展方案 3。S 盒的设计和构造主要集中在 S 盒的设计准则和构造方法上,S 盒的设计准则主要有:非线性度、差分均匀度

15、、代数次数及项数分布、扩散准则,平衡性以及相关免疫性。基于上述设计准则,人们提出了许多 S 盒构造方法,如随机提取并测试、使用数学函数构造等方法。1.2 分组密码发展现状 1.2.1 国外发展现状分组密码是现代密码学研究中的一个重要分支,其诞生和发展有着重要的理论价值和广泛的实用背景。最初出现的密码本质上是序列密码,它已广泛地应用于军事、外交等方面。分组密码是以二十世纪七十年代 DES(Data Encryptioil Standard)的出现为标志,在这以后得到了广泛的讨论和发展。由于 DES 的密钥量只有 56bits,在计算机技术高度发展的今天,DES 受到严重的安全威胁,事实上,199

16、7 年人们已成功破译由 DES 加密后的信息。1997 年 9 月,美国国家标准技术研究所(NIST:National Institute of Standards and Technology)为了履行其法定职责,发起了一场推选用于保护敏感的联邦信息的对称密钥加密算法活动。1998 年 8 月,NIST 宣布接受十五个候选算法并邀请全世界密码研究界协助分析这些候选算法,包括对每个算法的安全性和效率特性进行初步检验。NIST 考察了这些初步的研究结果,并且选定MARS、RC6 、RijndaelI、 Serpentl 和 Twofish 五个算法作为参加决赛的算法,经公众对决赛算法进行更进一步

17、的分析评论,2000 年 10 月,NIST 决定推荐Rijndael 作为高级加密标准(AES:Advanced Encryption Standard),2001 年 11 月,Rijndael 被采纳作为高级加密标准。继美国推出 AES 计划以后,欧洲于 2000年 1 月启动了新欧洲签名、完整性和加密计划一 NESSIE(New European Schemes for Signatures, Integrity and Encryption)计划,以适应 21 世纪信息安全发展的全面需求。该计划为期三年,投资 33 亿欧元,主要目的就是通过公开征集和进行公开的、透明的测试、评估提出一

18、套高效的密码标准,以保持欧洲工业界在密码学研究领域的领先地位。2001 年底,NESSIE 工作组在十七种候选的分组密码算法中,选定了IDEA、Khazad、MISTYl 、Camellia 、SHACAL、RC6、SAFER+等七种分组密码算法为分组密码的第二轮决赛算法,2003 年 2 月 27 日,NESSIE 工作组公布了包括分组密码、认证码、杂凑函数和数字签名等在内的十七个标准算法,其中 M1STYl、 Camellia、SHACAL 三个分组密码算法连同 AES 算法 Rijndael 一起作为欧洲新世纪的分组密码标准算法。由此可见,分组密码的设计与分析是目前国际信息安全领域的前沿

19、热点问题。1.2.2 国内发展现状轻量级分組密码算法作为一种特殊的分组密码算法,它们在硬件实现、加密速度、运行功耗等方面与 AES 等高强度密码算法相比有明显的优势,更适合物联网微型计算设备使用。常见的轻量级分组密码算法DESL、PRESENT,HIGHT, mCrypton,LED,MIBS,LBl0CK,KLEIN,KATAN 等等。现在的轻量级分组密码算法大都受到 DES 和 AES 设汁原理的影响。例如 A. Bogdanov 等人在 CHES2007 上提出的轻量级分组算法 PRESENT,轮函数就是代替-置换网络(SPN)结构,它借鉴了 AES 最终候选算法 Serpent 的设计

20、思路。该算法共 31 轮,分组长度为 64 比特,密钥规模分为 80 比特和 128 比特两种,分别称为 PRESENT-80 和 PIIESENT-128。与其它轻量级的分组算法相比,它的硬件执行效率更高,是轻量级分组算法中的佼佼者。轻量级分组密码算法 MIBS 是 M. Izadi 等人在 CANS 2009 上首次提出,使用了 Feistel 的算法结构。该算法针对 RFID 标签设计,它的硬件资源使用很少,远合在计算资源受到限制的环境下使用。MIBS 算法共有 32 轮迭代运算,其分组长度为 64 比特,密钥长度为 64比特和 80 比特。2009 年,在 CHES2009 会议上 C

21、annkre 等人提山了一种适用于硬件实现的轻量级分组密码 KATAN/KTANTAN,该结构类似于流密码算法的加密结构,使用了位的逻辑操作和移位操作。由于该分组密码在 0.13nm 工艺下具有硬件成本低、执行效率高等特点,非常适合 RFID 标签等对硬件成本和执行效率要求苛刻的环境。KATAN/KTANTAN 的密钥长度为 80 比特,需进行 254 轮的加密,分组长度有 32 比特,48 比特,64 比特三种。1.3 分组密码研究现实意义密码体制是信息安全的重要保障,而分组密码是密码体制的重要组成部分。通过研究 LBlock 分组密码重点研究,具有很高价值的研究意义:1.分组密码因为其体积小,运行速度快,适用于高速、大规模的网络数据传输、移动通信,与现代网络、移动通信发展趋势相吻合。2.分组密码符合现在密码算法发展趋势,具有很高的综合性、标准型。综合性是指分组密码不仅具有其本身的优点,在设计时一般也会流密码等其它的一些密码算法的优点。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 学术论文 > 毕业论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报