论文部分内容阅读
ECC(Elliptic Curve Cryptography)加密体制,即基于椭圆曲线群上离散对数问题的公钥密码体制,是由N.Koblitz和V.Miller在1985年首先提出。ECC优势在于抗攻击能力强、运算量小、执行速度快、需要少量存储空间。从而掀起了ECC密码的研究热潮。本课题来自于“智能电网安全芯片的研制”项目。为了有效保护智能电网中的个人信息及其他重要数据,需要针对智能电网安全性的标准设计一款抗攻击能力强的加密芯片。本论文在对ECC进行深刻的研究和分析后,设计出一种基于二进制有限域ECC-163模式、兼容Wishbone总线标准等特点的ECC IP核。本文首先把ECC的相关原理做了详细介绍和分析。之后,对算法的各个层次进行并行处理,以及其他算法调整等处理。接着,分析了ECC IP核4个层次。它们从上层到下层分别为协议层、点乘层、点加倍点层、有限域层。研究并优化了有限域层、点加倍点层、点乘层的算法和实现结构。设计仿真验证各个层次的模块。在保证底层模块正确后,再对顶层模块进行总体仿真。然后,用ISE做了FPGA逻辑综合,根据性能指标进行了进一步优化。在优化设计中,主要采用子模块的多次复用,以及算法并行执行的方法。最后,设计了wishbone总线与IP核接口,并挂在SOC系统上。SOC系统中的OR1200CPU执行指令控制IP核进行加密解密工作。并在Xilinx Virtex-2XC2VP30开发板上做FPGA验证。验证结果表明ECC IP核功能正确。本文提出的方案有如下特点:1、非对称加密算法ECC加密端和解密端工作模式不同的特点。设计出了一个包含双环控制加密系统的状态机。这样,ECCIP核的加密解密能够共用硬件,大大的减小的面积,并把加密端和解密端集成在一起。2、对有限域求逆模块中,改进费尔马定理的有限域求逆算法减少了耗时的乘法模块调用次数,提高了运算速度。本文所提出的设计与其他的点乘FPGA上实现进行了比较,结果表明,本文设计在面积上具有非常大的优势,而速度有一定的提高。在用Virtex-2上实现时,面积大约为3437个slice,最小时钟周期7.362ns,最大时钟频率能够达到135.832MHz,吞吐率最大能够达到17.45Mbits/s。