你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

证明

计算是我们日常生活的重要组成部分,为从智能手机到关键基础设施的一切提供支持。 但是,越来越多的监管环境、网络攻击的流行以及攻击者日益成熟,使得难以信任我们依赖的计算技术的真实性和完整性。 证明是验证系统软件和硬件组件的技术,是建立并确保我们依赖的计算技术可信的关键过程。

本文档介绍什么是证明、Microsoft 当前提供的证明类型,以及客户如何在 Microsoft 解决方案中利用这些类型的证明方案。

什么是证明?

在远程证明中,“一个对等(”证明者“)生成有关自身(”证据“)的可信信息,使远程对等方(”信赖方“)能够决定是否将证明者视为可信对等方。 远程证明过程由其他重要方(“验证方”)促进。 简单来说,证明是一种证明计算机系统可信的方式。 为了更好地了解什么是证明及其在实践中的工作方式,我们将计算中的证明过程与实际示例与护照和背景检查进行比较。 本文档中使用的定义和模型概述在 Internet 工程工作队(IETF)远程证明过程S(RAT)体系结构文档中。 若要了解详细信息,请参阅 Internet 工程工作队:远程 ATtestation 过程(RAT)体系结构

Passport 模型

护照模式 - 移民台

  1. 公民希望护照前往外国/地区。 公民向主办国/地区提交证据要求。
  2. 宿主国家/地区从个人那里收到策略符合性的证据,并验证提供的证据是否证明个人符合发放护照的政策。
    • 出生证明有效,尚未更改。
    • 出生证书的颁发者受信任
    • 个人不是受限列表的一部分
  3. 如果主办国/地区决定证据符合其政策,主办国/地区将颁发公民护照。
  4. 公民前往外国,但首先必须出示护照到外国/地区边境巡逻员进行评估。
  5. 外国/地区边境巡逻人员在信任护照之前检查一系列关于护照的规则
    • 护照是真实的,没有改变。
    • Passport 是由受信任的国家/地区生产的。
    • Passport 未过期或吊销。
    • 护照符合签证或年龄要求的政策。
  6. 外国/地区边境巡逻员批准护照,公民可以进入外国/地区。

Diagram of remote attestation with the passport model for an immigration desk.

Passport 模型 - 计算

  1. 受信任的执行环境(T企业版),否则称为证明者,想要从机密管理器(也称为信赖方)检索机密。 若要从机密管理器中检索机密,T企业版必须证明机密管理器可信且真实。 T企业版将其证据提交到验证程序,以证明其可信和真实,其中包括其已执行代码的哈希、其生成环境的哈希以及其制造商生成的证书。
  2. 验证程序(证明服务)评估 T企业版提供的证据是否满足以下受信任要求。
    • 证书有效且尚未更改。
    • 证书颁发者受信任
    • T企业版证据不属于受限列表
  3. 如果验证程序确定证据符合定义的策略,验证程序将创建证明结果并将其提供给 T企业版。
  4. T企业版想要与机密管理器交换机密,但首先必须将其证明结果提交到机密管理器进行评估。
  5. 机密管理器在信任证明结果之前检查一系列有关证明结果的规则
    • 证明结果是真实的,并且尚未更改。
    • 证明结果由受信任的颁发机构生成。
    • 证明结果未过期或吊销。
    • 证明结果符合配置的管理员策略。
  6. 机密管理器批准证明结果,并与 T企业版 交换机密。

Diagram of remote attestation with the passport model for computing.

背景检查模型

背景检查 - 学校验证

  1. 一个人正在做背景检查与潜在的雇主获得工作。 该人提交他们就读于潜在雇主的学校的教育背景。
  2. 雇主从该人检索教育背景,并将其转发到相应的学校进行核实。
  3. 学校评估人员给出的教育背景是否满足学校记录。
  4. 学校颁发证明结果,验证该人的教育背景与其记录匹配,并将其发送给雇主
  5. 雇主(也称为信赖方)可以在信任证明结果之前检查一系列有关证明结果的规则。
    • 证明结果真实,尚未改变,真正来自学校。
    • 证明结果是由受信任的学校生成的。
  6. 雇主批准证明结果并雇用该人员。

