[发明专利]一种SM3密码杂凑算法的加速方法及指令集处理器在审
申请号: | 202211280343.9 | 申请日: | 2022-10-19 |
公开(公告)号: | CN115525342A | 公开(公告)日: | 2022-12-27 |
发明(设计)人: | 何军;陈子钰;姜军;尹飞;蒋生健;李媛;范好好 | 申请(专利权)人: | 上海高性能集成电路设计中心 |
主分类号: | G06F9/38 | 分类号: | G06F9/38;G06F9/30;G06F21/60 |
代理公司: | 上海泰博知识产权代理有限公司 31451 | 代理人: | 钱文斌 |
地址: | 201210 上海市浦*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 sm3 密码 杂凑 算法 加速 方法 指令 处理器 | ||
本发明涉及一种SM3密码杂凑算法的加速方法及指令集处理器,其中,加速方法基于SM3扩展指令集,采用并行流水线和指令级并行技术加速执行SM3密码杂凑算法;所述SM3扩展指令集采用RISC架构,包括SM3消息字扩展指令和SM3工作变量字迭代更新指令,所述SM3消息字扩展指令采用多消息字并行扩展算法以加速SM3消息扩展函数,所述SM3工作变量字迭代更新指令采用多轮迭代融合算法以加速SM3迭代压缩函数。所述指令集处理器支持SM3消息字扩展指令和SM3工作变量字迭代更新指令流水执行,延迟分别为1拍和5拍。本发明可以显著地提高处理器执行SM3密码杂凑算法的速度。
技术领域
本发明涉及处理器设计和信息安全技术领域,特别是涉及一种SM3密码杂凑算法的加速方法及指令集处理器。
背景技术
密码安全深刻地影响着信息安全和国家安全。为保障密码安全,国家密码管理办公室制定并颁布了一系列的密码标准,构建了我国完善的密码体系结构。SM3密码杂凑算法是国家密码管理局于2010年颁布的一种密码杂凑(Hash)算法,广泛应用在数字签名和认证、随机数生成、消息验证码生成与验证等技术中,加速处理器执行SM3密码杂凑算法的速度具有重要意义。
SM3密码杂凑算法是一种典型的密码杂凑(Hash)算法,其核心算法是SM3消息扩展函数和SM3迭代压缩函数。SM3密码杂凑算法的主要功能是对长度为l(l<264)比特的消息m,进行填充和迭代压缩,生成杂凑值,杂凑值的长度为256比特。其主要特点是安全性好、计算复杂度大,其中SM3消息字扩展过程需要进行52轮的Wj消息字(32位)迭代生成和64个W’j消息字生成;SM3压缩函数需要进行64轮的迭代压缩,才能生成杂凑值。SM3密码杂凑算法在拥有很强的安全性的同时,不可避免的带来了计算复杂度大的问题,尤其是在通用处理器中采用通用指令集实现SM3密码杂凑算法时往往会占用非常多的计算资源。
现有加速SM3密码杂凑算法的方法主要有软件算法优化、专用硬件加速和指令集架构(ISA)扩展等方法,其中软件算法优化具有灵活性强、硬件开销小的优势,但是优化的空间有限,而且存在侧信道攻击等安全威胁,在数据量大、实时处理要求高的应用背景下,软件算法优化的方式越来越难以满足实际的应用需求;专用硬件加速通常加速性能好,但是硬件开销大、成本高昂,且扩展性不好,不易直接移植或连接到通用处理器的执行过程中;采用指令集架构(ISA)扩展的方式既能加速SM3密码算法的执行,又具有设计灵活性,同时兼具软硬件加速优势。特别是目前的主流的通用处理器指令集都能提供高度数据并行的指令,其中支持单指令多数据(SIMD)的向量寄存器就非常适合实现多数据并行处理的指令,可用于设计并扩展专门用于加速SM3密码杂凑算法的指令集,以加速通用处理器实现SM3密码杂凑算法的性能,提高通用处理器在密码安全应用领域的性能。
当前,国际主流的处理器指令集架构(ISA)主要有Intel的x86架构、IBM Power架构和ARM公司的ARM架构等,国内的主流处理器厂商大多都是采用Intel、IBM和ARM等公司授权的指令集架构开展处理器研制和生产。采用国外的指令集架构具有开发应用生态相对成熟的优势,但存在授权期限和版本升级等问题,且不方便为我国的信息安全技术应用进行专用扩展。
发明内容
本发明所要解决的技术问题是提供一种SM3密码杂凑算法的加速方法及指令集处理器,可以显著地提高处理器执行SM3密码杂凑算法的速度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海高性能集成电路设计中心,未经上海高性能集成电路设计中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211280343.9/2.html,转载请声明来源钻瓜专利网。