面向后量子密码算法的哈希签名方案SM3国密算法

电子邮件商标Logo标志认证,预防网络钓鱼

对邮件进行数字签名和加密

对PDF等文档进行数字签名

驱动程序微软数字签名解决方案

PKI

自建CA实现私有证书签发和管理

SSL证书自动化运维服务

网站加速和安全防护

全球领先服务器控制面板

全球领先Linux服务器面板

海外网站加速和安全防护

上百域名后缀可供选择

转入域名到锐成,管理更安全

委托回购已被注册域名

企业出海域名品牌保护必选

将短信迅速送达全球

简单易用的云服务销售管理系统

锐成行业解决方案,让您轻松解决企业上云痛点,加速云上应用构建。

技术方案

能够灵活适配客户邮件环境

云端PKI解决方案和本地PKI解决方案

供统一的数字证书生命周期管理服务

一站式等保合规安全解决方案

行业解决方案

让商家更专注于业务

让您轻松开展主机业务

无论何时何地,锐成各领域专家就在您身边,帮助您解决上云问题。

文档与工具

服务支持

增值服务

锐成云携手合作伙伴,共创云上安全生态,合作共赢

合作推广

生态合作伙伴

锐成免费站长工具,让网站管理运维更简单。

SSL工具

轻松生成您的CSR和私钥

解码你的CSR并确保信息正确无误

将您的SSL证书转换为不同的格式

检查SSL证书的安装情况

下载完整的证书链

查找颁发给您的域名所有SSL证书

DNS工具

查看该域名的所有DNS记录

查询域名信息状态

查询网站域名在全球范围内是否被墙

作为全球领先的云基础安全服务公司,我们坚持让安全成为公共服务,助力全球客户加速价值创新。

关于锐成

市场商务合作

摘?要:基于哈希的签名方案是后量子密码标准化程度最高的算法,但由于该类方案的一些技术特点和限制,在实际中的应用还处于探索实践阶段。因此,发现并解决应用基于哈希的签名方案的限制和困难对于其广泛应用是非常有必要的。首先概述了基于哈希的签名方案的产生及演变,对目前已标准化的方案进行了横纵对比分析;其次使用国产SM3算法实例化FIPS205中底层的哈希算法,给出了初步的实验结果和对比分析,进一步表明SM3实例化SPHINCS+方案的可行性,推进我国无状态的基于哈希的签名方案的标准化进程;最后对基于哈希签名方案的应用进行了总结和建议,为其广泛应用和后量子密码迁移提供参考。

内容目录:

1基于哈希的签名方案1.1方案演变发展1.2已标准化的方案1.3方案对比总结2SM3实例化实现及测试2.1实现及测试2.2对比分析3基于哈希签名应用研究初探4应用分析建议5结?语

量子计算机的发展给现代密码学带来了极大的威胁和挑战,尤其是Shor和Grover等量子算法的提出。其中,Shor算法可以通过量子计算机解决目前经典计算机计算困难的因式分解和离散对数问题,这些问题是现在广泛使用的密码算法如RSA、ECC、Diffie-Hellman、SM2等算法的安全性依赖。Grover算法可用于提取对称密码算法的密钥和寻找哈希函数碰撞,并利用量子计算机将搜索固定长度的密钥的操作次数减半。因此,现有主流使用的公钥密码算法完全不具备抗量子攻击能力,需设计提出新的公钥密码算法。对于对称或哈希密码算法而言,可通过将安全参数提高至2倍及以上来具备抗量子攻击能力。

表1?不同技术路线的后量子签名方案

本文重点识别总结了HBS方案的特点。首先,针对HBS的设计思想和方案演变进行了概述,并对目前的后量子签名方案进行了对比分析;其次,利用国产SM3算法替代2023年8月24日美国国家标准与技术研究院(NationalInstituteofStandardsandTechnology,NIST)发布的FIPS205草案对应的SPHINCS+方案底层所使用的哈希函数,并给出了相应的实验结果和分析结论,进一步支撑我国关于无状态HBS方案的标准化;最后,对基于哈希签名方案在后量子密码迁移场景下的应用进行了调研和总结,给出了基于HBS方案的特点的应用建议。

