如果智能硬件是邪恶的,我还能安全地运行软件吗?

信息安全 硬件 保密 可信计算
2021-08-19 12:39:23

我刚在想。我在网上搜索。我想检查是否有比我发现的更多。我考虑过在crypto.se上提问。但问题可能涉及硬件和开箱即用的思维。

如果我有一个威胁模型

  • 对手

    • 想要破坏计算或窃取信息
    • 根本不想被注意到(或者至少在我进行敏感计算之前)
    • 知道我使用的软件
    • 确实在分发之前撒谎并修改更高的硬件,例如 CPU
    • 以后不能直接访问硬件
  • 一世

    • 想要正确和秘密地计算(或至少防止敏感信息被盗)
    • 想与外界交换信息
    • 可以使用经过数学​​验证的软件(另外还可以使用干净的硬件进行引导)
    • 可以检查较低的硬件,例如电线是否被操纵,并且可以修理或重新接线
    • 无法检查更高的硬件进行操作

括号 (...) 中是一些弱化的要求。

想法:

我看到了完全同态加密(FHE)它进行任意计算但加密。维基百科知道有两个开源项目可以做到这一点。他们似乎还没有成熟和经过考验。但我认为 FHE 可以进行正确和秘密的计算。认证输出也是可能的。但我不能每次都用手检查。如果我想要人类可读的信息,图形卡可以操纵一切。

我想我可以给两台电脑同样的输入。然后让他们模拟相同的程序。并将输出与一些简单的电子设备进行比较。他们不能这样互相交谈。如果他们试图独立做错事,那可能会奏效。就像中国和美国不共享对损坏硬件的访问一样。你每人买一个。他们不会让敌人使用一半的国家硬件。但它们很聪明,可以使用基于密钥的方法。他们可以共享一个密钥。然后你损坏的硬件同时做错事。未检测到。

我认为我可以让许多计算机进行不同的小计算。并检查组的正确性。但只保留我想要的计算。他们无法知道其他人看到了什么。他们不能协调一时做错事。但也有问题。实时是一个很好的协调器。我可以计算、打乱和检查。具有罕见事件的更大模式是很好的协调器。我可以使用隐写术。但如果没有证据,那就不好了。但我认为否认协调和检查是可行的。

问题:

另一件事是可验证的电子设备。作为一个衍生产品,我问“ IC(或晶体管或二极管)设计如何让恶意制造商难以在不被发现的情况下颠覆它? ”在电子学上。不幸的是,它被搁置了,并将作为题外话关闭。我不可能让它适合“帮助中心定义的范围内的电子设计”。在用户jbord39的这个 Kafkaesque 故事中,我确实得到了有用的提示

“它被称为为信任而设计,或 DFT。通常,环形振荡器或热传感器用于验证是否没有恶意硬件被挤入填充空间(因为这样做必然会增加功率或增加节点电容)。”

我看后会更新的。

无论如何,我目前看不到办法。有工作系统吗?我没有找到。或者可能有研究?还是你想到了不同的方法?

2个回答

这个答案是一个实用的答案。我不会对加密进行理论化,但会往返于早期的秘密计算尝试。

虽然我同意Numeron的观点,但在某些时候您需要将密文转换为明文才能读取其内容,此时没有任何东西可以保护您免受硬件侵害;运行硬件无法跟踪的计算的想法既不新鲜,也不需要加密。

如果我们假设 FHE 工作并且可以执行任何计算(这在今天是一个牵强的假设),那么您可以构建一台可以接收密文、对其执行计算并返回另一个密文的计算机。一切都很好。但重要的一点是,您必须有一个客户端,该客户端将为该服务器提供密文并接收返回的密文。该客户端必须具有您信任的硬件(即不受攻击者控制的任何方式),因为它需要在某些时候加密和解密密文。

如果您想深入了解硬件,请记住 X11 架构是客户端-服务器架构。而且,此外(即更深层次的),将通过系统总线为一条数据提供服务的 IRQ 号可以理解为客户端-服务器体系结构。换句话说,在某些时候你需要有一个你信任的客户,这是无法逃避的。

现在,有趣的是,不需要 FHE 来实现秘密计算。15 多年前,印第安纳大学的一群人想到了寄生计算这个想法是,您可以通过将聪明的值注入 TCP 标头校验和字段来在毫无戒心的机器上执行计算(也可以使用其他方法)。机器的答案(例如错误的校验和)将为您提供计算结果。

但是为什么寄生计算是秘密的,因为所有计算都是通过网络以纯文本形式发生的?因为计算的重组(如果足够大并且在相当大的网络上)与加密暴力破解相当。

它并没有就此停止。我们对寄生存储也有类似的想法

所以,是的,上面的那些链接只是概念验证系统。然而,相当可行。寄生计算唯一不满足的是要求:

可以使用经过数学​​验证的软件(另外还可以使用干净的硬件进行引导)

由于引导网络并没有真正的意义。

(额外说明:弄清楚 X11 协议是否可用于寄生计算,甚至其他协议,是一个有趣的研究思路。)

关于 IC 颠覆,有一篇优秀的论文《Stealthy Dopant-Level Hardware Trojans》,介绍了对复杂 IC 的两种实际攻击。其中一种攻击是“侧通道”泄漏:运行 AES 时,设备的功耗取决于密钥材料。当对手可以控制设备但不能在不破坏设备的情况下物理侵入设备时,功率侧信道攻击是有效的,例如针对智能卡的攻击。

物理上更大、更简单的门(如 74 系列逻辑)更难被木马检测到。EE.SE 上的“光子”有一个观点,这使得隐藏其他东西变得更加困难——但你仍然必须对芯片进行破坏性分析才能看到它。这完全取决于修改后的部分预计要进行的分析级别。如果您要使用 TO-92 塑料封装中的单个分立晶体管构建某些东西,那么在不打开封装的情况下,其中可能隐藏着任何东西。整个微控制器。小型无线电发射器。

正如另一个线程中提到的,来自声名狼藉的制造商的假冒和克隆零件已经存在真正的问题。一个电子战的小传奇:FTDI 部件被克隆,但在软件中的行为略有不同。因此,FTDI 发布了破坏克隆部分的驱动程序。然后那些认为他们购买的是正品但被骗的用户发现他们的电路停止工作。