近几十年来,美国国家标准与技术研究院(NIST)为美国政府非国家安全机构制定密码标准,已成为密码标准的实际国际来源。2013年6月,美国国家安全局(NSA)“棱镜门”事件曝光,爱德华·斯诺登(Edward Snowden)披露NSA在NIST密码标准Dual_EC_DRBG(双椭圆曲线随机数生成算法)中植入后门,破坏了算法本身的完整性,使所谓的安全通信可以被轻易解密。该事件促使Dual_EC_DRBG的安全性问题受到广泛关注,一些公共和私营实体开始尝试制定自己的密码标准,而不是依赖美国政府程序。然而,十年过去了,目前尚未出现替代NIST的可信方案。

本文《Dual_EC_DRBG算法之争:破坏密码标准化过程的后果》从维护美国安全利益的视角,还原和讨论了Dual_EC_DRBG事件的情况、NIST的应对措施,尤其是,在Dual_EC_DRBG出现问题的情况下,NIST得以维持其作为加密解决方案的国际供应商地位的原因。

一、密码学:具有复杂策略问题的技术

(一)密码系统入门

密码学用于对通信和数据进行加密,只有目标用户才能访问解密后的信息。加密系统依赖于一种算法、一种加密数据(通信或存储数据)的方法和一个密钥。用户加密信息或数据的安全性取决于加密密钥的保密性。如果对所有可能的密钥进行暴力破解都无法解密数据,那么加密系统就被认为是强大的。

所有类型的加密功能都依赖于密钥。解密密钥不仅应当保密,还应当无法预测。虽然物理过程可以产生随机比特,但速度太慢,无法满足加密通信数量急剧增加时对密钥数量的需求。为此,密码学家们想到了“伪随机数发生器”(PRNG),这种函数可以产生一个短的随机数字序列(或比特),然后产生一个更长的序列。本世纪初,美国国家标准协会(ANSI)提议使用椭圆曲线来生成PRNG,但所提议的方法——Dual_EC_DRBG(双椭圆曲线随机数生成算法)存在安全问题,这一点后来被斯诺登所披露。

(二)标准化和Dual_EC_DRBG算法

从加密方法或随机数生成器的数学表述,到其在广泛使用的软件中的具体实现,都需要标准化工作。一种算法要成为密码标准,必须具备两个特征:第一,必须运行良好,具有较强的密码功能,并且能够长期使用;第二,标准必须经过公开审查。但是,NSA在将Dual_EC_DRBG算法提交给NIST之前,却先从ANSI和ISO开始了Dual_EC_DRBG的标准化过程,从而巧妙地避免了对Dual_EC_DRBG的早期公开审查。

作为一个非监管机构,NIST的宗旨是“通过推动测量科学、标准和技术的发展,促进美国的创新和工业竞争力”。NIST被工业界视为“诚实的中间人”,既不偏袒某个公司,也不偏袒某个国家。NIST通过公正的评估,在国际工业标准领域发挥着值得信赖的作用。NSA对NIST施加压力,迫使其批准Dual_EC_DRBG成为联邦信息处理标准(Federal Information Processing Standards,FIPS),这是NSA对该标准进行“微调”的一个重要方面。

如前所述,NIST在Dual_EC_DRBG的标准制定方面依赖于ANSI和ISO等其他机构所做的标准化工作。这种模式存在一个问题:许多公开审查的提案实际上“并不完全公开”,这与NIST通常的程序相反。

研究人员向NIST提出了对Dual_EC_DRBG可能存在的“比特偏差”和“后门”问题的担忧。NSA向NIST施压,要求将该算法标准化,声称需要对运行Dual_EC_DRBG的机构设备进行FIPS验证,因此NIST批准将Dual_EC_DRBG作为四个可能的标准化随机比特生成器之一。

斯诺登披露的文件显示,NSA在商业加密系统中植入后门,并影响商业公钥技术的政策、标准和规范。NIST对2013年9月《纽约时报》关于Dual_EC_DRBG的报道做出了迅速反应。文章发表后仅五天,NIST就宣布重新开始对该标准进行评估,建议在Dual_EC_DRBG的安全问题得到解决之前不要使用它。

二、Dual_EC_DRBG事件的余波

NSA在Dual_EC_DRBG中插入后门,这不仅是理论上的破解,而是实际的破解。任何知道秘密信息的人都可以预测算法生成的比特,从而泄露密钥,进而泄露加密信息。

