PX-1000袖珍电传中使用的NSA算法已被破坏

2022-02-17 17:15:31

NSA PX-1000故意削弱加密算法的是一种手持信息终端,也称为袖珍电传,1980年由荷兰阿姆斯特丹的Text-Lite公司开发,并由飞利浦等公司在全球销售。它的一些版本具有内置加密功能。在最初的版本中,使用了DES算法,但后来应美国国家安全局(NSA)的要求,用另一种算法取代了DES算法。

显然,NSA对DES(当时被认为是一种强大的加密算法)向公众开放这一事实不太满意。在NSA的要求下,飞利浦将基于DES的机器从市场1上撤下,并用NSA提供的替代算法替换了该算法。尽管有人认为替代算法在强度上与DES相似,但这并没有多大意义。似乎更有可能的是,它被故意削弱了。这种削弱通常被称为后门。2.

一段时间以来,菲利普斯和NSA之间相当模糊的关系一直是讨论的主题,例如在《马尔梅泽》';s 2014年1月Ingelijfd door de NSA(嵌入NSA)的文章[1]。在这篇文章中,梅茨解释了一位菲律宾工程师如何在1977年首次访问NSA。几年后,飞利浦被允许实施NSA';在即将推出的加密电话Spendex 40和Spendex 50(DBT)中,微软高度保密的SAVILLE加密算法。过去,对PX-1000初始版本的DES实施进行了分析和检查,以确定';后门';,并且被发现是正确的[2]。由于后来的PX-1000Cr(带有替代NSA算法)在市场上免费提供,其固件没有任何保护,一个加密博物馆团队现在已经拆解并检查了NSA算法。PX-1000从飞利浦、西门子、阿尔卡特和爱立信等大公司在世界范围内销售了几年,纳尔逊·曼德拉等知名人士以及荷兰政府在一定程度上使用了PX-1000;英国外交部。因此,了解相关人员或组织可能面临的安全风险将非常有趣。➤更多关于PX-1000的信息

第一批PX-1000装置出现在1980年的市场上,一年前,Text Lite在阿姆斯特丹(荷兰)开发了该装置。从一开始,PX-1000就能够使用从美国标准局(现为NIST)获得的数据加密标准(DES)[3],以加密形式发送和接收消息。1983年,当飞利浦开始销售PX-1000时,NSA进行了干预,并说服飞利浦用NSA提供的替代算法取代DES。上图显示了PX-1000的内存映射,它由64KB的地址空间组成,分为4个部分,每个部分16KB(编号为0-3)。第(0)部分包含内部寄存器、少量RAM和外部4KB RAM。部分(1)和(2)分别用于键盘和显示器。实际固件存储在ROM或EPROM中,该ROM或EPROM映射到第(3)节(地址0xE000至0xFFF)地址空间的上部8KB。➤下载ROM

2014年,本科学生本·布鲁克(Ben Brücker)利用加密博物馆[A]提供的两种PX-1000变体的ROM转储对这两种算法进行了研究。在他的学士学位论文[2]中,他仔细研究了DES最初的实现,并得出结论,它已经正确地实现了。此外,他粗略地描述了PC-1000Cr算法,并得出结论,这是一种流密码,但需要进一步研究以确定其优缺点。➤下载Ben Brücker';博士学位论文

根据早期的研究和关于NSA提供的算法可能存在后门的持续谣言,由Cees Janssen、Paul Reuvers和Marc Simons组成的密码博物馆团队现在已经开始将算法与代码分离,并分析其属性。他们的初步调查结果报告如下。请注意,本页面将随着研究的继续而更新。

PX-1000Cr加密算法是一种带密码反馈的流密码(CFB)。驱动功能是16字节数组(L),它实现了四个长度分别为27、29、31和32位的不同线性反馈移位寄存器(LFSR)。字节L7-L10在与字节L0-L3异或之前向左旋转2个位置(ROL2)。由(F)表示的块由一组8个非线性函数组成,6个输入位对应一个输出位,实现为一个紧凑的查找表。反馈回路中的(P)块由一组4个不同的半字节置换(P0-P3)组成,即4位输入和4位输出的布尔函数,对于字节的高阶和低阶4位是相同的。这些函数被实现为紧凑的查找表。块(V)是一个8字节的寄存器(分为两部分),其中存储秘密加密密钥。块(C)是一个4字节FIFO寄存器,其中包含4个最新的密文字节,导致错误扩展为4字节。请注意,在FIFO中移位位置之前,每个字节向左旋转一个位置。寄存器(K)保存密钥流字节,该字节被添加到明文字节以获得加密字节。

没有任何寄存器的随机填充。最初,(L)和(C)数组中填充了从用户输入的秘密加密密钥派生的密钥位。由于PX-1000使用的是7位ASCII格式,密码文本为每个加密字符显示一个普通密钥流位。此外,密文中的第一个字符是加密的固定字符。

下面是四个LFSR的更详细描述,如上图所示为(L)阵列。这一位在反汇编目标代码中很难识别,因为四个32位寄存器被组织为八个交错的16位寄存器,实现为16字节。根据反汇编的代码,我们能够按照如下方式重建LFSR和它们的接头:

从对代码的初步分析可以看出,PX-1000Cr的密码算法明显比原始PX-1000的DES算法弱。我们没有';t还没有找到冒烟的枪,但与此同时,斯特凡·马西斯科(Stefan Marsiske,见下文)根据上面提供的信息和他与IDA Pro制作的ROM的分解,打破了算法。➤打破NSA算法

