论文部分内容阅读
随着移动互联网和信息技术的飞速发展,如何保证信息在无线网络中安全传输的问题越来越引起重视。公钥密码体制是实现信息安全传输的重要技术之一,尤其是椭圆曲线公钥密码体制(ECC),它具有安全强度高、密钥长度短、计算速度快、节约通信带宽和节省存储空间等优点,160比特的ECC的安全性就相当于1024比特的RSA的安全性。数字签名技术是模拟传统签名手段保证信息安全传输的一种重要安全技术,采用ELGamal体系构建的ECDSA签名算法拥有椭圆曲线密码体制的优点,ECDSA签名算法已经被广泛应用在各个领域,并被众多国际标准化组织指定为国际标准。在一些计算能力和存储空间受限的应用领域尤其适用,不如无线网络环境。鉴于无线设备在资源占用、计算能力和系统安全性等方面的性能要求,ECDSA签名算法的优化和设计实现一直是一个重要的研究领域。本文基于verilog硬件描述语言设计实现了 ECDSA签名算法的硬件系统架构和组成模块,并基于FPGA开发板进行了功能仿真验证。ECDSA签名算法的硬件系统架构主要包括核心运算模块和签名模块。核心运算模块主要对标量乘运算进行算法优化和设计实现,本文对3bit组合标量乘算法进行了优化,设计实现了基于零游程分布的3bit组合标量乘运算模块,在执行效率上提升了45%。签名模块又包括二进制域运算模块和素域运算模块。二进制域运算模块采用高斯正规基,主要包括乘法运算、求逆运算、加法运算和平方运算。同时在素域运算模块上采用蒙哥马利算法设计实现了乘法运算,并采用改进的stein算法设计实现了求逆运算。为避免求逆运算过多的占用系统资源和影响性能,基于LD投影坐标设计实现了椭圆曲线群运算。最后使用Vivado和Modelsim联合仿真并在FPGA开发板上仿真验证ECDSA算法系统架构的核心模块。另外研究了FourQ曲线的特性和FourQ曲线标量乘运算,并完成了标量乘运算的硬件架构。为了分析资源消耗和系统性能,本文采用Xilinx公司的最新开发套件KINTEX7对ECDSA算法的系统架构及签名模块和核心运算模块进行了仿真测试,仿真结果表明本文的设计方案具有良好的性能。