Diagram of remote attestation with the background check model for education background.

背景检查 - 计算

  1. 受信任的执行环境(T企业版),否则称为证明者,想要从机密管理器(也称为信赖方)检索机密。 若要从机密管理器中检索机密,T企业版必须证明它是可信和真实的。 T企业版将其证据发送给机密管理器,以证明其可信和真实,其中包括其执行的代码的哈希、其生成环境的哈希以及其制造商生成的证书。
  2. 机密管理器从 T企业版检索证据,并将其转发到要验证的验证程序。
  3. 验证程序服务评估 T企业版提供的证据是否符合所信任的定义策略要求。
    • 证书有效且尚未更改。
    • 证书的颁发者受信任。
    • T企业版证据不属于受限列表。
  4. 验证程序为 T企业版 创建证明结果,并将其发送到机密管理器。
  5. 机密管理器在信任证明结果之前检查一系列规则。
    • 证明结果是真实的,并且尚未更改。
    • 证明结果由受信任的颁发机构生成。
    • 证明结果未过期或吊销。
    • 证明结果符合配置的管理员策略。
  6. 机密管理器批准证明结果,并与 T企业版 交换机密。

Diagram of remote attestation with the background check model for computing.

证明类型

可以通过两种不同的方式利用证明服务,每个服务都提供自己的优势。

云提供商

在 Microsoft 中,我们将 Microsoft Azure 证明(MAA)作为面向客户的服务和一个框架,用于证明受信任的执行环境(T企业版s),如 Intel Software Guard Extensions (SGX) enclave、基于虚拟化的安全 (VBS) enclave、受信任的平台模块(TMS)、受信任的启动和机密虚拟机。 使用云提供商证明服务(如 Azure 证明)的好处包括:

  • 免费可用
  • 源代码可通过 Microsoft 代码中心高级版工具向政府客户提供
  • 通过在 Intel SGX enclave 中操作来保护数据。
  • 在单个解决方案中证明多个 T企业版。
  • 提供强大的服务级别协议(SLA)

生成自己的

客户可以创建自己的证明机制,以便从云和硬件提供商提供的工具信任其计算基础结构。 为 Microsoft 解决方案构建自己的证明过程可能需要使用受信任的硬件标识管理(THIM),该解决方案可处理驻留在 Azure 中的所有受信任执行环境(T企业版)的证书缓存管理,并提供受信任的计算基础(TCB)信息来强制实施证明解决方案的最低基线。 生成和使用自己的证明服务的好处包括:

  • 100% 控制证明流程以满足法规和合规性要求
  • 自定义与其他计算技术的集成

Microsoft 的证明方案

Microsoft 有许多证明方案使客户能够在云提供商和构建自己的证明服务方案之间进行选择。 对于每个部分,我们将介绍 Azure 产品/服务和可用的证明方案。

具有应用程序 Enclave 的 VM

具有应用程序 Enclave 的 VM 由 Intel SGX 启用,使组织能够创建保护数据的 enclave,并在 CPU 处理数据时保持数据加密。 客户可以使用 MAA 和自己的 MAA 来证明 Azure 中的 Intel SGX enclave。

机密虚拟机

AMD 标准版V-SNP 启用机密虚拟机,使组织能够在虚拟机和基础主机管理代码(包括虚拟机监控程序)之间实现基于硬件的隔离。 客户可以使用 MAA 和自己的 MAA 在 Azure 中证明其托管的机密虚拟机。

Azure 容器实例 上的机密容器

Azure 容器实例上的机密容器提供一组特性和功能,进一步保护标准容器工作负载,以实现更高的数据安全性、数据隐私和运行时代码完整性目标。 机密容器在硬件支持的受信任执行环境(T企业版)中运行,提供数据完整性、数据机密性和代码完整性等固有功能。