还记得去年的Spectre和Meltdown的安全漏洞吗? 英特尔 和 AMD 真的不希望这样。他们希望你理解,这些投机的执行漏洞不会消失,至少目前为止还没有提出解决方案。

永久性的修复将需要对 CPU 的设计方式进行根本性地更改,而不是尝试修复随附的每个变体。这个提议-一个“安全核心”,确保您的数据不会受到攻击者的攻击,无论他们试图利用什么漏洞。

这可能不是这些大型处理器公司想要走的路线,但它可能是唯一一条能够实现的路线。

从根开始
当新一代处理器推出时,每个人都会问的第一个问题是,“它有多快?”“更多的兆赫、更多的核心、更多的缓存,所有这些都可以使应用程序运行更快,游戏性能更好。第二个考虑因素可能是电力需求或热输出,但很少有人问安全性。

问题在于,过去几年的性能提升主要是由推测预测推动的,即CPU会猜测你下一步要做什么,并准备好你可能需要的一切。这对于性能来说非常好,但正如Spectre及其变体所示,对于安全性来说非常糟糕。

Malwarebytes高级安全研究公司Jean-Philippe Taggart告诉Digital Trends,“投机执行已经成为CPU性能优化的一个长期特征。”他解释道,正是这个特性使得英特尔和其他公司的CPU容易受到幽灵和类似攻击。他说:“CPU架构需要重新考量,要么保留这些性能并增强它们,要么保护它们免受幽灵之类的攻击,要么完全消除它们。”

一个潜在的解决方案是为下一代CPU添加新的硬件。与处理高马力处理核心上的敏感任务不同,如果芯片制造商将这些核心与一个专门为此类任务设计的额外核心结合在一起会怎么样?

这样做可能会使Spectre及其变体成为新硬件的问题。明天的主要CPU核心是否容易受到此类攻击并不重要,因为这些核心不再处理私有或安全信息。

信任的根源不仅仅是一个粗略的轮廓。在某些情况下,它已经是一个可行的产品,所有像英特尔或AMD这样的主要芯片公司都需要利用它,就是采用它。

回避幽灵
Rambus产品管理高级总监Ben Levine在被问及持续的幽灵变种威胁时告诉Digital Trends:“如果你总是被动的,必须等待安全漏洞,然后再修复它们,那么在安全方面就很困难了。”“试图使复杂处理器安全的问题确实是一个困难的方法。这就是我们提出的将安全关键功能移动到单独核心的方法。”

Rambus产品管理高级总监Ben Levine

虽然不是第一个提出这样一个想法的人,但Rambus已经对它进行了改进。它的CryptoManager Root of Trust是一个独立的核心,可以放在一个主要的CPU芯片上,有点像许多移动处理器中的big.little概念,甚至是英特尔自己的新Lakefield设计。但是,如果这些芯片使用较小的内核来节省能源,那么安全的核心信任根将首先关注安全性。

它可以将处理器与加密加速器以及自己的安全内存结合起来,而不需要考虑主要CPU的某些方面。这将是一个相对简单的设计,相比于今天运行我们的计算机的可怕的通用CPU,但这样做会更安全。

在保护自身的过程中,安全核心可以承担最敏感的任务,而一般用途的CPU核心通常会处理这些任务。安全加密密钥、验证银行事务、处理登录尝试、在安全内存中存储私有信息或检查启动记录在启动期间未损坏。

所有这些都有助于提高使用它的系统的总体安全性。更好的是,由于它将缺乏推测性的性能增强,它将完全安全地抵御类似幽灵的攻击,使它们失效。这些攻击仍然可以对主CPU核心进行攻击,但由于它们不会处理任何值得窃取的数据,因此无关紧要。

“我们的想法不是设计出一个做每件事都非常快速和安全的CPU,而是可以让我们针对不同的目标分别优化不同的内核。” Levine解释说。“让我们优化我们的主CPU以获得性能或更低的功耗,无论对于该系统重要的是什么,优化另一个核心以实现安全性是必要的。现在,我们有了这两个单独优化的处理域,并且考虑到计算和系统的特点,在其中任何一个域中进行处理都是最合适的。”

这样的核心操作起来有点像苹果在iMac上推出的t2协处理器芯片,后来在2018年实施。

安全,但成本是多少?

人们常说复杂性是安全的敌人。这就是Rambus提出的安全核心设计相对简单的原因。并不像台式机或笔记本电脑中的典型CPU那样,是一个具有多核和高时钟速度的大而可怕的芯片。

那么,这是否意味着如果将这样的核心与现代芯片一起使用,我们会牺牲性能?不一定。
从安全核心的概念来看,无论是Rambus的CryptoManager信任根,还是来自另一家公司的类似设计,重要的是它只会执行专注于隐私或安全的任务。您不需要它在游戏过程中接管图形卡,或在Photoshop中调整图像。您可能更喜欢它来处理通过聊天应用加密您的消息。这就是专用硬件可以在安全性之外获得一些好处的地方。

Levine说:“加密算法、加密或解密算法(如AES)或使用公钥算法(如RSA或椭圆曲线)等,这些操作在软件中的执行速度相对较慢,但安全核心可以有硬件加速器来更快地执行这些操作。”

这是Arm的物联网安全负责人,Rob Coombs非常赞同。

“通常信任的根源将构建在加密加速器中,因此需要更多的芯片,但其好处在于,它对加密函数等功能具有更高的性能,因此您不需要仅仅依靠处理器来执行文件的常规加密。”他说。“处理器可以设置它,然后加密引擎可以咀嚼数据并对其进行加密或解密。你将获得更高的性能。“