1基于哈希的签名方案

HBS的构造依据属于第1类路线中的单向函数构造思想,该类方案的安全性不依赖具体的数学困难问题,而是完全依赖于单向函数的安全性,也就是哈希函数的安全性。此外,在密码学上对哈希函数的研究已经非常成熟和完备,由此也保证了基于哈希构造的签名算法是后量子密码理论安全性最强的技术路线之一。并且不同的HBS方案可以理解为所构造的数字签名算法的框架不同,可以保持算法框架不变,通过实例化不同的哈希算法及参数来抵抗量子计算攻击和实现不同的安全级别,目前可供使用哈希的算法包括SHA256/512、SHAKE、SM3等。

1.1方案演变发展

基于哈希的签名方案的研究历史很长,最早的研究工作可以追溯到1976年Lamport-Diffie(LD)提出的一次性签名方案LD-OTS。截至目前,HBS方案的演进可以大致划分为有状态的一次性签名方案(One-timeSignature,OTS)、少次签名方案(Few-timeSignature,FTS)、多次签名方案(Many-timeSignature,MTS)、分层签名(HierarchicalSignature,HS)的多次签名方案,以及无状态的不限次分层签名方案。如图1所示为HBS方案的演进框架。

图1HBS方案演进关系

MTS方案就是从OTS和FTS方案的不足出发,提出的一种新设计思想,基于Merkle树结合OTS签名方案来构造多次签名方案,如典型的默克尔签名方案(MerkleSignatureScheme,MSS),该类方案的一对密钥对可签名很多条消息,但是签名消息的数量是固定的。后续基于MSS方案研究者们构造了现已标准化的一些经典方案,如图1中的LMS和扩展的默克尔签名方案(eXtendedMerkleSignatureScheme,XMSS)。该类方法虽然在某种程度上解决了OTS和FTS方案的不足,但也引入了额外的机制来保证数字签名算法的正确性。

1.2已标准化的方案

1.2.1XMSS

基于哈希的扩展默克尔签名方案是第一个可证明的前向安全和实用的签名方案,具有最小的安全要求:伪随机性和哈希函数的抗碰撞性[5]。XMSS于2018年通过RFC8391进行标准化,该标准的方案主要由XMSS和XMSS^MT组成,详细的框架组成如图2所示。其中,WOTS+是构成XMSS方案的一次性签名组件,通过随机树哈希、L-树、树哈希算法实现对WOTS+的密钥管理,采用自下而上的方法构成XMSS的认证树,可以对有限次数的消息进行签名;XMSS^MT是XMSS方案的超树变体,通过使用自上而下的方法在XMSS子树间构建内部认证路径,形成XMSS树与树的连接,从而实现对无限数量的消息进行签名。需要注意的是,该标准方案是有状态的HBS方案(stateful-HBS,S-HBS),需要对生成的密钥进行状态管理,保证使用时不会出现密钥的重复使用。详细的方案细节及流程可参考文献[5]。

图2XMSS方案

1.2.2LMS

LMS方案由Leighton和Micali在1995年改编,遵循了Lamport、Diffie、Winternitz和Merkle在该领域的开创性工作,制定了一次性签名方案和通用的数字签名方案,于2019年通过RFC8554进行标准化,该标准的方案主要由LMS和HSS方案组成,详细的框架结构如图3所示。其中,LM-OTS是LMS方案的一次性签名组件,结合高度为h的Merkle树构造的MSS方案形成LMS方案,可以签名2h个消息,该方案中的公钥认证路径与XMSS方案采用的均是自下而上的方法。HSS方案是在LMS方案的基础上采用自下而上的方法构建的分层签名系统,能够有效地扩展到更大数量的签名。HSS方案同样也需要密钥状态管理机制保证密钥不会重复使用。详细的方案细节及流程可参考文献[6]。

图3LMS方案

1.2.3SPHINCS+

SPHINCS+方案也称为无状态哈希数字签名算法(StatelessHash-basedDigitalSignatureAlgorithm,SLH-DSA),被NIST选为后量子加密标准化过程的一部分,于2023年8月24日发布标准草案,该标准的方案主要由SLH-DSA组成,使用WOTS+、FORS、XMMS作为组件来构建,详细的框架结构如图4所示。值得注意的是,该标准方案取消了密钥状态的管理,保持了与传统数字签名算法的一致性,详细的方案细节及流程可参考文献[7]。

