当前位置: 首页 > 科技观察

数据安全技术MVP——机密计算有多牛?

时间:2023-03-18 13:09:37 科技观察

无论是使用内部数据中心的企业,还是上云的企业,安全始终是三大关注点之一。应用解决方案提供商、机器供应商和云服务提供商都应该努力提高安全性。过去,安全措施主要集中在保护静态数据或加密传输中的数据。事实上,数据在数据库中、LAN/WAN上以及通过5G网络传输时都是加密的,这也是任何此类系统的关键组成部分。几乎所有计算系统(甚至智能手机)都内置了数据加密功能,并通过处理器芯片中的专用计算引擎得到增强。但是,如果恶意用户通过恶意应用程序或侧信道入侵获得对设备硬件的访问权限,则所有这些加密功能都将变得毫无用处,这是一个相对被忽视的领域。在处理加密数据时,我们必须意识到这是一个真正的漏洞。如果此时可以访问机器内存,则可以轻松查看/复制所有数据。“机密计算”(CC)的初衷就是消除这种隐患。什么是机密计算?Linux基金会于2019年成立了机密计算联盟,其宗旨是定义和制定机密计算标准,以支持和促进开源CC工具和框架的发展。联盟成员包括阿里巴巴、AMD、Arm、Facebook、Fortanix、谷歌、华为、IBM(红帽)、英特尔、微软、甲骨文、瑞士电信、腾讯和VMware。虽然一些公司已经提供了可用的工具,但考虑到Linux基金会的背景,未来这些工具很可能会汇集在一个更加开放的CC源代码框架中。Linux基金会指出,该联盟将专注于使用中的数据领域,传输中数据和静态数据的机密性不在联盟范围内。联盟对机密计算的贡献包括:SoftwareGuardExtensions(IntelSGX)SDK。旨在帮助应用程序开发人员在硬件级别保护选定的代码和数据不被泄露或篡改。打开飞地SDK。作为一个开源框架,它允许开发人员使用单独的enclaving抽象来构建可信执行环境(TEE)应用程序。开发人员还可以构建跨多个TEE架构运行的应用程序。Enarx是一个为使用TEE保护的应用程序提供硬件独立性的项目。由于这是一项“进行中”的标准化工作,未来可能会有更多项目。但是所有这些最终都会嵌入到CC的开源框架中。为什么CC如此特别?与数据加密不同,CC使用基于硬件的能力为数据、计算功能或整个应用程序创建一个“可信执行环境”(TEE)。CC将这个跳板区域隔离开来,不被操作系统或虚拟机访问,从而防止任何潜在的交叉,没有人可以获得未分配给该TEE的访问权限。TEE将阻止任何更改应用程序代码或篡改数据的尝试。这在多租户系统(虚拟化和公共云系统)中尤为重要。在这些系统中,数据的交叉污染是一个真正的风险。出于这个原因,一些公共云计算的潜在用户抵制迁移到云。如果用户可以物理访问硬件,则“侧信道”攻击的风险变得非常低,与非CC系统相关的潜在风险相比甚至微不足道。为什么现在?可信的执行环境对于CC的正常运行至关重要。今天我们建立了TEE,既有基于Arm的芯片(TrustedZone),也有x86芯片(比如IntelSGX)。这个概念可以追溯到10多年前在许多PC中使用的TPM模块。早期版本的TEE与现代版本的不同之处在于,它们内置在芯片的核心中,而不是作为外部附加组件。虽然我们有可以启用TEE的系统,但很少有企业尝试使用它们,而且许多应用程序提供商也不支持它们。原因是它们很难部署,用户需要在应用程序中启用特定代码才能强制使用TEE环境。此外,TEE并非在所有处理器上都可用(一些英特尔至强芯片支持SGX,有些则不支持),TEE也并非在所有芯片系列中都兼容。这导致许多企业没有部署非常重要的安全措施。发生了什么变化?随着数据逐渐从本地数据中心迁移和多租户云计算的出现,保护客户数据处理流程的完整性以及保护流程中的某些专有算法现在变得更加迫切。云提供商可以轻松启动新的CC实例并将它们提供给客户。这消除了企业运行自己的支持CC的系统的需要。这是一个双赢的局面,客户保护其数据资产,云提供商为客户提供其必要的硬件资产。这不仅带来了新的可用性,越来越多的处理器也内置了CC概念。由于云提供商通常在可用性的早期阶段获得新的高端处理能力,因此用户社区可以比用户购买设备更快地访问它。此外,应用程序提供商可以通过基于云的硬件和工具包将CC快速设计到他们的产品中,使他们能够更好地从市场回收开发投资。企业应该怎么做?CC的概念并不新鲜,但TEE和云端CC的可用性使其对需要保护数据免受应用程序漏洞影响的企业更具吸引力。建议企业在未来6-12个月探索CC技术的使用,并要求重点应用解决方案提供商遵守CC战略,同时完成技术部署。CC可以极大地提高企业安全性。虽然不可能做到100%的安全,但是CC的部署已经让安全又向前迈进了一大步,所以用户还是尽量部署吧,尤其是应用部署在云端的企业。CC可能在未来1~2年成为计算的标准方式,尤其是在云端。