非对称密码算法的硬件设计与验证

来源 :广东工业大学 | 被引量 : 0次 | 上传用户:sky_ywt_2001
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
人类社会逐步进入信息化时代,信息安全威胁充斥着人们的生活,密码学技术可作为解决信息安全方法之一,进而保证信息安全。密码学算法可分为非对称密码、哈希函数、对称密码三类。非对称密码算法的密钥由公钥和私钥组成,签名者用公钥和私钥签名,验签者用私钥验签,常见的非对称密码算法有RSA(Rivest-Shamir-Adleman)、ECC(Elliptic curve cryptography)、DF(Diffiie-Hellman)、DSA(Digital Signature Algorithm),具有安全性好,性能稍慢等特点,适用于数字签名、数字证书认证等场景。目前非对称密码算法中使用频率较高的是RSA与SM2。因而本文采用硬件设计的方法来研究算法RSA与SM2。本文先通过对国内外现状调研与分析,介绍椭圆曲线运算法则和大数运算基础,对算法SM2、RSA的原理进行阐述,通过对算法RSA的加解密与算法SM2签名验签分析,算法实现采用软硬件协同设计方法,设计出基于SoC框架的非对称密码系统,硬件上,算法SM2实现点乘运算和模加减乘逆运算,算法RSA实现模幂运算和模乘运算。软件上,算法SM2通过CPU调度硬件中的点乘模块和模运算模块,算法RSA实现CPU调度模幂、模乘运算模块。硬件设计上,算法RSA模幂运算采用R-L二进制展开方法,模乘运算采用Montgomery模乘算法;算法SM2点乘运算采用NAFw(k)标量乘算法,点加倍点运算是在雅可比域和素域下实现,模逆运算采用基4 Montgomery模逆算法,提升模逆运算移位效率,提高整个模逆运算能力,模乘运算通过乘法器和模约减实现。经过算法分析,两种算法中耗费资源都是模乘运算,因而两种算法模乘实现共用256bit*256bit乘法器。其乘法器通过采用KO(Karatsuba-Ofman)算法,例化66bit乘法器和512bit加法器来实现。验证中,搭建适用两种算法的UVM验证平台,验证平台中添加组件寄存器模型,对DUT中寄存器和存储器建模,便于检测出DUT的错误,通过在软件VCS编译下,运行日志中观察DUT和参考模型中结果是一样的。将算法硬件模块顶层和CPU通过总线AHB完成连接,搭建好SoC系统,在Smart L仿真平台完成算法前仿,最后选用芯片Artix-7系列FPGA开发板完成FPGA验证。通过VCS前仿和FPGA验证,均实现两种算法的签名验签、加解密功能。最后基于工艺SMIC 55nm,用综合工具DC综合实现下,综合面积约为490Kum2,算法SM2签名验签速率分别约为111次/s、106次/s,算法RSA加解密速率为11次/s。所设计系统具有可配置性高等特点,符合芯片设计要求,可适用于物联网等场景。
其他文献
无源定位技术是一种定位设备自身不需要对外界辐射信号,仅通过接收并分析目标辐射的信号来确定目标位置的技术,具有隐蔽性强、抗干扰能力强的特点。多站无源定位是通过设立多个观测站点获取目标位置信息,通过集中式数据处理或分布式数据处理的方式实现观测信息融合,从而实现目标定位。而实现运动目标定位跟踪需要解决的重点问题是研究其滤波跟踪算法,但由于实际定位过程中存在目标机动、环境因素、设备因素等诸多因素影响,会引
近十年来新能源汽车得到了广泛的关注。然而,不少新能源汽车的设计仍沿用传统燃油车的方案,特别是外观设计。对于选择新能源汽车的用户而言,是否有区别于传统燃油车的外观设计需求,是值得研究的课题。感性工学设计方法能捕捉及量化用户的感性需求,被大量应用于产品外观设计的用户需求分析。传统的感性工学设计方法需进行大量的访谈及实验,数据收集成本较大。随着移动互联网的普及以及用户共享意识的提升,用户在汽车论坛、网站
在对现代控制系统的分析研究中,最优控制问题备受关注。一方面,保证被控系统的闭环稳定性仅仅是最低要求,还需要进一步优化系统性能;另一方面,许多经典的优化控制方法在处理复杂非线性系统优化问题时常常具有局限性。为弥补传统方法的缺陷,实现日益复杂的非线性系统的最优控制任务,自适应动态规划(Adaptive Dynamic Programming,ADP)方法应运而生,其作为一种利用强化学习思想,在动态规划
在实际应用中,机器人往往处于未知和非结构化的工作环境中。机器人在真实环境中找到自己的定位依赖于同步定位与地图构建技术(Simultaneous Localization and Mapping,SLAM),即在运动的同时获取传感器数据来评估真实环境信息,结合地图信息实现自我定位并建造增量式地图。传统SLAM方法在移动机器人在建图导航时仅考虑XY坐标和偏航(Yaw),导致地面平整性和凹凸障碍物信息缺
序列号,是指纸币上的一串由英文和阿拉伯数字组合的字符序列。每张纸币都有一个唯一的序列号,是纸币的特殊身份标识。因此,实现对纸币序列号的精准识别,在防伪、追踪被盗纸币、提高金融市场稳定性等方面起着至关重要的作用。随着金融经济的快速发展,对纸币识别系统的序列号识别能力的要求也不断提高。然而,现有的纸币序列号识别方法普遍存在着识别准确性差、易受外部环境的制约、对纸币污损残缺的适应能力差等不足。其主要原因
随着车联网技术的不断发展,车辆安全逐渐受到人们的重视,制定合理的驾驶评估方法已成为保障安全驾驶的重要任务。然而,影响驾驶安全的评估因素众多,这让驾驶指标的选取成为重大难题,如果选择影响因子过小的驾驶指标,最后的评估结果往往缺乏通用性与客观性。现有的驾驶评估可视化应用多以总体评估的方式呈现给用户,但这种方式缺乏量化的数据,用户并不知道自己是在什么时间点、因为什么样的行为造成驾驶评分下降。为了充分利用
近些年来,人工智能技术的发展如火如荼,模式识别领域同样百花齐放。面向小样本的生物特征识别作为一项重要的技术,在学术领域引起广泛的关注与研究。在现实生活中,非接触的身份验证识别得到更多人们的支持,不仅是其方便性得以满足,而且在安全性上,也达到了一定的标准。所以研究生物特征识别是一项具有前景的工作,特别是小样本情况下,智能系统的识别算法。本文的小样本有两层意思,其中指的是训练样本的数量和训练样本的维度
近年来,随着物联网及人工智能的飞速发展,人们的日常生活方式正在悄然发生改变,人们开始不断地追求便捷、丰富和智能的家居生活,由此智能家居领域开始变得异常火热。同时,面对家居环境下日益增长的需求用户对家庭设备的投入成本不断升高,并且传统的家居音箱设备播放音频资源有限、无法同已有的家庭设备相互通信控制更无法为家庭用户提供个性化的服务,家居音箱呈现出通用性不强、个性化不足等特点。因此,设计出一款节约成本、
多人协同计算问题是指人员之间相互交互和协作完成的任务。在协同计算前,需要根据任务需求和特点将任务分割为多个子任务。继而将不同的子任务指派给对应的参与人员完成任务分配。在任务分配过程中,由于参与人员自身的性格、政治倾向、信仰、喜好、习惯等原因形成了主观因素。主观因素会直接影响协作,导致参与人员会对其他人产生合作意向或冲突意向。若两人之间存在合作意向,则两人一起工作会增加项目的收益;两人之间存在冲突意
随着深度学习技术的快速发展,基于深度学习的图像风格迁移方法有了极大的改进与创新,近年来不断衍生出新颖的方法,如各种单模型单风格、单模型多风格及单模型任意风格的风格迁移方法,但现有方法中仍然存在可以提升的方面。一方面,在单模型多风格与单模型任意风格的方法中,旨在实现多种风格的风格迁移以降低训练成本和提升效果的丰富性,但往往会疏忽原内容图像语义信息与细节特征的保持,导致最终风格迁移效果受到影响。另一方