像英特尔这样的现代处理器确实有自己的加密加速器,因此,在这种情况下,加密或解密从根本上来说可能不会比通用CPU完成相同任务更快,但这是可以比较的。

Rob Coombs,ARM物联网安全主管

尽管Coombs在他与我们的谈话中强调,信任核心的根源需要一些额外的硅片来生产,但是这样做的成本,诸如制造价格、芯片的功率消耗或热输出等其他重要因素,基本上不会受到影响。

Rambus的Ben Levine同意了。

“与其他一切相比,安全核心很小,”他说。“对芯片,功率或散热要求的成本确实没有显着影响。如果你仔细设计的话,你可以在一个非常小的逻辑区域做很多事情。我们的目标是简单,如果你保持简单,你就保持小。如果它很小,那就是低功耗。”

他唯一需要注意的是,在像物联网中使用的更小,更低功耗的设备中,Rambus的安全核心将对功率和成本产生更大的影响。这就是ARM更模块化的方法可能出现的地方。

大,小,安全
ARM是在同一个处理器中使用大CPU、小CPU或大内核和小内核的早期先驱。今天,它也是高通公司和苹果公司移动设备中的一个常见功能。当需要时,它可以看到用于重载提升的较大CPU内核,而较小的内核可以处理更常见的任务,从而节省电力。ARM的方法基于这样一个思想,即在主芯片中建立信任的基础,以及在更广泛的设备阵列中使用的更小的微控制器。

Coobs向Digital Trends解释说:“我们定义了一个叫做psa(平台安全架构)的信任根,其中包含一些基本的安全功能,如加密、安全引导、安全存储;每个物联网设备都需要这些功能。

在所有主要的芯片制造商中,Arm可能是受幽灵和崩溃影响最小的。英特尔最容易遭受最广泛的潜在攻击,AMD不得不发布大量的微码和软件调整,在证实投机性执行错误之前,Arm能够支撑其已经强大的防御措施。

现在,Arm正致力于保护物联网。Coombs认为,一个安全的核心,信任的根源是最好的方法之一,他希望看到每个物联网设备都实现这样的系统。为了实现这一目标,Arm针对当今物联网开发人员面临的安全问题提供了开源软件,开发指南和硬件解决方案。

“我们已经创建了一个开源和参考实现,现在通过PSA认证,我们已经创建了一个多级安全方案,人们可以在该方案中选择他们需要的安全稳健性。”Coombs说。“不同的系统需要不同的安全性。我们希望使其适合物联网领域。“

将这些原则应用于笔记本电脑和台式机中的大型通用CPU,最终结果不会有太大差异。根据Rambus的Ben Levine的说法,虽然这种芯片不会在大芯片旁边有小的核心,但它们可以在芯片上实现安全的核心,而不会有太大的困难。

他说:“这些核心应该并且需要比英特尔或AMD芯片中的主要大CPU核心小得多。”它不是7加1,而是8或任何核心处理器,以及一个或多个小型安全核心,为所有其他核心提供安全功能。

至关重要的是,这样的核心实现起来甚至不复杂。

Julian Chokkattu /数字趋势

“我们不会在将新芯片纳入消费产品的芯片设计周期中增加太多,”他说。“我们的影响将会非常小。这将是一个正常的产品生命周期,即将芯片架构开发投入生产,然后再投入到运输产品中。”

把它带给大众

安全性可能是一个鸡毛蒜皮的问题,开发人员不希望在没有客户特定需求或要求的情况下实施它。但是,如果硬件制造商将他们现有的CPU核心与安全的核心信任根相结合,那么软件开发人员的工作就相对容易了。

“根据应用程序的不同,安全核心的大量使用将在操作系统和系统级别完成,而不是在应用程序级别,”Levine解释说。“如果您正在构建您的操作系统和整个系统软件,那么您可以利用大部分安全功能,而无需应用程序开发人员担心。您可以提供API来公开应用程序开发人员可以轻松使用的一些安全核心功能,如加密和解密数据。“

英特尔
通过将信任的根源整合到硬件本身中,并将实现信任的责任留给操作系统,软件开发人员可以迅速从增加的安全性中获益,这些安全性可以应用到计算的各个方面,包括避免幽灵及其同类的陷阱。

这可能是像英特尔和AMD这样的公司到目前为止出现问题的地方。尽管它们的补丁、微码修复和硬件调整帮助缓解了一些类似幽灵的攻击问题,但它们都有自己的陷阱。性能已经降低,在许多情况下,设备制造商不应用可选补丁,因为他们不想输掉动力军备竞赛。
相反,Rambus,Arm和其他人正在寻求完全避开这个问题。

“我们并不是在宣称我们正在修复幽灵或熔化,我们所说的首先是这些漏洞不是唯一的漏洞,”莱文说。“总会有更多。现代处理器的复杂性使其不可避免。让我们改变问题,让我们接受通用CPU中存在更多漏洞以及我们非常关心的事情,比如密钥,凭据,数据,让它从CPU中移出,让我们绕过整个问题。“

这样,用户可以相信他们的系统是安全的,而不必牺牲任何东西。信任硬件的根意味着任何被盗的数据对任何人都是无用的。它将幽灵的鬼魂留在冗余的阴暗境界,在那里它可以继续困扰那些使用旧硬件的人。但是,随着人们升级到新的,信任装备的未来几代硬件的根源,它将变得越来越无关紧要而且不那么令人担忧。