抗量子算法与数字证书结合方案研究

2024-05-19 14:11:46掌晓愚陈骁钱程
电脑知识与技术 2024年9期
关键词:数字证书数字签名

掌晓愚 陈骁 钱程

摘要:随着量子技术的蓬勃发展,传统的公钥基础设施面临着被破解的风险,抗量子密码成为未来发展趋势之一。首先,介绍了量子危机及其应对方式,阐述了抗量子算法的背景、标准化情况与研究现状,然后提出了一种抗量子算法与数字证书结合的密钥应用方案,描述了该方案的基本架构和实现步骤,最后对该方案的优势进行了分析。该方案旨在在已投入使用的公钥基础设施系统上,使传统数字证书具备了抵抗量子技术攻击的能力,有效地提高了数字证书的安全性,保障抗量子公钥的可信性。

关键词:量子技术; 抗量子算法;公钥基础设施;数字证书;数字签名

中图分类号:TN918.91   文献标识码:A

文章编号:1009-3044(2024)09-0083-03

开放科学(资源服务)标识码(OSID)

0 引言

近年来,量子技术作为新一轮科技革命和产业变革的前沿领域获得快速发展。各国在该领域展开角逐,加紧布局以抢占先机。目前,量子科技已经上升到国家安全层面的激烈竞争,各国纷纷提出量子专项计划,量子领域日趋白热化的竞争,宣告了全球进入全面推进量子科技发展的时代。

作为信息安全的关键技术,密码学可以提供信息的机密性、完整性以及抗抵赖性。随着量子计算机的发展,传统密码学面临严重的安全威胁。量子计算机基于量子力学的原理进行计算,其应用特性包括量子态叠加、纠缠和量子隐形传态等,具有量子并行计算能力,数据处理能力强大,远超经典计算机。量子计算机可以为有些关键的经典密码算法提供指数级加速,这使得传统密码学所依赖的大整数分解难题等数学难题被快速攻破,从而传统密码学能够被快速破解,严重威胁了信息安全。

密碼技术和产品及产业面临整体的更新换代,需要研究新的密码算法保证数据的安全性。目前业界主要有两种解决方案,其一是基于量子密钥分发(Quantum key distribution,QKD)技术,其二是抗量子密码算法(Post-Quantum Cryptography,PQC)。QKD存在较多局限性,QKD密钥生成速率和传输距离有限,需要专用基础设施,增加了基础架构成本和内部威胁风险,难以实现端到端的安全性。而抗量子密码算法可抵御量子计算机的攻击,又不依赖量子力学,易于实现推广,已经成为信息安全领域的研究热点之一。与传统的公钥加密算法不同,抗量子密依赖于其他类型的计算难题,例如多变量密码学中的非线性方程组、格密码学中的最短向量问题等。这些计算难题被认为在量子计算机上难以解决,因此可以提供更好的安全性。英国国家数字安全中心(The National Cyber Security Centre,NCSC)建议,应对量子计算威胁最好的方案是PQC。

1 抗量子算法国内外现状

1.1 政策背景

当前,美国、中国、法国以及欧洲各国均将抗量子密码技术的发展和迁移作为重要任务。具体表现为:2020年12月,欧盟委员会发布《欧盟网络安全战略》(EU Cybersecurity Strategy),明确将量子计算和加密列为实现“韧性、技术主权和领导力”“强化预防、威慑与响应能力”“促进全球化、开放化网络空间”三大关键技术。2022年1月,美国总统签署了国家安全备忘录——《关于提高国家安全、国防部和情报系统网络安全》,该文件首次提及抗量子密码(PQC)。这对美国乃至世界的量子技术和量子安全产生了巨大影响。这份文件是美国国家安全机构在当前的联邦网络安全计划中,首个特别提到抗量子密码(PQC)的文件。由此可见,抗量子密码技术已上升至国家安全的高度。

1.2 标准化工作

另一方面,抗量子密码标准化工作开展得如火如荼。近年来,各国密码管理部门也开始重视和推进PQC相关研究。在进入实际系统研发和基础设施推广建设阶段之前,首先要实现算法标准化。因此,国际产业界和标准化组织以及各国密码管理部门都在积极推进抗量子密码的标准化工作。在欧洲,欧洲电信标准化协会在网络安全技术机构下成立小组专门负责PQC方面的标准制定和研究工作。在美国,国家安全局(NSA)于2015年公开宣布计划将联邦政府各部门目前使用的ECC/RSA算法体系向抗量子算法进行迁移。次年美国国家标准与技术研究院(NIST)正式启动抗量子密码标准竞选,2023年8月提交的《Module-Lattice-BasedKey-Encapsulation Mechanism Standard》《Module-Lattice-Based Digital Signature Standard》和《Stateless Hash-Based Digital Signature Standard》3个草案涵盖了量子密码封装和数字签名。在中国,国务院2021年发布的《计量发展规划(2021—2035年)》中描述“建设以量子计算为核心、科技水平一流、符合时代发展需求和国际化发展潮流的国家现代先进测量体系。”2022年《“十四五”数字经济发展规划》中“提出瞄准传感器、量子信息、网络通信、集成电路、关键软件、大数据、人工智能、区块链、新材料等战略性前瞻性领域,提高数字技术基础研发能力。”国家密码管理局2021年发布的《GM/T 0108-2021诱骗态BB84量子密钥分配产品技术规范》和《GM/T 0114-2021诱骗态BB84量子密钥分配产品检测规范》技术规范中关于量子密钥分配产品技术和检测规范,中国人民银行《关于开展深化金融科技应用、推进金融数字化转型提升工程的通知》中也明确提出“提升金融领域密码算法抵抗潜在量子计算攻击的能力”的要求。中国密码学会于2019年面向中国开展了抗量子密码算法竞赛的征集工作,其中复旦大学团队有4套算法获奖,是获奖算法最多的团队。此外,国际互联网技术标准化组织IETF将基于哈希函数的签名体制XMSS纳入标准。

