什么是机密计算?面向首席信息安全官的高阶解释
by Canonical on 27 December 2022
隐私增强技术和机密计算是我们最喜欢谈论的两个话题!今天这篇博文,让我们来探讨两个好问题 – 什么是机密计算?它对我有什么影响?
在探讨细节之前,让我们想象一下,你是 PAlabs 的首席信息安全官(CISO,chief information security officer)。PAlabs 是一家领先的基因测序公司,专门对愿意将唾液放入小容器中并漂洋过海邮寄到此进行分析的好奇公民进行基因测序。作为交换,你们公司会为他们提供一份以数据为驱动、以科学为依据的概率报告,详细说明他们的祖先可能来自哪里。
PAlabs 以让我们看到人与人之间的联系如此紧密、追求数据与科学等等为傲!但作为 CISO,你却始终对客户代码和数据的完整性和机密性而感到担忧,因为 PAlabs 的所有工作负载都部署在公共云上!
你深知客户的数据有多敏感。这些数据都是可识别的个人信息。如果落入坏人之手,后果将不堪设想。不仅仅是你的个人客户的隐私会受到威胁,他们的孩子、父母、祖父母、兄弟姐妹、堂兄弟姐妹、叔叔的隐私也会受到威胁…。这样的例子还有很多,但我想你应该已经明白了。任何数据泄露都会损害公司多年努力打造起来的品牌形象,更不用说过去几年一直在稳步增长的股票价格了。
运行时的安全
为了降低这些风险,你决定跟踪公共云工作负载数据的动向,并在所有阶段确保数据的安全:
- 传输中:通过不安全的网络向公有云发送数据时,只能使用 TLS 等安全协议。
- 静止时:当数据处于静止状态或闲置在公共云存储器中时,为安全存储数据,你始终使用由你们公司生成和管理的密钥对数据进行加密,并由云硬件安全模块进一步加以保护。
传输中的安全?没有问题。静止时的安全?没有问题。目前为止,一切良好。
然而,当需要对数据进行计算(即进行基因测序)时,你的公共云提供商需要首先对其进行解密,然后以明文形式将其从服务器的二级存储器移动到其系统内存 RAM 中。对数据进行计算是不可避免的。毕竟,这正是你们公司使用云的原因:可以利用其弹性以及基因测序所需的大量计算资源。
遗憾的是,一旦处于系统内存中,你的代码和数据就有可能被易受攻击的或恶意的系统级软件(操作系统、管理程序、基本输入/输出系统)破坏,甚至被对你的供应商平台拥有管理员或物理访问权限的恶意云运营商破解。
但是为什么用户级应用程序的安全性要依赖于其底层系统软件的安全性呢?原因就在于商品设备的层次结构:拥有特权的系统软件可以无限制地访问无特权用户级应用程序的所有资源,因为前者控制了后者的执行、内存和对底层硬件的访问。事实上,这是一项功能,而不是一个漏洞!
运行过程中缺乏这样的安全保障,无法确保代码和数据的完整性和机密性,可能会让作为 CISO 的你夜不能寐。那现在除了冥思苦想和服用褪黑素,你还能做些什么呢。
机密计算 – Confidential Computing
首先我们要承认,运行时的安全是一个很棘手的问题!以 PAlabs 为例:
- 你想要云分析客户的 DNA,但同时不想要云了解关于特定 DNA 的任何内容
- 你希望云的特权系统软件管理工作负载的生命周期,但同时不会使工作负载的安全保障受到影响
如何在不实际查看数据的情况下对数据进行计算呢?怎么能指望一个易受攻击的管理程序不会威胁到它所运行的用户级应用程序的安全性呢?这是一个难解的谜题,甚至有了自己专门的命名:隐私增强技术(PET,privacy enhancing technologies)。
PET 可以定义为帮助我们解决数据隐私和实用性之间紧张关系的一系列技术。它们允许我们对数据进行计算并从中获得价值,同时还能保护数据隐私。这与 AES(advanced encryption standard,高级加密标准)等传统的加密原语不同。AES 只允许我们保护数据的机密性,但无法对加密的密文执行任何类型的操作。PET 可以通过差分隐私、同态加密、安全多方计算、零知识证明等加密方法以及可信执行环境(也称为机密计算,confidential computing,CC)等系统类方法实现。
基于这样的背景,机密计算联盟(Confidential Computing Consortium)将 CC 定义为允许我们「通过在基于硬件的可信执行环境中执行计算来保护使用中的数据的一系列技术。这些安全隔离的环境可以防止对使用中的应用程序和数据进行未经授权的访问或修改,从而为管理敏感和受监管数据的组织提高了安全保障。」
这就是机密计算如此令人振奋的原因!它解决了运行时不安全这一巨大挑战。机密计算并非试图确保所有系统软件的安全,而是采用一种简单而实用的方法来实现 PET,这种方法只在当前适用。
PET 预先认定,系统软件要么目前已经成为了恶意软件,要么在未来某个时候也有可能变成恶意软件。它认为它所启动的执行环境是不可信的,而建议在一个隔离的可信执行环境(TEE,trusted execution environment)中运行对安全性敏感的工作负载,可信执行环境的安全保障可以得到远程证明。
为了能够对 TEE 和机密计算展开思考,我们需要了解两个主要的原语:
- 隔离 – isolation
- 远程证明 – remote attestation
我们将在本迷你博客系列的第二部分中探讨如何设计和实现它们。请持续关注。
更多资源(英文)
订阅博客文章
查看更多内容
如何使用 DSS 构建您的首个模型
GenAI 无处不在,它正在改变我们对待技术的方式。如果您曾想要深入大型语言模型(LLM)的世界,但是感到无从下手,那么有一个好消息!Hugging Face 最近推出了一个自定进度的课程,非常适合初学者和更有经验的爱好者。由于模型占用面积小,它可以实际操作,易于使用,并且设计为在标准硬件上工作。 当我听到这个消息时,我决定使用 Canonical 的数据科学堆栈(DSS)来尝试一下。 在这篇博客中,我将指导您设置 DSS 并运行 Hugging Face 课程的第一个笔记本。该笔记本侧重于受监督的微调,这是一种使预先训练的语言模型适应特定任务或领域的方法。在这篇帖子的结尾,您将会看到 GenAI 是多么的简单和容易理解——这将是一项用于开启新年篇章的完美新技能。 设置您 […]
预装且完全维护的数据应用程序
引入可信开源数据库容器 不要再说 “云原生还很遥远” 了。Kubernetes 刚刚庆祝了其 10 周年纪念,在最新的 CNCF 年度调查中,76% 的受访者表示他们已经在大部分或全部产品开发和部署中采用了云原生技术,例如容器。云原生并不遥远 —— 它已经到来。 数据密集型工作负载也不例外。恰恰相反,Kubernetes 专家之声 2024 年报告发现,97% 的组织在云原生平台上运行数据工作负载,72% 的数据库和 67% 的分析服务在 Kubernetes 上运行。 数据库容器正在推动可扩展性、灵活性、操作简单性和成本方面的重大改进。但是,在容器上管理这样的状态管理解决方案(通常使用多个开源组件构建)也给站点可靠性工程师、平台工程师和首席信息安全官等带来了不小的难 […]
NIS2 合规综合指南:第 1 部 — 了解 NIS2 及其范围
欧盟 NIS2 指令呼吁加强整个欧盟的网络安全,目前已在所有成员国生效。在这个由三部分组成的博客系列中,我将解释 NIS2 是什么,并帮助您了解它是否适用于贵公司,以及如何才能符合 NIS2。 在第一部分中,我将介绍 NIS2 是什么以及其与其前身 NIS 的区别和适用性,帮助您理解并判断它是否与您的公司相关。 NIS2简介 欧盟指令 2022/2555 或《网络和信息系统指令》(以下通常称为 NIS2 或欧盟 NIS2)是一项新的欧盟法规,适用于所有欧盟成员国,其目标是实现高水平的网络安全。该法规更新了 2016 年颁布的《网络和信息系统指令》(NIS 或 NIS1),并授权成员国对在欧盟地区提供关键服务的实体采用并严格执行更严格的网络安全要求。除非您的公司被视为小型/ […]