图4SPHINCS+方案

1.3方案对比总结

1.3.1方案横纵对比

为了加深对HBS方案的理解,本节针对不同技术路线的后量子签名方案从算法参数和性能进行横向对比。在Inteli5,2.4G的2核CPU,4G内存,64bitsLinux的测试环境下对经过AVX2指令集加速后的后量子数字签名算法进行横向测试对比,测试结果见表2,其中,SPHINCS+指SPHINCS+-128f的参数尺寸。同时,对已标准化的HBS方案在参数规模、签名尺寸方面进行纵向对比。以此发现并总结HBS方案及其之间的优缺点,进一步提升HBS方案应用的精准性。

表2?后量子数字签名方案参数对比

1.3.2方案总结说明

基于对HBS方案的理论研究及1.3.1节的横纵对比,可以发现HBS方案的一些优缺点。

HBS方案的优点如下文所述。

(1)具有最低安全性要求。HBS方案的安全性仅依赖底层哈希函数的安全,而足够长的哈希函数不受量子计算机的威胁,因此,由哈希函数构造的HBS可抵抗量子计算攻击。

表3LMS、XMSS、SLH-DSA方案参数对比

(2)灵活性。HBS方案可理解为一个签名算法的框架,与具体哈希算法无关。一方面,方案实现时可通过满足安全要求的哈希算法进行实例化;另一方面,方案应用时可根据应用程序的环境和资源选择不同的哈希函数以满足所需的性能需求。更值得注意的是,HBS中使用的某哈希函数出现安全漏洞后,可直接在方案底层替换其他安全的哈希函数即可,这可以保证HBS方案的生命周期很长。

(3)参数自适应。HBS在签名速度和密钥尺寸之间可通过调整方案参数如Winternitz参数w的大小进行权衡,对于有状态的HBS的密钥容量可通过调整树高h和层数d进行权衡。

(4)前向安全性。通过伪随机生成器(PseudoRandomNumberGenerator,PRNG)实现前向安全性,即私钥泄露前所生成的所有签名仍安全有效。

HBS方案的缺点如下文所述。

(1)签名体积较大。从表2中可以看出,虽然SPHINCS+方案的公私钥尺寸较其他路线的签名方案小,但是签名的尺寸分别是Dilithium2和Aigis-sign方案的7倍和6倍左右。

(2)有状态的HBS方案存在密钥状态管理机制,需要更新签名后的私钥状态,保证同一状态的私钥不可重用,否则签名方案存在攻击者伪造出有效签名的安全问题。虽然无状态的HBS方案解决了该问题,但也增加了签名尺寸增加的代价,如表3中,在使用相同安全级别的SHA256算法实例化各不同的HBS方案时,有状态的HBS方案中签名尺寸最大的才为14824字节,而无状态的HBS方案的签名尺寸可长达29792字节和49856字节,这一大小的签名尺寸在多数场景下均不实用。

(3)性能较慢。从表2中可以看出,SPHINCS+方案的性能表现与基于格的Dilithium2和Aigis-sign方案差很多。其中,SPHINCS+在密钥生成方面的性能表现是Dilithium2和Aigis-sig的1/37左右;在签名生成方面的性能表现分别是Dilithium2和Aigis-sig的1/377和1/630左右;在签名验证方面的性能表现分别是Dilithium2和Aigissig的1/100和1/125左右。

2SM3实例化实现及测试

我国在密码算法的标准化及使用上一直坚持自主创新的原则,包括在后量子密码算法方面也是如此。2019年中国密码管理局、中国密码学会联合举办后量子密码算法竞赛来推进国产后量子密码算法的发展。在国内的后量子密码迁移中,也应尽量坚持这一原则,因此国产哈希算法SM3实例化国际标准化的HBS方案的可行性验证是非常重要的。

2.1实现及测试

表4SLH-DSA-SHA256和SLH-DSA-SM3性能测试对比

