什么是Azure机密计算?

构建和运行现代的云原生应用程序存在风险。 最大的问题之一是,您正在与数量不明的其他用户共享计算资源。 您的内存和CPU是共享的,并且始终存在数据意外跨越边界泄漏的可能性,可以从组织外部访问这些数据。

泄露,即使是偶然的泄露,也仍然是违反,并且,如果您使用Azure或其他云平台来处理个人身份信息甚至您自己的财务数据,那么您将违反任何合规性法规。 不仅用户或财务数据可能受到威胁; 您的代码是您的知识产权,并且可能是未来运营的关键。 即使在管理良好的系统上也会发生错误,并且网络问题或容器故障可能会将您的应用程序的内存暴露给外界。

[ 也在InfoWorld上:Microsoft Azure云迁移:3个成功案例 ]

然后就有坏演员的风险。 尽管Azure已对其服务器进行了修补以应对可能会通过处理器缓存泄漏数据的已知CPU级别的错误,但仍在发现微代码级别的问题,不难想象民族国家或有组织的网络犯罪分子会使用它们来窥探合作伙伴租户系统。

Azure的网络安全基础结构是最好的之一。 它通过基于机器学习的威胁检测,使用各种信号来查找恶意活动,以快速发现可能的调查区域。 安全性和加密内置于其基础平台中。 即便如此,一些客户仍希望获得比默认值更多的默认值。 他们是在云中构建尖端金融技术或使用它来处理和管理健康数据的企业。 他们甚至可能是政府或军队。

引入Azure机密计算

默认情况下,Azure确保在静态数据和传输数据时确保数据的安全。 我们熟悉使用加密的存储和网络连接,但是在大多数情况下,我们需要对原始数据进行处理,并在最有可能泄漏的地方对其进行解密。 在那里,机密计算概念就出现了,它基于硬件和软件的混合以及Microsoft Research的工作 ,以构建和运行TEE(受信任的执行环境)。 最好将这些TEE视为安全的容器,它可以保护您的应用程序所需的计算和内存资源,并通过防止不受信任的代码在该内存空间中运行而将它们与其他用户隔离。

通过保护CPU和内存,可以提供锁定计算的授权方法,以确保仅运行您自己的受信任代码,并防止代码越过内存边界进入受保护的空间。 当应用程序释放TEE时,将对其进行刷新,以确保处理器高速缓存或内存中没有剩余数据。 外部应用程序无法读取该内存,也无法对其进行修改,因此它们无法跨保护边界注入代码。

在Azure中使用SGX

Azure提供了两种不同的TEE模型 :虚拟安全模式和英特尔的SGX。 第一种基于Microsoft自己的Hyper-V,使用修改后的版本通过防止代码跨越虚拟机管理程序边界来提高隔离度。 这包括由Azure管理员将代码注入到TEE中,以防止可能无法检测到的内部攻击。 英特尔的SGX安全扩展为TEE添加了硬件保护,Azure为不信任Microsoft的应用程序或仅信任该应用程序且各方无法访问对方数据的多方应用程序提供对启用SGX的服务器的访问权限(例如,通过多个供应商的医疗数据进行机器学习)。

DCv2系列的Azure虚拟机中 ,可以使用第2代VM映像,1至8个vCPU和最多32GB的数据来预览SGX。 在预览时,它们仅在英国南部地区可用。 第2代VM使用的硬件较新,并且可以访问比原始一代Azure VM更多的硬件功能,包括对Intel SGX的支持。 可以将现有的VM转换为第2代,但这是一个单向过程。

使用开放式安全区构建SGX TEE

微软在Coco Framework区块链平台上率先开发了其飞地技术,并在Azure SQL中提供了飞地作为其始终加密工具的一部分。 现在可以在预览中构建和使用自己的TEE,其中包含用于在Azure Marketplace中构建安全的,启用安全区域的VM的工具,以及用于开发自己的代码以在TEE中运行的C / C ++ SDK。

Open Enclave SDK旨在提供一种与所有可用的TEE实现一起使用的构建代码的单一方法。 它采用分层方法来确保应用程序开发的安全,将TEE中运行的受信任组件与处理与用户和其他应用程序交互的不受信任主机混合在一起。 您的机密应用程序将其所有秘密保存在TEE中,并将结果传递给主机应用程序。 这使您的代码可以安全地传递结果,而不会泄露任何秘密。

运行对数据进行机器学习的应用程序将使用主机报告结果,从而处理TEE中的推论。 如果未使用TEE,攻击者将能够看到原始数据。 使用TEE意味着攻击者只会知道主机收到了结果。 对于要处理的数据包含无法在组织外部公开的受管制数据的多方应用程序,此方法是理想的选择。

SDK的作用是什么? 它提供了用于创建和管理TEE的工具 ,包括管理安全区标识。 其他功能还包括跨TEE边界传输结果和数据的标准方法,并带有简化构建内置代码的原语。 最后,它提供了加密工具来密封飞地内部的秘密并验证飞地身份。 Open Enclave SDK具有Windows和Linux版本,为您的代码添加了SGX支持,并且作为机密计算VM部署的一部分预先安装在DC系列Azure VM上。

在Windows上使用Open Enclave SDK

使用Open Enclave SDK就像使用任何其他C ++ SDK一样。 您可以从GitHub下载它,或者,如果您将Visual Studio与Clang一起使用, 则可以通过NuGet获得它 。 目前,SDK仅支持单个二进制安全区,您需要小心配置正确的构建。 一旦建立,就需要签名,以用于证明和密封秘密。 该SDK安装了一些示例应用程序,因此您可以开始使用Open Enclave并快速使用SGX TEE。

机密计算仍处于早期阶段。 TEE的设置并不容易,由于SGX的限制,它们确实需要很多考虑。 仍然值得探索它们,特别是如果您需要在云中处理受监管的数据时。 为使用中的数据以及静态数据和移动数据添加加密是对应用程序和数据安全性的重大升级,这是对敏感应用程序使用公共云的基本要求。 随着Azure争夺更多的金融科技和政府客户,我们应该看到对其机密计算平台的进一步升级,对Hyper-V安全性的更多支持以及对英特尔SGX指令集的未来升级。

From: https://www.infoworld.com/article/3530368/what-is-azure-confidential-computing.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值