河北经贸大学毕业论文摘 要本文论述了利用Verilog硬件语言来描述DES加密技术对它进行模块设计并用ModelSim SE进行了仿真且详细的对DES加密解密的工作原理及算法进行了解释讲解加密的历史可以追溯到公元前2000年的古埃及,当时人们只是运用简单的象形文字,到现在已经有各种各样的加密技术,而DES加密是采用对称密钥加密法,即用相同密钥进行加密和解密本文对DES加密模块的设计进行了详细的介绍,对DES加密技术的工作原理及DES的算法进行了详细的介绍DES算法的3个入口参数为key、data、mode,key为加密解密使用的密钥,data为加密解密的数据,mode为其工作模式本文只对key-gen模块进行了详细的讲解DES加密工作原理中只详细介绍了DES的一轮,其中对DES的一轮中各个步骤进行了比较详细的简介对DES加密算法进行了图解和说明,并用表格形式对DES的置换规则,放大换位,单纯换位进行了描述且对DES算法框图中的选择函数S1,S8进行了表格描述另外本文还对采用的硬件描述语言Verilog HDL进行了简介,对其语法和源代码等进行了介绍关键词 DES ;Verilog HDL;ModelSim SE;加密技术 AbstractThis article discusses the use of Verilog hardware description language for encryption of DES technology to its modular design and simulation with ModelSim SE. Detailed work on the encryption of DES and algorithm of decryption explained principle and explain. Encryption can be traced back the history of ancient Egypt in 2000 BC, when people just use simple hieroglyphs, to now have a variety of encryption technology. The method with symmetric encryption is used of the encryption of DES, which uses the same dense key for encryption and decryption.In this paper, introduced the design of encryption、the work of principle of DES and the algorithm of DES in detail.The algorithm of DES has three entrance parameters : key、data and mode.The key is used of the encryption and decryption.This article discusses the module of key_gen and introduces the one replacement of DES in detail,alse introduces the one replacement on the DES in the profile. The illustrations and tabular form are used of the algorithm and the replacement of the DES rules、zoom transposition、simple transposition are described in this article. The algorithm and the choice of function S1、S8 are described with form. Additionally, this article introduces Verilog HDL with description language of hardware and its syntax and source code.Keywords DES;Verilog HDL;ModelSim SE ;encryption technology32目 录1 绪论 11.1 DES的概要及背景 11.2 Verilog模块的概要及背景 22 设计的技术基础 32.1 EDA技术简介 32.2 Verilog HDL语言简介 42.2 ModelSim SE 简介 53 DES工作原理 73.1 基本原理 73.2 初始置换 93.3 DES的一轮 103.4 最终置换 144 DES加密模块设计 154.1 DES加密算法介绍 154.2 DES加密模块设计 184.2.1 DES加密模块总体构架 184.2.2 密钥产生模块key_gen设计 194.2.3 S部件代换模块设计 234.2.4 desround 模块设计 244.2.5 DES顶层模块des设计 274.3 DES加密方案设计 284.3.1 资源优先设计方案 284.3.2 性能优先设计方案 28总结 30致谢 31参考文献 32DES加密Verilog模块设计1 绪论1.1 DES的概要及背景数据加密标准(DES,Data Encryption Standard)也称为数据加密算法(DEA,Data Encryption Algrithm)(ANSI)和DEA-1(ISO),是近20年来使用的加密算法。
后来,人们发现DES在强大攻击下太脆弱,因此使DES的应用有所下降但是,任何一本安全书籍都不得不提到DES,因为它曾经是加密算法的标志介绍DES的细节还有两个作用:第一,介绍DES;第二,更重要的是分析和理解实际加密算法利用这个方法,我们还要从概念上介绍其他加密算法,但不准备深入介绍,因为通过DES介绍已经可以了解计算机加密算法的工作原理DES通常使用ECB,CBC,或CFB模式DES产生可以追溯到1972年,美国的国家标准局(NBS,即现在的国家标准与技术学会,NIST)启动了一个项目,旨在保护计算机和计算机通信中的数据它们想开发一个加密算法两年之后,NBS发现IBM公司的Lucifer相当理想,没有必要从开头开发一个新的加密算法经过几次讨论,NBS于1975年发布了这个加密算法的细节到1976年底,美国联邦政府决定采用这个算法,并将其更名为数据加密标准不久,其他组织也认可和采用DES作为加密算法DES算法为密码体制中的对称密码体制,又被成为美国数据加密标准,是1972年美国IBM公司研制的对称密码体制加密算法其密钥长度为56位,明文按64位进行分组,将分组后的明文组和56位的密钥按位替代或交换的方法形成密文组的加密方法。
DES( Data Encryption Standard)算法,于1977年得到美国政府的正式许可,是一种用56位密钥来加密64位数据的方法虽然56位密钥的DES算法已经风光不在,而且常有用DES加密的明文被破译的报道,但是了解一下昔日美国的标准加密算法总是有益的,而且目前DES算法得到了广泛的应用,在某些场合,仍然发挥着余热1.2 Verilog模块的概要及背景Verilog HDL是在1983年由GDA(Gateway Design Automation)公司的Phil Moorby首创的Phil Moorby后来成为Verilog-XL的主要设计者和Cadence公司(CadenceDesign Systems)的第一合伙人在1984至1985年Moorby设计出了第一个名为Verilog-XL的仿真器,1986年他对Verilog HDL的发展又作出了另一个巨大的贡献,即提出了用于快速门级仿真XL算法随着Verilog-XL 算法的成功,Verilog HDL得到了迅速发展1989年, Cadence 收购了GDA公司, Verilog HDL语言成为Cadence公司的私有财产。
1990年,Cadence公司决定公开Verilog HDL语言,于是成立了OVI(Open Verilog International)组织来负责促进Verilog HDL语言的发展基于Verilog HDL的优越性,IEEE于1995年制定了Verilog HDL的IEEE标准, 2005年System Verilog IEEE1800-2005标准的公布,更使得Verilog语言在综合,仿真验证和模块的重用等性能方面都有大幅度提高Verilog HDL是一种硬件描述语言(hardware description language),为了制作数字电路而用来描述ASICs和FPGA的设计之用Verilog 的设计者想要以 C 编程语言为基础设计一种语言,可以使工程师比较容易学习该语言允许设计者进行各种级别的逻辑设计,进行数字逻辑系统的仿真验证时序分析逻辑综合它目前是应用最广泛的硬件语言Verilog HDL进行设计最大的优点是其工艺无关性这使得工程师在功能设计,逻辑验证阶段可以不必过多考虑门级及工艺实现的具体细节,只需根据系统设计的要求施加不同约束条件,即可设计出实际电路2 设计的技术基础2.1 EDA技术简介EDA(Electronics Design Automation)技术是随着集成电路和计算机技术的飞速发展应运而生的一种高级、快速、有效的电子设计自动化工具。
随着计算机、集成电路、电子系统设计的发展,EDA技术先后经历了计算机辅助设计CAD(Computer AssistDesign)、计算机辅助工程设计CAE(Computer As-sist Engineering Design)及电子系统设计自动化ESDA(Electronic System Design Automation)三个发展阶段EDA关键技术之一就是采用硬件描述语言对硬件电路进行描述,且具有系统级仿真和综合能力目前应用比较广泛的硬件描述语言就是Verilog HDL,它最早是由美国国防部提出来的利用EDA技术进行电子系统的设计,具有以下几个特点:① 用软件的方式设计硬件;② 用软件方式设计的系统到硬件系统的转换是由有关的开发软件自动完成的;③ 设计过程中可用有关软件进行各种仿真;④ 系统可现场编程,升级;⑤ 整个系统可集成在一个芯片上,体积小、功耗低、可靠性高因此,EDA技术是现代电子设计的发展趋势,是现代电子信息工程领域的一门新技术EDA技术涉及面广,内容丰富,主要应掌握如下四个方面的内容:① 大规模可编程逻辑器件;② 硬件描述语言;③ 软件开发工具;④ 实验开发系统其中,大规模可编程逻辑器件是利用EDA技术进行电子系统设计的载体,硬件描述语言是利用EDA技术进行电子系统设计的主要表达手段,软件开发工具是利用EDA技术进行电子系统设计的智能化的自动化设计工具,实验开发系统则是利用EDA技术进行电子系统设计的下载工具及硬件验证工具。
2.2 Verilog HDL语言简介Verilog HDL最初是美国国防部为其超高速集成电路研究计划提出的硬件描述语言,目。