1.3 研究现状

在学术领域,抗量子密码研究方兴未艾。文献[1]介绍了传统加密通信与量子通信,分析了发展抗量子密码的必要性,详解了抗量子密码体系与目前的研究成果,并对抗量子密码的发展做出了展望。文献[2]在Mostafa Esmaeili方案的基础上利用Polar码的极化性质改进了抗量子密码方案,将信息比特作为原方案中的明文,将冻结比特作为原方案中的随机比特串。改进后的方案没有改变原方案的结构,可以抵御目前已知的信息集译码攻击,为5G时代提供了一种新型抗量子密码方案。文献[3]将LRPC码与多变量密码中的Simple Matrix改进版相结合,构造出新的方案。相比于Cubic Simple Matrix方案,密文扩展率下降了50%,并结合了编码密码的优势,相比于之前提出的基于LRPC码和多变量的签密方案在选择LRPC码时更加灵活。文献[4]基于FPGA平台设计实现了OSKR和OKAI两种算法的专用电路结构,利用一种四并行的多项式运算模块,可以实现多种模值参数(3329和7681)下的数论变换、多项式乘法、多项式压缩等运算过程,从而提升了算法的整体运行效率,并在此基础上设计了多功能采样模块、存储模块和编解码模块等。文献[5]利用带误差学习(Learning with Errors, LWE)问题的加法同态属性,提出了一种格上IND-CCA2安全的非适应性平滑投影哈希函数(Smooth Projective Hash Function, SPHF),该函数支持一轮基于格的口令认证密钥交换(Password-Authenticated Key Exchange, PAKE)协议的构造,并确定了所基于的安全的公钥加密(Public Key Encryption, PKE)方案中相关参数的大小,从而消除了LWE问题的不完全加法同態属性对SPHF正确性的影响。盲签名是一种特殊的数字签名,可广泛应用于各种匿名场合。文献[6]在多变量公钥密码和盲签名的理论基础上,设计了一种新颖的多变量公钥密码体制下的盲签名方案。该密码方案借助另一非线性可逆变换L:Fr→Fr将签名的公钥和私钥分离,减少了密钥对之间的线性关系,提高了盲签名的安全性。该密码方案不仅具有盲性、不可追踪性和不可伪造性,而且还具有计算复杂度低及抗量子计算攻击的优点。

我国抗量子迁移工作迫在眉睫,但是抗量子算法与传统公钥基础设施相结合的研究较少。针对这种情况,本文提出了一种新型的抗量子密码迁移应用方案,可在已投入使用的公钥基础设施系统上,使传统数字证书具备使用抗量子算法加密的能力,并保障抗量子公钥的可信性。下文将对此方案进行详细阐述。

2 技术方案

2.1 设计思路

在国内,抗量子密码标准尚未完备,且基于RSA、ECC算法的公钥基础设施数字证书体系已经广泛应用。考虑到技术难度、成本以及获得的收益,部署新的抗量子算法证书体系完全替代传统非对称算法证书体系并不现实。因此,最佳方案是在现有证书体系上进行优化,使其具备抗量子攻击的能力。

NIST公布了首批四种抗量子算法。其中,CRYSTALS-Kyber算法主要用于加解密,以保护通过公共网络交换的信息。其优点之一是相对较小的加密密钥,使双方可以轻松交换,并且具有较快的操作速度。CRYSTALS-Dilithium、FALCON和SPHINCS+算法则主要用于数字签名,在需要在数字交易期间验证身份或远程签署文档时广泛使用。

本文提出了一种将传统数字证书与抗量子算法密钥结合的方案,使传统数字证书具备抵抗量子算法攻击和防止抗量子公钥被篡改的能力。该方案包括以下3个主要部分的实现:

首先,生成抗量子加密算法密钥,并在数字证书中增加一项扩展项,包含抗量子加密算法公钥。其次,以抗量子加密算法公钥作为输入,使用抗量子算法的CA证书使用抗量子签名算法对其进行签名。最后,在数字证书中增加一项扩展项,包含抗量子加密算法公钥的签名值。

