基于GF(2^409)ECC加解密系统的设计

 2023-04-20 01:04

论文总字数:15958字

摘 要

随着互联网的广泛应用,原有密码体系安全不能得到保证,椭圆曲线加密(Elliptic Curve Cryptography,下文简称ECC)系统因为其优越性得以普及,应用到日常生活中,因而本论文是设计一种GF(2^409)的ECC数字电路。文中详尽介绍了ECC加密模块的硬件实现和底层模块的原理及设计,对总体硬件方案也做出详细的解说。本文着重介绍了ECC的理论体系,根据ECC协议对整个系统分为多个模块,再对各个模块进行分析介绍。根据“自顶向下”的数字IC设计思想,划分硬件电路层次及各模块的功能,而后“自底向上”分层分模块实现了电路设计。通过ModleSim软件的仿真,对仿真结果进行了分析,输入与输出的仿真符合设计的结果,成功完成整个设计的流程。

关键词椭圆曲线加密;二进制域乘法器;有限域;KOA方法

Based on GF (2^409) design of ECC encryption system

Abstract

With the wide application of Internet, the original password system is no longer safe, elliptic curve cryptography (ECC), hereinafter referred to as the ECC) system because of its superiority has been popularized rapidly, applied to daily life, but the software completed ECC performance is poor. Therefore, in this paper, we consider the ECC digital circuits with over GF (2^409) based on ECC system design. Describes in detail the principle and design of hardware implementation of ECC encryption module and the bottom module, the overall scheme of the hardware and also make a detailed explanation. Are introduced in this paper the theory of ECC system, based on ECC Protocol, the protocol is divided into multiple levels, respectively, to study the implementation algorithm of each layer. According to the "top-down" Digital IC design, each module function of the hardware circuit is divided, then "from the bottom to the" hierarchical module circuit design is completed.

Keywords Elliptic curve cryptography; Binary multiplier; Finite field; KOA method

目录

摘要 I

Abstract II

目录 III

第一章 绪论 5

1.1 课题研究的目的与意义 5

1.2 国内外对ECC的研究现状 5

1.3 本设计研究目的 6

1.4 本设计研究内容 6

1.5 论文结构 7

第二章 设计基础 8

2.1 Verilog语言 8

2.2 ModelSim软件 8

2.3 Xilinx ISE 9

2.4 Design Compiler和Astro Workshop 9

第三章ECC概述 10

3.1 椭圆曲线定义 10

3.2 ECC加解密原理 11

3.3 ECC加解密运算层次 12

第四章ECC加密系统的设计 13

4.1 参数设置 13

4.2 ECC加密算法层次 13

4.3 ECC加密模块的硬件实现 13

4.3.1 总体设计方案 13

4.3.2 有限域算术模块设计 14

4.4底层模块的原理 15

4.4.1模加的原理及硬件设计原理 15

4.4.2模乘的原理及硬件设计原理 16

4.4.3模平方的原理及硬件设计原理 16

4.4.4模逆的原理及硬件设计原理 17

4.4.5点加和倍点原理及硬件设计原理 17

4.4.6 顶层模块的功能 18

第五章 ECC仿真结果 20

5.1 仿真 20

5.1.1加密仿真 20

5.1.2 解密仿真 20

5.1.3 仿真结果总结 20

5.2 DC报告 20

第六章 总结 23

致谢 24

参考文献 25

第一章 绪论

1.1 课题研究的目的与意义

现代社会生活对互联网的应用,人们已经是越来越依赖,许多数据是依靠互联网运行起来的,但由于互联网是公开的,响应社会的需求,为了能保证信息的安全,加密设计的研究进入人们的视线,对网络数据传输进行加密成为科学研究界的主要研究方向。对于加密的算法可大致分为对称和非对称两种算法。两种方法各有优缺点:对称算法的运行度快,相对安全,而且对硬件设施要求不高,适合对繁多数据进行加密;非对称算法运算比前者较慢,但也有其独特的优势,可以多人间数据传输加密[1]。1985年由NK和VM两位外国科学家提出的椭圆曲线加密得到了加密界同道人士的认可,是当时世界上加密技术强度最深且最难破解的一种方式[2]。在椭圆曲线密码出现之前,相对于被人们用了很多年之久的RSA加密算法并没有多少有利之处,那这是什么原因造成的呢?实际上可分为两种原因:当时的人们很少接触椭圆曲线加密方式,而且研究者也并没有充分做出其运行的原理;再者就是椭圆曲线的运算比较繁琐,致使研究的步伐减缓,不能拿出合理而且有效的密码体系。另外就是RSA的运用已经深入人们的现实生活,且其运算不像前者那样繁杂,而且能够达到预想的加密程度。随着科研人员对椭圆曲线密码学的领域进一步扩大,更深入阐述其作用的方便之处,笼统解释了有限域等有关概念问题,并重新命名椭圆曲线各个点组成的群,在此群之上设立椭圆曲线的公共钥匙密码,并且解释几种经典类型的算法。之后改进了椭圆曲线加密算法的一些运算,比如点乘运算就是最为麻烦的,经过改进算法大大增加了其运算速度,最后把对称与非对称加密方法的各个优点结合起来,AES和ECC就这样产生了。这是一种混合运算加密体系,不但能确保数据传输时加密、解密的速率,而且也把秘钥发分和保管的问题解决了。

1.2 国内外对ECC的研究现状

