论文部分内容阅读
椭圆曲线密码(Elliptic Curve Cryptography:ECC)算法隶属于非对称密钥体制,是一种基于椭圆曲线离散对数难解问题(ECDLP)的加密算法。ECC密码算法的提出,不仅解决了对称加密算法中密钥管理和分发困难的问题,而且与RSA(Rivest,Shamir and Adleman)公钥加密算法相比,在密钥长度相同的情况下,安全级别更高。公钥密码算法通过增加密钥长度来提高安全性会降低整个密码系统运行效率,增加存储空间的占用率。所以,ECC密码算法适用于运行速度要求高、存储空间受限的密码系统。本课题通过分析混沌映射在非对称密码系统中的实际应用,利用其对初值及控制参数高度敏感这一特点,提出将一维Logistic混沌映射应用到ECC密码算法中,提高整个密码系统的抗攻击性。通过分析Logistic混沌系统在公钥密码系统中的应用以及ECC密码算法的特点,文章首先利用Logistic混沌映射产生的伪随机混沌序列消除待处理明文的语言特性并增强其随机性,然后对GF(2m)上的ECC加/解密算法进行详细讨论,设计并实现各模块,并给出FPGA硬件仿真。本文重点讨论了二进制有限域GF(2m)上标量乘模块的FPGA硬件实现,通过分析各标量乘算法在不同坐标系下的硬件实现性能,最后选择在LD投射-仿射坐标系下,基于Montgomery算法实现标量乘运算模块。文章采用软硬件协同开发的方式,在Altera HSEP4CE30 V3.2 FPGA器件上对系统设计的各模块的功能和效率进行验证,并给出仿真以及测试结果。测试结果显示:本课题设计的密码系统各模块性能良好,其中最耗时的标量乘模块最大运算频率可达257.069MHz,一次标量乘运算的时间为16.12μs,占用FPGA逻辑资源的14.59%。整个混沌ECC密码系统功能正确,进行一次加密运算的时间约为4.413ms。