长久以来,“网络韧性”(cyber resilience)一直是业界领先厂商关注的重点,但随着量子计算的急速发展,风险也随之提高。量子计算是一种尖端的创新技术,结合了计算机科学、物理学和数学的力量,能够快速地执行经典计算领域以外的复杂计算。
量子计算预计将于2030年实现商业化,并将提供令人难以置信的潜力,让关键产业进一步数字化,并重新定义科技在地缘政治中所扮演的角色。“后量子时代”的可能性不容小觑。
然而,当量子计算能以多种方式为人类服务的同时,也带来了网络安全的威胁。因此,全球许多国家的政府和安全领导人都呼吁加速朝向“后量子加密”(post-quantum cryptography,PQC)技术迁移,积极应对量子计算的安全威胁。美国总统拜登在2022年10月参观IBM的量子数据中心后,签署了《量子计算网络安全防范法案》(QCCPA)。此外,美国的国家标准与技术研究院(NIST)、网络安全与基础设施安全局(CISA)和国家安全局(NSA)等单位也陆续建议制定PQC发展蓝图。
这些行动所要传达的信息很清楚:量子驱动的网络攻击越来越受到关注,而且还必须在面对这前所未有的新威胁之下维持韧性。
本文将解释如何开始利用FPGA、嵌入式FPGA (eFPGA)等技术,加速在其计算机和网络设备中建立PQC安全性,而当量子计算机安全攻击的威胁成为现实时,这些技术也仍能在未来轻松更新。因此,本文首先将着眼于量子计算机将会面对哪些威胁,以及为什么SoC或系统设计人员都应该认真看待这一问题。
图1:CNSA 2.0勾勒后量子加密过渡时间表。(来源:NSA)
量子计算最大的威胁在于它能够快速且轻松地破解旨在保护系统和数据的复杂算法。量子计算机的指令周期极快,利用基于量子物理学的专用硬件组件,可望超越目前的超级计算技术。
举例来说,IBM与美国加州大学伯克利分校(UC Berkeley)合作研发的一台量子计算机,其指令周期与精确度都超越了劳伦斯伯克利国家实验室(Lawrence Berkeley National Laboratory,LBNL)与普渡大学(Purdue University)的超级计算机。虽然这种新发现的速度看起来是件好事,但也存在非常高度的风险。
此外,量子计算机天生就有能力破解传统的公钥基础设施(PKI)密码算法,也就是目前大多数经典计算系统所使用的算法类型。当今的密码系统利用非对称的密码学(cryptography)算法。现代安全通信协议使用这种非对称密码算法进行密钥交换,以及依赖于某些数学问题复杂度的数字签名。目前,非对称密码学的主要问题在于RSA算法的整数分解和椭圆曲线密码学(ECC)的离散算法。
量子计算机主要利用美国数学家秀尔(Peter Shor)所提出的“秀尔算法”(Shor’s Algorithm),这种量子算法能够分解这些以PKI为基础的算法,并绕过安全控制。当问题发生时,利用RSA和ECC的密码系统就会受到攻击。
其中最大的误解之一是:企业现在不必担心这个问题,因为目前还不存在足以破解现代密码系统的量子计算机。事实并非如此,因为今天所设计的许多半导体芯片仍将使用数十年。这意味着当量子计算机成为主流时,这些半导体芯片上的所有数据都会立即变得岌岌可危。因此,当未来强大的量子计算机出现时,即使是今天记录的数据也可能被破解。
量子计算机的速度无与伦比,而且能够破坏目前所采取的大部分安全措施,对于现代企业而言是一个巨大的威胁,因此需要新的量子防御PKI密码和网络韧性解决方案来降低风险。
由于量子计算的威胁迫在眉睫,我们看到越来越多组织采用PQC技术。PQC技术移转的核心是将原有的PKI加密技术转换为可抵御量子计算机攻击的后量子加密技术。
值得注意的是,恶意破坏者开始采取“先窃取、后解密” (steal now, decrypt later)的立场。随着越来越多高性能的量子计算机上线,目前储存于云端的重要机密数据将面临未来的灾难性风险。
因此,转向PQC正成为当务之急,尤其是许多组织目前使用的安全标准并未实施可防御量子计算攻击的PQC基础架构。例如,目前广泛使用的安全标准,如可信赖平台模块(TPM)、IEC 62443和ISO/SAE 21434等并不要求PQC算法。目前依据这些规格所建立的系统与设备,未来将无法达到量子安全所需的基本条件。
尽管朝向PQC的过渡无法立即实现,但业界正取得非凡的进展。由于意识到降低量子计算机风险的必要性,NIST于2016年发起了一场寻找标准化PQC算法解决方案的持续性竞赛,以取代传统的PKI算法。
经过三轮竞赛后,NIST最终于2022年7月选出四项用于进行标准化的备选算法:CRYSTALS-Kyber、CRYSTALS-Dilithium、Falcon和SPHINCS+,另外还有其他更多的候选方案需要进行第四轮的分析。Kyber是用于密钥交换的所谓“密钥封装机制” (KEM),其余则是数字签名算法。这四项备选技术以及第四轮的选择,将成为NIST核准的新加密标准。
NIST将继续进行新一轮的竞赛,寻找更先进的PQC算法,以便在未来建立更强大的标准。虽然现在已知将要进行标准化的算法,但在标准草案完成之前,这些算法仍可能需要进行调整。最终的标准预计会在几年内公布,届时可能会与目前已知的标准有所差异。
尽管已经选定了这些算法,标准仍未定案,而系统设计者必须尽快转移到PQC。事实上,许多组织已开始强制要求安全系统在不久的将来支持PQC。举例来说,NSA规定某些美国国家系统必须在2025年支持PQC。这些要求,加上仍在不断变化的PQC环境,对于“加密敏捷性”提出了非常高的要求:即在部署的系统中更新和变更加密算法的能力。
图2:NIST针对可抵御量子计算机攻击的加密算法进行标准化。(来源:NIST)
由于PQC方案只有几年的历史,而且其中有许多都来自新型数学问题,因此在现阶段或甚至到了最终标准推出时,都无法完全信任这些方案。以往未知的弱点很可能随后陆续被发现,届时可能使用经典计算机也能破解。
为了降低PQC新方案失败的风险,许多权威机构、研究人员和安全专家建议使用混合机制。这种混合机制结合了PQC方案与传统方案(在大多数情况下为ECC),因此即使其中之一在经典或量子攻击下失效了,这个组合仍然是安全的。
图3:安全专家越来越推荐结合PQC与ECC等传统方案的混合机制。(来源:Flex Logix)
混合机制可以降低两种风险:量子威胁和PQC可能失效的风险。混合机制很可能会被长期使用并广泛部署。这对于安全系统的构建提出了很高的要求,因为它们需要同时安全且有效率地构建ECC和PQC。这些系统还必须以加密敏捷的方式实施,允许在部署后,如遇算法升级或更换时变更密码。这正是可重构计算所能应对的挑战。
SoC与系统设计人员目前面临的问题是,即使PQC算法可能在未来几年内改变,现在如何开始加入PQC的支持?这是目前芯片设计的一大问题,因为芯片电路在流片后通常无法改变或修改。而且,随着开发SoC的成本快速上升,尤其是在先进制程节点方面,一次设计或重新设计可能需要耗资数百万美元,因此没有简单的解决方案。
由于量子计算机可能比预期来得更快,业界公司必须开始构建自家的PQC迁移发展蓝图,以建立对后量子攻击的应变能力。NIST的第一批标准化PQC算法预计将于2024年准备就绪;然而,组织必须现在就开始对其生产与制造工作进行变更,以便在其标准正式上线后简化迁移程序。例如,通过整合采用FPGA,企业现在就可以为自己加以定位,从而促进后量子未来的PQC迁移。
FPGA包含加密敏捷功能,可提供更强大的保护。FPGA具有灵活的可编程能力和平行处理功能,让开发人员得以利用新的PQC算法,轻松地更新现有系统和硬件,以符合不断演进的标准。此外,FPGA还能加速复杂的数学函数,以提升系统性能与防护能力。
对于PQC的必要性再怎么强调也不为过,除了政府、企业和组织必须积极合作以实施解决方案,目前可用的FPGA等技术也有助于保护数字未来免受量子威胁。
在此安全技术的十字路口,eFPGA也提供了改变PQC算法的能力,并将PQC重新设计于其SoC中已包含eFPGA的系统。此外,通过在SoC中加入可重构计算,系统可在节省功耗和成本的同时,仍然拥有高性能的加密功能。
使用eFPGA,一旦RTL被冻结,芯片设计人员也不至于被锁定,而是可以灵活地在芯片生命周期中的任何时候进行变更,甚至是在客户的系统中。这可省去许多昂贵的芯片设计费用,让设计人员能够使用相同芯片来满足许多客户和应用。另一方面,这也延长了芯片和系统的寿命,因为设计人员现在能够随着未来通信协议和标准的改变而更新他们的芯片。
图4:eFPGA非常适合SoC设计中的PQC支持等应用。(来源:Flex Logix)
现有的许多SoC架构都有强化的加密模块,支持包括ECC等多种密码算法,但并不支持PQC。如果没有eFPGA,在部署后更新这些模块以支持PQC和混合机制是非常困难甚至不可能实现,而且成本非常昂贵。即使是在未来的新项目中,支持PQC的密码模块也很困难,而且风险很高,因为这些模块可能根本无法在市场上买到,或附带固定的参数集,如果在PQC标准化过程的最后阶段调整算法甚至在以后被破解,都无法变更这些参数集。在此情况下,eFPGA可以补充支持PQC的密码模块,并可进行更新以应对未来的任何改变。
eFPGA也能以高效利用资源的方式,用于实现整个混合机制。首先,设计人员可以先编程eFPGA,构建PQC KEM并针对PQC共享秘密进行计算,然后构建ECC以及计算ECC共享秘密,最后进行编程以及构建密钥派生函数,根据PQC和ECC共享秘密计算出最终的共享秘密。
除了体积较小和发热量较低之外,在SoC中导入eFPGA还有其他优点。密码学家如今面对的问题之一在于各国的出口法规,以及敏感信息被提供给不法之徒等问题。因此,在SoC中导入eFPGA,PQC算法就可以在SoC制造后回到已知的安全位置,再通过编程来保持其安全性。eFPGA二进制可以使用物理不可克隆功能(PUF)进行加密,进一步保护其安全性,以免计算设备在现场遭窃或遗失。
量子计算机的时代尚未来临,但这种威胁将会来的比人们想象中更快。尽管量子计算彻底改变世界的潜力巨大,但也不得不面对该技术瓦解网络安全与加密的危险能力。当我们进入这个全新的后量子世界时,网络韧性也有了新的意义,它要求我们在面对量子带来的挑战时,仍能坚定不移地致力于保护系统、数据和基础设施。
系统设计人员不仅需要保护当今所记录的数据,未来的数据也必须预先防护。现在,维持韧性正意味着必须通过FPGA或eFPGA等各种技术来实施PQC,并持续进行技术创新,以抵挡来自量子计算机的攻击。如果SoC制造商能够确保提供的SoC将在未来持续应对不断变化的通信协议和威胁,那么它将会是最后的赢家。
(原文刊登于EDN美国版,参考链接:The need for post-quantum cryptography in the quantum decade、Fixing security threat with post-quantum crypto on eFPGA,由Susan Hong编译)