近年来,ECC发展迅速,被许多领域运用,比如商业领域多处用到ECC。这些都可以由很多国际著名的组织来证明,比如电子与电器工程学会、美国国家标准技术研究所、国际标准组织等。自九十年代后,椭圆曲线密码进入到人们的视线,是当时世界上加密技术强度最深且最难破解的一种方式[3]。在椭圆曲线密码出现之前,相对于被人们用了很多年之久的RSA加密算法并没有多少有利之处,那这是什么原因造成的呢?实际上可分为两种原因:当时的人们很少接触椭圆曲线加密方式,而且研究者也并没有充分做出其运行的原理;再者就是椭圆曲线的运算比较繁琐,致使研究的步伐减缓,不能拿出合理而且有效的密码体系。就目前情况而言,ECC代替RSA而且成为流行的公钥密码体系的首选已是势在必得。椭圆曲线密码是密码世界发展至今的里程碑,它的出现代替了现有的密码体系,成功引领密码界的研究发展[4]。密码系统的出现几乎全部置换和替换基于这些基本方法,千百年来,椭圆加密系统的算法一般是经过硬件设备进行计算来完成,从始发展成极复杂的加密系统,用电脑甚至可以设计一个系统更加复杂,最有名的例子路西法IBM是数据加密标准。这些都是一些基于这些基本方法的更换和变换。

目前为止,我国对芯片密码的设计和生产远远不能供应加密体系和互联网的发展要求,尤其是在大速率芯片密码方面与先进国家有着不可逾越的差距。但近观这今年的发展比较迅捷,尤其是在2002年由清华大学微电子研究所展开的对椭圆曲线高速密码芯片和ECC的技术研究和实现,国外对ECC的研究比较深入,技术比较先进,已经由很多厂商运用椭圆曲线加密算法。比如1995年法国某公司生产的几款芯片,其安全性在当时加密技术领略前矛,得到世界各国厂商的应用生产,普遍应用到人们的现实生活中[6]。加密解密功能相对较好用,在258MHz的工作频率下,只需285ms就能完成一次签名,完成一次签名验证的时间是540ms。对与椭圆曲线密码技术来说,域运算的算法已经研究得颇为成熟,人们也普遍认同ECC的安全性。尽管密码学的研究困难重重,但研究人员却不辞辛苦的研究试验。在今后的研究中,密码学研究肯定是热点,必定会作为公共学科出现在大学生必修课中。

1.3 本设计研究目的

在课题报告中提到,ECC椭圆曲线加解密作为热门的研究课题,在当今社会已经离不开这门学科。而且对于椭圆曲线加密体系的研究方向是很重要的也得到肯定。顺理成章,硬件实现ECC密码体系的研究也逐渐兴起。在诸多研究方案中,有很多都是在结构上进行优化以便达到加速运算的目的,毋庸置疑这就是硬件实现的重要研究方向。本文以Verilog语言为基础,编写代码输入程序并进行仿真,设计一个基于GF(2^409)ECC机密系统的设计,本系统主要有主控模块(MC)、域运算控制模块(AUC)、有限域算术模块(AU)等模块组成[7]。MC负责安排各种运算过程,ECC各种模块的互相协助,完成运算功能,经过实验代码的仿真,根据仿真图进程阐述各种功能的运行,从仿真图深入了解本实验的结果。应用程序的可扩展性,性能和效率,因此研究重点是:ECC设计理论的任何配置;结构设计的ECC芯片不是一个可配置的功能;配置设计不是有限域运算模块,乘法有限域硬件的快速算法,在ECC椭圆曲线加密中,基本的操作过程有模加、模乘、模逆、模平方等[8]。ECC加密速度是由硬件设备做基础。各种语言代码的结合,综合各种功能实现运算,为增加运算的速度,配置和研究非常重要场倍增加,动态应用领域和各种计算约多项式的;优化设计的ECC,其中包括加密层,操作层组乘点,点乘的关键控制单元和坐标转换操作的调度算法,有限域逆控制优化设计。

1.4 本设计研究内容

根据前面文章的论述讲解,在公钥密码体制中ECC的研究方向明确得到肯定,而且是作为重要的研究方向。在硬件设备中实现研究方案,现实中很多研究都致力于优化加速ECC运算,本设计亦是如此,将研究重点集合在硬件结构优化设计方面。ECC椭圆曲线密码要进行高速运算是在良好的设备基础上进行的,没有好的硬件设备,很难提高的运算的速度。为了增加其高速运算,要求就相对很高。本篇文章主要运用二进制域模块中的模加、模乘、模逆、模平方运算,实现其全运算的加速[9]。详尽的计划方案在下文中有讲解,本文使用ECC专用芯片实现加密系统,由于对面积、速度的参数要求苛刻,最终采用面积小、速度快的专用芯片。应用环境是ECC的软件和硬件的限制。占用空间小,简单的指令,稳定性高,成本低;软件环境的兼容性需求,便携,易于维护和升级硬件环境的要求[10]。因此,从高端至从一个高级语言来组装,从系统到门电路设计的低端,每个应用程序的环境中实施的ECC提供支撑和约束是不一样的。这样,ECC实现根据应用环境效率。ECC密码体制是基于理论椭圆曲线密码体制先进的公钥密码体制。安全系统已经认识到了整个世界。椭圆曲线加密理论的基础上,我们经过长期的理论研究和科学实践已成功地将理论被转换成实际可用的密码算法,并且可以应用到产品的安全性。 ECC技术具有广阔的应用前景,如:数据库安全,智能卡应用,VPN,电子商务和其他的安全应用程序。ECC得到很多厂商的生产,普遍用到人们的现实生活中,所以人们对产品的安全要求很高,这就使得很多厂商要求研究人员能研制出更高级、更安全的产品以应需求,这样会产生各种利益,人们的生活质量也得以提高,推动密码学研究的进程。

1.5 论文结构

论文结构:第一章课题研究的意义、国内外的研究现状、研究内容

剩余内容已隐藏,请支付后下载全文,论文总字数:15958字

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;