基于FPGA的USB数据加解密系统
- 格式:pdf
- 大小:2.63 MB
- 文档页数:50
华中科技大学硕士学位论文基于FPGA的USB数据加解密系统姓名:贾涛申请学位级别:硕士专业:通信与信息系统指导教师:卢益民2011-01华 中 科 技 大 学 硕 士 学 位 论 文摘 要USB存储介质以其方便快捷、大容量、便于携带等特点得到广泛使用,这也导致客观上存在USB存储介质中数据丢失泄露的风险。
信息加密技术是应对这种风险的最基本、最核心的技术措施和理论基础。
对数据可以进行软件加密也可以进行硬件加密,硬件加密因其高可靠性和高速性越来越得到重视。
用FPGA器件进行硬件加密具有全硬件电路、可自行更新密码算法模块的优点,本系统硬件以Altera公司的CyclonII系列芯片EP2C8Q208C8为核心,分别通过CY7C68013与上位机、CH376与USB存储介质通信。
本系统的目的是用FPGA实现AES算法从而对数据进行有效加密。
AES即高级数据加密标准,是事实上的国际标准,并且AES算法全免费公开,基于该算法的密码产品已得到广泛应用,因此对它的研究具有很强的现实意义。
AES算法主要包括三个方面:轮变化、圈数和密钥扩展。
本系统选择算法输入为128bit,密钥长度128bit。
用Nr表示对一个数据分组加密的轮数,每轮都需要一个与输入分组具有相同长度的扩展密钥。
通常来说外部输入的加密密钥K长度都是有限的,所以需要在算法中引入一个密钥扩展模块,原始密钥扩展经过密钥扩展得到更长的比特串,获得算法中各轮的所需的加密/解密密钥,本文对加解密模块中的控制部分和密钥扩展部分做了比较详细的说明。
本文讨论了AES算法的基本原理、算法结构和工作流程;设计了系统工作平台,它由硬件层、固件层、软件层三部分共同构成,给出了其硬件、软件开发环境;系统采用模块化设计思想,论文详细论述了各功能模块的设计和实现,主要分成Verilog语言描述的AES加解密模块、CY7C68013通信模块和CH376读写U盘模块,分别给出了硬件电路、软件说明以及相应测试或仿真结果。
关键词:FPGA;AES算法;USB;硬件加解密系统华 中 科 技 大 学 硕 士 学 位 论 文AbstractWith the development of information industry and technology, USB memory is widely used. On the other hand, more attention is paid to information security. The advantages of hardware encryption make people pay more attention to their research. Hard implementation of cipher algorithms is the core content of the hardware encryption system.Data can be encrypted by software system or hardware system, but for high reliability and high-speed the hardware encryption system gets more and more attention. The hardware encryption system with FPGA device has the hardware circuit and can update the algorithm modules easily. The system has Altera company’s CyclonII series chip EP2C8Q208C8 as the core, respectively use CY7C68013 to communicate with PC, CH376 to communicate with USB storage.This system uses FPGA to realize AES algorithm. AES is the data encryption international standard in reality, and AES algorithm is completely open and free, based on this algorithm, the products has been widely used,so the research has strong practical significance. AES algorithm, mainly includes three aspects: wheel change, lap and key expansion. This system divided input into 128 bits, and the key length is 128 bits too.This paper discussed the basic principle, structure and work flow of the AES algorithm; Design the system working platform, it consist of hardware layer, firmware layer, software layer, the paper gives the hardware and software development environment; This system adopts the idea of modular design, and discussed the design and implementation of the function modules, mainly divided into the AES encryption and decryption module that descripted by Verilog language, the CY7C68013 communication module and the U disk write/read module based on CH376, then presented the hardware circuit and software specifications and relevant test or simulation resultsKeywords: FPGA; AES algorithm; USB; hardware encryption/decryption system独创性声明本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成果。
尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的研究成果。
对本文的研究做出贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律结果由本人承担。
学位论文作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
保密 ,在年解密后适用本授权书。
本论文属于不保密 。
(请在以上方框内打“√”)学位论文作者签名:指导教师签名:日期:年月日日期:年月日华 中 科 技 大 学 硕 士 学 位 论 文1 绪论1.1课题背景与意义科技的发展特别是网络的发展使计算机深入到了各行各业的方方面面,计算机在带来方便和提高了工作效率的同时却也带来了各种各样的新问题,其中信息安全问题最为突出。
这是因为电脑、手机、数码相机、U盘等各种数码产品的高度发展让每一个人都拥有了大量重要数据乃至私人秘密。
特别是USB存储介质以其方便快捷、大容量、便于携带等特点得到广泛使用,人们既要保存这些资料,又要保证它们在移动过程中不丢失泄露。
在客观上就要求数据移动存储介质具有可靠的保密性能。
否则,现在USB存储器产品容量动辄以G为单位,一些闪存盘的容量甚至高达百G,这些海量信息一旦丢失,必将带来信息侵权、信息渗透,乃至信息犯罪【1】。
信息加密技术是应对这种风险的最基本、最核心的技术措施和理论基础。
信息加密过程由多种加密算法来具体实施,将信息明文变换成密文进行发送,使截取者无法破译。
目前加密技术主要是【2】:对称密钥和非对称密钥。
对称加密是指在信息加密过程中,对信息的加密和解密都使用相同的密钥。
双方通过这把密钥加密后传给另一方。
非对称加密〔公开密钥加密)是指在加密过程巾,密钥被分为一对。
这对密钥中的任何一把都可以作为公开密钥通过非保密方式向他人公开,而另一把则作为私有密钥加以保存。
公开密钥用于对信息的加密私,私有密钥则用于对加密信息的解密。
本文要讨论的AES加密属于对称加密,具有容易实现、加密速度快的优点。
同时因为它的算法特点,很大程度上解决了之前DES、3DES算法由于密钥较短,随着计算机速度的不断提高,容易被穷举法破解的问题,成为事实上的国际标准,并且AES算法全免费公开,基于该算法的密码产品已得到广泛应用,因此对它的研究具有很强的现实意义【3】。
AES算法主要包括三个方面:轮变化、圈数和密钥扩展。
本系统选择算法输入为128bit,密钥长度128bit。
AES算法可以采用软件方式实现也可以采用硬件方式实现,两者对比,软件加密的成本低、易于实现,但是同时硬件加密因其高可靠性和高速性越来越得到重视,用FPGA器件进行硬件加密具有全硬件电路、可自行更新密码算法模块的优点,本系统硬件以Altera公司的CyclonII系列芯片EP2C8Q208C8【4】为核心,分别通过CY7C68013与上位机、CH376与USB存储介质通信。
华 中 科 技 大 学 硕 士 学 位 论 文1.2研究现状目前从信息加密手段来看,软件加密得到普遍应用,其主要原因在于电脑的普及以及CPU速度的提升,由此带来的软件运算速度加快、成本降低。
特别是各种算法的开源代码通过互联网广泛传播,使得软件加密的门槛进一步放低,如软件“AutoKrypt V9.03”可以基于文件虚拟加解密磁盘,“NewSoftwares Folder Lock V6.5.0”可以基于文件加解密目录。
软件加密的方法完全可以满足个人使用的要求,但是如果用于军队、金融机构等高安全性、大数据量的情况下,软件加密的缺点就暴露出来:软件加密要占用较多主机资源、程序的运行容易被跟踪、密钥口令不易管理、病毒软件特别是木马程序后门程序带来威胁,等等。