2.2对比分析

从表4的性能测试数据可以看出,SM3和SHA256分别对应的实例化的SLH-DSA方案中,在算法参数相同的情况下,公私钥及签名的尺寸、算法在经典计算和量子计算下的安全强度均一致;SM3较SHA256算法而言,密钥生成和签名生成的TPS一致,签名验证少50TPS,这一数据符合SM3和SHA256算法在SLH-DSA方案中表现出的性能差距,这也表明了在无状态的SLH-DSA方案中使用SM3是可行的,可以推进我国无状态的HBS方案标准化的进程,并支撑基于SM3的HBS方案在国内后量子密码迁移场景中的应用。

3基于哈希签名应用研究初探

有状态的HBS方案涉及密钥状态同步和密钥克隆两大问题,而这些在实际应用中很难保证,且目前针对密钥状态管理和克隆问题的研究及可参考的实例化方法也相对较少。目前了解到的关于密钥状态管理方法的首先是McGrew等人提出的可以在分层签名方案中实现的状态保留方法和防止私钥状态意外复制的混合方案。其中,状态保留方法主要是通过对需要存储的密钥引入易失性和非易失性层来最大限度地减少同步延迟和同步失败的机会。该方法中私钥和根公钥存储在非易失性层的内存中,其余层的密钥存储在易失性层的内存中,两层之间的私钥不断地进行同步操作来更新私钥的状态。鉴于该方法没有解决密钥克隆的问题,作者又提出了一种混合方案,根层由无状态的HBS方案组成,其他层使用有状态的HBS方案。其次是ETSI在2021年发布的关于有状态认证机制的状态管理技术报告,该报告针对有状态的HBS方案的密钥状态对象的特征、状态索引的重用及部署HBS的体系结构和操作进行了讨论和指导,详细内容可参考文献[9]。

2020年NIST发布了关于有状态哈希签名方案LMS和XMSS的建议,同时明确表示了有状态HBS方案的应用不适合一般用途,而是适用于具有如下需求的应用场景:(1)需要能抗量子攻击的数字签名方案;(2)数字签名方案可使用周期长;(3)一旦部署实现后,切换到其他不同的数字签名方案的难度和成本太大。

2020年Suhail等人和2021年Kumar等人针对量子时代下的HBS方案应用于物联网设备安全中的重要性、集成时需考虑的各种因素及面临的技术、非技术和社会的挑战进行了分析,并对物联网下集成后量子密码技术的未来研究方向分别提出了相应的建议和展望。

无状态的HBS方案不存在密钥状态管理问题,接口与传统数字签名的应用程序编程接口(ApplicationProgrammingInterface,API)完全兼容,因此它的应用与普通的数字签名方案无多大差异,只是无状态HBS方案的签名尺寸较大,现实场景中的应用还要结合应用程序的资源要求来选择具体的后量子数字签名方案。

4应用分析建议

基于HBS方案整体表现出的特点和数字签名本身可提供的安全属性,如真实性、完整性、抗抵赖性,识别出对性能和资源有灵活性调整需求的场景,本文提出了关于HBS方案的应用框架,为后量子迁移过程中HBS方的应用提供参考。如图5所示,软件和固件升级场景中的软件和固件升级的频率不会过快,且次数也不会过多,可以自适应参数选择合适的HBS方案。物联网下的安全保护体系中对轻量级有特殊需求,可以对HBS方案中的底层哈希算法进行轻量化的设计及实现来支撑类似的场景需求。还有基于数字签名技术的电子签章应用,来确保用户行为的不可否认性,此场景下还需深入地识别性能和资源的需求范围,来选择合适的HBS方案。

图5HBS方案应用

5结?语

本文首先介绍了HBS方案的演变发展,分析对比了目前国际上已标准化的HBS方案,由此总结了HBS方案较其他技术路线的优势,以及针对无状态和有状态方案的优缺点。其次,给出了国产SM3算法实例化SLH-DSA方案的实验结果,进一步表明SM3算法实例化HBS方案的可行性,以推进我国无状态的基于哈希签名方案标准化的进程;最后,对HBS方案的应用研究进行了总结和分析,给出了有状态和无状态适用的场景需求,为HBS方案在国内的后量子密码迁移提出了一些建议。未来将会持续探索后量子密码迁移中HBS方案的技术应用、场景应用和行业应用,在探索实践中不仅要积累经验和能力,还要进行技术融合创新、产品设计创新、应用集成创新,为国内的后量子密码迁移贡献更多力量。