(一)NIST对严重事件的反应

在《纽约时报》发表文章后的几天内,NIST便建议不要使用Dual_EC_DRBG来生成随机数,并按照FIPS的批准程序,重新开放该标准征求公众意见。7个月后,NIST取消了对Dual_EC_DRBG作为FIPS的批准,并敦促尚未更换实施方案的供应商立即更换实施方案。尽管对NIST来说,修正实施的方案允许Dual_EC_DRBG作为标准进入的程序是一个更为重要的问题。在NIST批准Dual_EC_DRBG作为FIPS算法之前,有关Dual_EC_DRBG安全性的问题已被反复提出。在删除该标准时,NIST的密码技术小组进行了一次内部审查,以了解是什么原因导致其标准化过程出现如此严重的错误。

2014年2月,NIST下设的计算机安全部(Computer Security Division,CSD)发布了一份关于密码标准和指南制定过程的文件草案,其中强调,其制定密码标准的指导原则是透明、公开、平衡,且具备技术优势和全球可接受性。为了实现平衡,NIST将在该过程的每个阶段持续与学术界、工业界和政府的利益相关者进行互动交流。NIST澄清NSA并未控制NIST的行动,“NIST在制定密码标准时与NSA密切合作……因为NSA在密码学方面拥有丰富的专业知识”,并且根据2002年《联邦信息安全管理法》,NIST必须与NSA和其他机构就标准制定问题进行磋商。

滑铁卢大学首席密码学家Ian Goldberg指出:“非正式渠道是破坏透明度的一种方式。”当然,很多焦点都集中于NSA;一个美国民间组织指出:“NIST应该制定一项政策,由该机构公开解释NSA就未来标准进行咨询的范围和性质,以及应NSA要求对标准进行的任何修改。”著名密码学家和安全专家Bart Preneel教授指出,关于制定密码标准的文件草案应考虑到对草案的评论意见,增加正当程序同时避免不当影响。Preneel教授进一步敦促,在NIST与NSA合作的背景下,应澄清“协商”、“协调”和“密切合作”等词语。RSA加密算法的共同发明者、密码学家Leonard Adleman提出:“NIST应尽可能减少对NSA专业知识的依赖,同时NIST与NSA之间所有与标准相关的沟通交流都应以书面形式记录,并成为公共记录的一部分。”

密码学界与社会已达成共识:NIST需要摆脱对NSA的依赖。与情报机构进行磋商是适当的,但NIST应当有权利评估和拒绝NSA的建议。

2016年,CSD公开概述了其修订后的密码标准和指南制定流程,强调了透明、公开、平衡、完整、技术价值、全球可接受性、可用性、持续改进、创新和知识产权等原则(具体解析可参考后斯诺登时代的NIST密码标准和指南制定流程)。NIST指出,其需要确保其“内部能力强大而有效,并能接触到高水平的外部密码学家”。如果NSA或任何其他机构协助NIST制定新的标准和指南,NIST将承认该机构是设计者,尽管NIST可能无法列出实际参与标准和指南制定的个人。NIST公开承诺,其将作为一个标准组织,致力于将强有力的密码标准推向全球,而不是作为美国政府的一个分支机构来破坏这种努力。

(二)密码学专家的回应

在进行标准化改革的过程中,为防止今后再出现类似于Dual_EC_DRBG的情况,NIST应进行新的加密竞争。2015年,NIST宣布有意制定后量子加密标准,对此,世界顶尖密码学家的参与至关重要。

NIST宣布于2015年举办一次研讨会,邀请世界各地的密码专家共同探讨后量子加密标准问题。虽然并非所有与会人员都认为NIST值得信赖,但如此多的顶尖密码专家同意出席会议,已经是一个好的“开端”。

为什么密码学家愿意在Dual_EC_DRBG事件之后参与后量子密码学的工作?首先,当时的情况并不像报纸标题上看起来那样“非黑即白”。在与NSA打交道的过程中,尤其是在NIST自身技术资源相当有限的情况下,NIST的工作环境非常复杂。Dual_EC_DRBG事件之后,密码技术组获得了更多的资源和技术人员,与NSA的沟通规则更加严格和透明,NIST领导层在此方面也给予了明确和有力的支持,Bart Preneel教授认为,Dual_EC_DRBG事件之后的NIST“工作做得很好,在困难的情况下已经尽了最大努力”。