其中,抗量子加密算法包括但不限于CRYSTALS- Kyber算法;抗量子签名算法包括但不限于CRYSTALS-Dilithium、FALCON和SPHINCS+算法;数字证书格式包括但不限于符合X.509的证书。

2.2 实施方式

为了使本方案实现的技术手段、创作特征、达成目的与功效易于明白了解,本节将进一步详细阐述本方案实施步骤与细节。

1) 抗量子算法与数字证书结合具体步骤。参见图1,抗量子算法与数字证书结合步骤如下:

① 生成抗量子加密算法密钥:首先需要生成一个抗量子加密算法密钥对,包括公钥和私钥。公钥用于加密数据,私钥用于解密数据。

② 扩展数字证书:在数字证书中增加一项扩展项,用于存储抗量子加密算法公钥。

③ 使用抗量子签名算法签名:使用抗量子签名算法对数字证书中的公钥扩展项进行签名,签名过程需要使用到CA证书和对应的私钥。

④ 构造公钥签名扩展项:在数字证书中增加一项扩展项,用于存储公钥扩展项的签名值。

⑤ 将公钥扩展项和公钥签名扩展项一起放入数字证书中。

2)抗量子公钥扩展项定义。抗量子公钥扩展项PQKeyExtension的ASN.1结构定义如下:

PQKeyExtension ::= SEQUENCE {

algorithm   OBJECT IDENTIFIER,

pqPublicKey    BIT STRING  }

上述结构中,algorithm用于标识具体的抗量子加密算法,pqPublicKey用于表示公钥,将公钥的字节数组按照ASN.1编码成BIT STRING 类型保存在扩展项中。

3) 抗量子公钥签名扩展项定义。抗量子公钥签名扩展项PQSignatureExtension的ASN.1结构定义如下:

pqSignatureExtension   BIT STRING

pqSignatureExtension域包含了对PQKeyExtension进行抗量子签名的结果,采用ASN.1编码的PQKeyExtension作为输入,签名的结果按照ASN.1编码成BIT STRING类型保存在扩展项中。

2.3 优势分析

通过分析可以发现,本方案相比传统方案具有以下优势:

① 使传统数字证书具备使用抗量子算法加密的能力,使用证书中携带的抗量子公钥加密,可以避免加密内容被量子计算机破解。

② 保障抗量子公钥的可信性,使用抗量子签名算法对抗量子公钥签名,可以防止数字证书中抗量子公钥被破解替换。

③ 可以在已投入使用的存量的公钥基础设施系统的基础上使用,避免全部替换抗量子算法系统带来的成本和技术问题。

3 结论与展望

本文提出的抗量子算法与数字证书结合的密钥应用方案可以有效地提高数字证书的安全性,降低量子计算机破解密钥的风险,还可以防止数字证书被篡改或伪造。该方案的性能主要取决于抗量子加密算法和签名算法的计算复杂度,由于这些算法通常具有较高的计算复杂度,因此在实际应用中可能需要采取一些优化措施来提高性能,例如使用并行计算、硬件加速等技术来提高计算效率。在实用效果上,该方案可以在已投入使用的公钥基础设施系统上实现无缝升级,易于推广和使用。

参考文献:

[1] 谢磊,陈智雨,葛冰玉,等.量子通信与抗量子密码研究[C]//数字中国 能源互联:2018电力行业信息化年会论文集.2018.

[2] 李喆,韓益亮,李鱼.基于Polar码改进的抗量子密码方案[J].科学技术与工程,2020,20(13):5198-5204.

[3] 韩益亮,王众.基于多变量和LRPC码的抗量子密码方案研究[J].信息网络安全,2019(8):36-43.

[4] 胡跃,赵旭阳,刘裕雄,等.格基密钥封装算法OSKR/OKAI硬件高效实现[J].计算机学报,2023,46(6):1156-1171.

[5] 尹安琪,汪定,郭渊博,等.可证明安全的抗量子高效口令认证密钥交换协议[J].计算机学报, 2022,45(11):2321-2336.

[6] 俞惠芳,付帅凤.抗量子计算的多变量盲签名方案[J].软件学报,2021,32(9):2935-2944.

【通联编辑:梁书】

猜你喜欢
数字证书数字签名
国家发改委:推动矿业权出让应用网络共享数字证书
浅析计算机安全防护中数字签名技术的应用
基于数字签名的QR码水印认证系统
当心黑客利用数字证书的漏洞
基于数字证书的军事信息系统安全防护方案
数字签名简述
以数字证书为核心的信息安全技术之研究
数码世界(2016年9期)2016-03-28 02:02:20
管理好系统中的数字证书
电脑迷(2015年7期)2015-05-30 04:50:35
掌握方法用好数字签名
个人电脑(2014年12期)2014-12-29 13:29:47
吉林省支付清算系统参与者数字证书使用现状调查与现存问题分析及建议