您的位置首页>硬件>

英特尔承诺在即将到来的CPU中进行全内存加密

导读 在周二举行的英特尔安全日活动上,该公司针对其硬件中注重安全性的功能制定了现在和将来的愿景。英特尔的Anil Rao和Scott Woodgate在介绍

在周二举行的英特尔安全日活动上,该公司针对其硬件中注重安全性的功能制定了现在和将来的愿景。

英特尔的Anil Rao和Scott Woodgate在介绍英特尔SGX(软件保护扩展)的当前和未来的讨论中宣布了他们的演讲,但他们对公司将全内存加密引入未来Intel CPU的计划的报道更为有趣。

软件防护扩展

英特尔SGX于2014年发布,并于2015年与Skylake微体系结构一起推出,是旨在保护内存区域免受未经授权用户(包括系统管理员在内)的首批硬件加密技术之一。SGX是一组x86_64 CPU指令,它允许进程在经过硬件加密的内存中创建“安全区”。存储在加密区域中的数据仅在CPU内部解密,即使如此,也仅应在区域自身执行的指令请求下解密。

结果,即使具有超级用户(系统管理员)访问运行系统的权限的人也无法有效地读取或更改受SGX保护的飞地。这旨在允许在共享系统(例如云VM主机)上安全地进行机密,高风险的数据处理。使此类工作负载能够从本地拥有和运营的数据中心移出并进入大规模公共云,可以降低运营成本,并可能提高正常运行时间,可扩展性,甚至降低功耗。

英特尔的SGX有几个问题。第一个也是最明显的一点是,它是专有的且特定于供应商的-如果您设计应用程序以利用SGX保护其内存,则该应用程序将仅在Intel处理器上运行。第二个是您必须围绕SGX设计应用程序-您不能只打开开关然后打开它。

SGX飞地的大小也受到限制。系统上的所有安全区域都必须适合安全区域页面缓存,该限制当前限制为总计128MiB,而不是每个进程128MiB。显然,您不能仅在128MiB中容纳整个操作系统,甚至不能容纳大多数容器,这意味着应用程序开发人员必须对内存的哪些部分是“机密的”和哪些不是“机密的”做出谨慎而极其困难的决定。

最后,对SGX的使用可能会严重影响性能。IBM的Danny Harnik在2017年对SGX性能进行了相当广泛的测试,他发现在SGX隔离区中执行许多常见的工作负载后,吞吐量很容易看到降低20%至50%。

正如他本人明确指出的那样,Harnik的测试并不是100%完美的-特别是在某些情况下,与SGX相比,他的编译器生成的代码优化程度较低。即使一个人决定将这些案例“可能是可修复的”动手,也可以用来突出一个较早的抱怨-需要仔细开发专门针对SGX用例的应用程序,而不仅仅是翻转假设的“是,请对此加密”开关。\

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。