一位著名的密码学家在被问及为什么信任NIST时解释说,NIST工作的价值来自于这样一个事实,即世界各地的许多密码学家都参与了NIST的标准化工作,并致力于评估算法的安全性。这位密码学家说:“如果NIST选择了我的算法,那么我的算法就会被全世界使用。”

因此,尽管NIST并不是唯一一家开展后量子密码学工作的机构,但却是唯一一家开展后量子密码国际标准化工作的机构,因为其有能力持续不断地召集最优秀的人才来解决某个问题。

三、NIST维持地位的原因

在斯诺登披露Dual_EC_DRBG事件之后,NIST采取了正确的挽救行动来恢复其声誉。但还有两个因素促使NIST能够继续提供国际公认的密码标准。首先,NIST能够调集组织和技术资源来制定国际公认的密码标准,它具有制定密码标准的组织和技术能力;其次,目前还没有其他机构能够做同样的事情。

NIST制定新密码标准的独特组织能力,一是来自法律,包括NIST制定FIPS的责任;二是来自政策(包括政府的支持),1965年《布鲁克斯法案》即授权NIST作为自动数据处理标准的提供者。此外,由于强大的密码技术对美国国家和经济安全的重要性与日俱增,NIST的组织能力也进一步得到了加强。该机构作为一个非国家安全的政府机构,负责制定非国家安全的密码标准,这种角色放眼全球也是十分独特的。

在Dual_EC_DRBG事件中,NIST的科学家们不仅纠正了NSA后门出现的漏洞,而且还在文件和公开演讲中为自己的失误承担了责任。同时,NIST以公正、诚实和透明的方式处理着密码标准竞争。因此,如有机构想要取代NIST,必须得复制其能力,还要赢得NIST积累的信任,这个难度是相当高的,故而目前尚未出现能够替代NIST的其他组织。

四、未来:NIST的地位是否会持续

NIST正在开展轻量级密码学和后量子密码标准的竞赛,这些标准化工作得到了国际社会的支持,为NIST继续在制定国际通行的密码标准方面发挥领导作用起到了积极促进效果。斯诺登事件曝光后,欧盟探索了“技术主权”,以对“美国监控”可能侵害欧洲公民隐私权的担忧为催化剂,通过监管和激励相结合的方式,发展欧洲的隐私和安全技术。2015年,NIST和密码学家们又回到了舒适、互利的角色定位。如果世界仍像20世纪末一样处于美国统领的状态,NIST的角色很可能已成功重建,并一直保持下去。

然而,特朗普就任总统后所采取的一系列行动,包括退出《巴黎协定》、关于伊朗核计划的《联合全面行动计划》、联合国人权理事会和世界卫生组织,拒绝签署《跨太平洋伙伴关系协定》,威胁退出北大西洋公约组织等,迫使人们对美国信守承诺持怀疑态度。尽管拜登政府执政期间,美国与某些亚洲国家的关系显著回暖,但鉴于美国国内政治局势的重大变化,许多亚洲政治家对美国政治体系依然表示谨慎和不信任。

近年来,欧盟、中国、俄罗斯均在推广本国密码标准方面作出努力,试图将开放的互联网转变为一个具有超强监控能力的国际通信网络。这种潜在的转变,即使只是部分成功,也会对通信安全、单一连接的全球互联网和许多“分裂网”的持续存在产生许多影响。互联网的转型在一定程度上更凸显出NIST加密标准对美国国家安全的重要性。这些标准是一种软实力,在美国国家和经济安全方面发挥了重要作用。但是,NSA制定的密码标准因缺乏信任而难以达成这样的效果。NIST制定的标准在过去就有广泛的信任基础,目前来看这种局面还将持续下去。

此前,NSA一直反对NIST在制定密码标准方面发挥作用。而十多年后,随着强加密技术在世界各国政府中的广泛应用,NSA将更多的注意力转移到了计算机网络的利用上,开始接受NIST作为民用部门密码标准(包括用于保密的标准)提供者的角色。

目前,美国面临的国家安全威胁比NSA启动Dual_EC_DRBG计划时所面临的威胁更加复杂。NIST提供的软实力,不仅仅是其密码标准的部署,还有其开放密码标准竞争和诚实中介的模式,有助于美国的国家安全。这对NSA和NIST来说都是一个意义非凡的转折,因为后者现在以软实力的方式为美国提供国家安全,双方目前的关系倾向于合作,共同致力于完成后量子密码标准的制定。(祝媛 谢永红)

声明:本文来自苏州信息安全法学所,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。