THE END
1.2024年7个最佳物联网用例物联网(IoT)通过连接物理设备并助力它们在互联网上共享信息,正在改变全球各个行业。从智能家居自动化到工业自动化,物联网的应用案例在我们的生活和工作方式方面具有革命性意义。通过涵盖传感器、设备、连接性、数据分析以及云基础设施等组件,现实生活中的物联网实例使人们能够利用互联网分析物理对象。 https://www.jianshu.com/p/50be1b13a665
2.人工智能算法的分类与应用人工智能 (AI) 是当前科技领域的热门话题,其核心是各种算法的灵活运用。AI算法不仅实现了智能预测、分类,还在数据挖掘、自然语言处理和推荐系统等领域发挥着重要作用。接下来,我们将以科普的视角,带您深入了解 AI 的主要算法及其广泛应用。 一、监督学习 https://mp.weixin.qq.com/s?__biz=MzI3MzQ1NjMwOA==&mid=2247549220&idx=4&sn=25aa18da4b1e2824371e552b0ca3c8e6&chksm=eb214cffdc56c5e9303367ae4087102996613151dfa3c11fafe88950b683dbc8dadedd63bcaa&scene=27
3.这款人工智能工具轻松搞定复杂数科难题数学微积分mathgptsect过去追着朋友或教授去弄懂棘手概念的日子已经一去不复返啦。现在,您可以在家中舒适地使用人工智能工具解决所有疑问。虽然 ChatGPT 出错的情况不计其数,但我发现了一个能更有效地处理复杂数学和科学问题的工具。 用MathGPT 简化复杂问题 MathGPT 是我最近发现的一个人工智能工具,到目前为止,它是我用于学习的最准确https://www.163.com/dy/article/JJTOA9M805568E2X.html
4.机器学习算法应用嘲实例六十则机器学习算法案例本文整理了60个机器学习算法应用场景实例,含分类算法应用场景20个、回归算法应用场景20个、聚类算法应用场景10个以及关联规则应用场景10个。包含了天池、DataCastle、DataFountain中所有竞赛场景。 目录 1 分类算法应用场景实例 1.1 O2O优惠券使用预测 1.2 市民出行选乘公交预测 https://blog.csdn.net/stay_foolish12/article/details/111315104
5.java密钥交换算法DH定义与应用实例分析java这篇文章主要介绍了java密钥交换算法DH定义与应用,结合实例形式分析了Java密钥交换算法DH的原理、定义、使用方法及相关操作注意事项,需要的朋友可以参考下 本文实例讲述了java密钥交换算法DH定义与应用。分享给大家供大家参考,具体如下: 一 对称加密缺点 密钥传递过程复杂,这是对称加密带来的困扰。 https://www.jb51.net/article/169358.htm
6.JavaWeb开发实战1200例(第1卷+第2卷)pdf教程+随书光盘源码猿来实例046 算法应用——百钱买百鸡 实例047 算法应用——韩信点兵 实例048 算法应用——斐波那契数列 实例049 算法应用——水仙花数 实例050 算法应用——素数 实例051 算法应用——汉诺塔 第3章 HTML/CSS技术 3.1 页面效果 实例052 统一站内网页风格 实例053 设置超链接文字的样式 http://programmer.ischoolbar.com/index.php/article/article/id/40.html
7.蓄电池状态在线监控系统技术文章传感器传送过来的数据经过RS232/485转换器转换成工控机或者PC能够读取的数据,并通过预装在蓄电池监测工作站的应用程序对蓄电池参数进行存储和分析,如果该数据超出正常范围,则工作站将发出告警,提醒运行人员到现场检查。 2.6现场应用情况 2.6.1应用实例 目前,该蓄电池在线监测系统已在部分换流站和变电站得到了应用,从应用https://www.nongjx.com/st127118/article_49993.html
8.信息安全案例教程:技术与应用第4章身份与访问安全在线免费阅读USB Key是一种包含USB接口的硬件设备,它内置单片机或智能卡芯片,可以存储用户的密钥或数字证书,利用USB Key内置的密码算法实现对用户身份的认证。基于USB Key的应用包括支付宝的“支付盾”,网上银行的“U盾”等。 如图4-8a所示,支付盾是支付宝推出的安全产品。用户登录支付宝进行在线支付时,需要插入包含用户数字证书https://fanqienovel.com/reader/7110035158689909767
9.控制器——“小巧精悍”的视觉运算平台工业机器人工控机作为算法软件的运行载体,在机器视觉领域有着丰富的应用,但由于行业属性,普通的工控机需要外配采集卡、IO板卡等,难以满足兼容性、安装空间等严苛要求。 " 本期产品 · VB2200系列视觉控制器 根据机器视觉行业应用需求,海康机器人为您量身定制的敏捷型硬件处理平台VB2200系列视觉控制器,紧凑身躯内集成了丰富的逻https://www.imrobotic.com/news/detail/28385
10.QML多线程魔法:探索不同方法,提升性能总的来说,QThread 提供了一种灵活且强大的多线程方法,适用于处理复杂的线程管理和资源共享场景。通过使用 QThread,您可以实现精细的线程控制,从而提高应用程序的性能和响应速度。 3.3.2 QThread 的实例分析 为了更好地理解 QThread 的使用,我们将通过一个实例来演示如何使用 QThread 实现多线程。在这个实例中,我们https://developer.aliyun.com/article/1463857
11.三明市第一医院生态新城院区智慧医院智能化项目院区楼宇智能化系统支持多种主流BIM类型数据的加载:系统支持多种主流BIM类型数据的加载,包括Autodesk Revit,Bentely MicroStation,Catia,Autodesk Civil3D,IFC,PKPM,广联达等;支持采用多层次LOD,支持实例化存储;支持将模型数据的空间信息和属性信息全部无损导入;建筑信息模型BIM越来越多的应用在智慧园区规划,建设,运维等多个阶段。系统http://zfcg.cz.sm.gov.cn/upload/document/20221024/df8e2d7d2af449fbbe8f17d25733ff6d.html
12.安全数学基础——算法应用与实践(第2版)》本书介绍了信息安全数学的基础内容,包括初等数论、抽象代数、椭圆曲线论等,全书选材合理、难度适中、层次分明、内容系统,书中以大量例题深入浅出地阐述信息安全数学基础各分支的基本概念、基本理论与基本方法,注重将抽象的理论与算法和实践相结合,并强调理论在信息安全特别是密码学中的具体应用实例。本书语言通俗易懂,http://www.tup.tsinghua.edu.cn/bookscenter/book_07920901.html
13.都说算法很重要,那么请举例说明算法的具体应用场合和实例,也就是大淘宝应用场景示例 因而现阶段,在大淘宝的大多数场景中,并不是算法来驱动业务,而是配合业务一起来https://www.zhihu.com/question/34934041/answer/2631114362
14.课程遗传算法由来及国内外研究现状 任宗伟 ● 3.3.2 遗传算法的特点 任宗伟 ● 3.3.3 遗传算法基本名词及流程 任宗伟 ● 3.3.4 遗传算法应用实例 任宗伟 ● 3.3.5 遗传算法程序实现 任宗伟 ● 3.4 蚁群算法 ● 3.4.1 蚁群算法原理分析 任宗伟 ● 3.4.2 蚁群算法研究和应用现状 任宗伟 https://higher.smartedu.cn/course/63604e6f96788f54b7677daf
15.2020年最值得收藏的60个AI开源工具语言&开发李冬梅如今,计算机视觉中人脸识别算法在数据科学领域应用极为广泛。face.evoLVe 是一款基于 Pytorch 的“高性能人脸识别库”。为相关人脸分析和应用提供了综合功能,包括: 人脸对齐(人脸检测、特征点定位、仿射变换等); 数据预处理(例如,数据增广、数据平衡、归一化等); https://www.infoq.cn/article/2uabiqaxicqifhqikeqw