NSA的干预发生在1983年。到1984年,市场上已经有了带有NSA提供的加密算法的修订版PX-1000装置。1986年,PX-1000被用于Vula行动:欧洲反种族隔离运动和异见人士纳尔逊·曼德拉[4](后来的南非总统)在波尔斯莫尔监狱牢房里的秘密通信。这样,曼德拉';在政治上,非洲人国民大会为他在1990年获释做了准备。

尽管目前没有证据证明这一点,但似乎可以合理地预期非国大是NSA的潜在目标,尤其是因为他们被禁止与左翼甚至共产主义政权有密切联系。在这种情况下,了解NSA是否故意削弱了PX-1000';s密码,以监控通信。我们还想知道,ANChad是在使用NSA弱化版本,还是使用了更强大的DES算法的原始版本。

在曼德拉时期';英国和荷兰领导了一场强烈的全球反种族主义运动。在荷兰,这场运动由康妮·布拉姆领导,她为南非的地下秘密行动重新组建了一支志愿军。作为这些行动的一部分,她一直在积极寻找合适的通讯设备。康尼·布拉姆(Conny Braam)在她的书《Operie Vula》中解释了她的一个人是如何在阿姆斯特丹的一家酒吧里遇到一个名叫弗洛里斯的家伙的,据称此人开发了PX-1000[5]。他们从他那里了解到,由于加密能力太强,该设备已从市场上撤下。它已经被一个计算器所取代,但他建议寻找内置密码的旧版本。1986年,计算器版本的PX-1000同时被新的NSA削弱的PX-1000Cr取代。后来,布拉姆在她的书(第86页)中证实,弗洛里斯已经能够获得两个较旧的具有加密功能的PX-1000版本,这表明他们知道这两个版本之间的差异。因此,我们可以假设,反种族隔离运动使用了更安全的PX-1000版本,比NSA更聪明。➤更多关于Vula行动的信息

2022年2月16日2021年底,一个名叫斯蒂芬马西斯科斯蒂夫的密码学博物馆走近了。Stef已经研究NSA算法(PC-1000Cr)几个月了,并且有一些有趣的信息可以分享。在2021年8月的CAMP+0x7E5的初次演讲中,他揭示了中间结果,他终于到达了一个突破点。当然,我们约好了时间,几周后,当他访问Crypto Museuma时,他向我们展示了他的研究结果。只需17个字符的密文,他就可以在普通笔记本电脑上用一个线程在4秒内破解任何PX-1000Cr消息。2月15日,《马加津概念证明或滚蛋》(PoC | | GTFO)[8]第21版充分描述了这一突破,并在第二天在他的个人博客[9]上发表了补充说明。在休息期间,Stef广泛使用了Z3,这是微软研究院于2007年开发的一种高效SMT解决方案[10]。Z3有很多能力,包括求解代数函数[11][12]。更准确地说,他将Z3实现用于Pyton编程语言[13]。虽然他没有';t发现了冒烟的枪(然而),它清楚地证明了PPX-1000Cr算法比DES算法弱得多。在一台只有17个密文字符的现代笔记本电脑上,只用4秒钟就解决了一条PX-1000Cr消息,这相当令人印象深刻。尤其是如果你意识到,用同样的方法是无法打破好的旧习惯的。以下是Stef';s关于这一主题的出版物:

Stefan Marsiske,NSA和39岁;2022年2月15日21:12,PX1000 Cr PoC | | GTFO杂志的后门。第59-66页。Stef,一个历史悠久的NSA后门第一次介绍。CAMP+0x7E5,2021年8月26日至29日。YouTube,2021年10月10日。➤演示幻灯片(非现场)。

Marcel Metze,阿姆斯特丹国家安全局的Ingelijfd door de Groene Amsterdammer。2014年1月29日。嵌入NSA(荷兰语)。Ben Brücker,政府对消费加密硬件的干预看看NSA前后的PX-1000';她参与其中。2014年7月。荷兰奈梅根Radboud大学学士学位论文。维基百科,数据加密标准,2016年1月检索。维基百科,纳尔逊·曼德拉,2013年11月检索。康尼·布拉姆,1992年瓦拉歌剧,荷兰人。ISBN 978-9029083362。p、 66。2006年重印,荷兰语。ISBN 978-9045700465。英文版';瓦拉行动';,2005年4月,ISBN 978-1919931708。阿戈斯、飞利浦、TextLite en Amerikaanse Spionage NPO第一台广播,2019年4月20日星期六,14:00-15:00(荷兰语)。Stefan Marsiske,一位历史悠久的NSA后门第一次介绍。CAMP+0x7E5,2021年8月26日至29日。YouTube,2021年10月10日。➤演示幻灯片(非现场)。Stefan Marsiske,NSA和39岁;2022年2月15日21:12,PX1000 Cr PoC | | GTFO杂志的后门。第59-66页。Stef和#39;s个人博客,pocorgtfo 21:12 opcrypha 2022年2月16日。Leonardo de Moura,Nikolaj Bjørner(2008),Z3:有效的SMT解决方案LNCS,第4963卷。DOI 10.1007/978-3-540-78800-3_24。ISBN 978-3-540-78799-0。