剑桥,麻-云计算外包计算任务在互联网上——可以给家用电脑用户前所未有的处理能力,让小公司推出复杂的Web服务,而不建立庞大的服务器群。
但它也引发了隐私问题。云服务器可以运行应用程序的银行1000客户一次;不知道托管服务,其中一个应用程序可能没有监视其他999以外的目的。
加密可以使云服务器更安全。只有当正在处理的数据实际上会解密;任何计算的结果将对之前他们送片外。
在过去的十年左右,然而,事实清楚地表明,即使计算机处理加密数据,它的内存访问模式——它存储和访问数据的频率在不同的内存地址,可以背叛一个令人震惊的私人信息。
6月举行的国际研讨会上计算机体系结构,麻省理工学院的研究人员描述了一种新型的安全硬件组件,被提升,这会掩盖服务器的内存访问模式、使攻击者无法推断出任何关于数据存储。提升也会另一种类型的攻击,被称为时间攻击,它试图推断信息的时间计算。
计算的权衡
类似的设计提出了过去,但他们通常的计算开销过大安全交易。“这是第一次,任何硬件设计提出了——它尚未建立——这将给你这种级别的安全而只有大约三或四倍性能开销,“说Srini Devadas,埃德温Sibley韦伯斯特的电气工程和计算机科学教授,他的集团开发的新系统。“人们会认为这将是一个100倍。”
模糊的“琐碎”内存访问模式、Devadas教授解释说,将从内存中每个地址请求数据——无论是记忆体晶片或硬盘,扔掉一切,除了感兴趣的数据存储在一个地址。但这将是太耗时的实际。
Devadas教授和他的合作者——研究生任凌,Xiangyao Yu和克里斯托弗·弗莱彻,研究科学家马汀·冯·安排内存地址,做的是在一个称为“树数据结构。“一个家庭树是一棵树,一个大家熟悉的例子中,每一个“节点”(在这个例子中,一个人的名字)连接到上面只有一个节点(节点表示人的父母),但下面的可能连接到多个节点(人的儿童)。
与提升,随机地址分配给节点。每个节点是沿线一些路径,或通过树,从顶部开始,从节点到节点,没有原路返回,直到到达一个节点没有进一步的联系。当处理器需要数据从一个特定的地址,它将请求发送给所有的地址在一个路径包括一个接一个的很。
防止攻击者推断从内存访问序列,每一次提升访问一个特定的内存地址,它随机交换地址与一个存储树中的其他地方。因此,访问一个地址多次很少需要遍历路径相同。
不计算伪装一个地址
通过限制其虚拟请求到一个路径,而不是发送到每一个地址在内存中,提升指数减少了所需的计算量伪装一个地址。在一个单独的纸,这是尚未出版,但网上发布,研究人员证明查询路径提供了尽可能多的安全查询每一个地址在内存中。
提升也抵御时机攻击。假设被外包到云计算的庞大的任务比较监控犯罪嫌疑人的照片和随机的照片在网上。监测照片本身将是加密的,因此安全不被窥视。但云中的间谍软件仍然可以推导出公共照片被相比。和时间的比较表明照片的来源:照片明显不同的人可以很容易排除,但照片非常相似的人可能需要更长的时间来区分。
所以提升内存存取计划最后皱纹:定期发送请求内存——即使处理器繁忙并且不需要新的数据。这样,攻击者不能告诉任何给定的计算是多久。
拉里Hardesty所写,麻省理工学院新闻办公室