多方计算或隐私保护计算允许业务关系中的各方共享数据、进行计算,以及在不泄露其私人数据的情况下达成共同结果。 Azure 服务可帮助你构建多方计算解决方案。 该解决方案可以包括基于云的资源和本地资源。
多方计算具有以下属性:
- 涉及多个公司或组织。
- 各方是独立的。
- 各方不信任彼此的所有数据。
- 各方都可访问通用的计算和数据存储平台。
- 对于某些相关方来说,一些流程必须是私有的。
Azure 多方计算
本部分介绍可通过 Azure 服务使用的多方计算选项。
使用 Azure 虚拟机的区块链
可使用 Azure 虚拟机运行账本软件。 按需创建任意数量的虚拟机并将它们连接到区块链网络中。
部署自己的虚拟机可让你自定义解决方案。 此方法包括管理开销,例如更新、高可用性和业务连续性要求。 你可能有多个组织和多个云帐户。 连接各个节点可能会很复杂。
Azure 上提供用于虚拟机的大多数区块链账本的部署模板。
Kubernetes 上的区块链
由于大多数区块链账本都支持部署到 Docker 容器中,因此可以使用 Kubernetes 来管理容器。 Azure 具有一个名为 Azure Kubernetes 服务 (AKS) 的托管 Kubernetes 产品/服务,可用于部署和配置区块链节点。
AKS 实现为支持 AKS 群集的虚拟机提供托管服务。 你的组织仍必须管理 AKS 群集以及体系结构中的任何网络或存储选项。
Azure 上提供用于 AKS 的大多数区块链账本的部署模板。
区块链即服务
Azure 支持在 Azure 上运行账本软件的第三方服务。 服务提供商管理基础结构。 他们处理维护和更新。 该服务包括高可用性和联盟管理。
ConsenSys 在 Azure 上提供 Quorum。 Quorum 是一个开源协议层,支持基于 Ethereum 的应用程序。
未来可能会提供其他产品/服务。
Azure 机密账本
Azure 机密账本是一项基于机密联盟框架而构建的托管服务。 它可在 Azure 机密计算中实现节点的许可区块链网络。 机密账本建立在现有加密的基础上。
- 现有加密:
- 静态数据。 加密存储在 Blob 存储或数据库中的非活动数据。
- 传输中的数据。 加密在公共或专用网络之间流动的数据。
- 机密计算:
- 使用中的数据。 在内存中和计算过程中加密正在使用的数据。
机密计算允许对主要内存中的数据进行加密。 通过机密计算,可以处理来自多个源的数据,而不会向其他方公开输入数据。 这种安全计算支持多方计算场景,在这种场景中,每一步都必须保护数据。 例如,洗钱检测、欺诈检测和医疗保健数据的安全分析。
存储在机密账本中的数据在仅追加账本中是不可变的和防篡改的。 账本也可独立验证。 机密账本将安全飞地用于去中心化的区块链网络,并且只需最小的受信任计算基础。
Azure SQL 数据库账本
Azure SQL 数据库账本允许参与者验证集中存储的数据的数据完整性,而无需区块链网络的网络共识。 对于一些集中式解决方案,信任很重要,但去中心化基础结构不是必需的。 此方法可避免此类基础结构的复杂性和性能影响。
账本为数据库提供防篡改功能。 这些功能允许以加密方式证明数据未被篡改。
账本有助于保护数据免受任何攻击者或高特权用户的攻击,包括数据库、系统和云管理员。 历史数据将被保留。 如果在数据库中更新了某个行,则其先前的值将保留在历史表中。 此功能无需任何应用程序更改即可提供保护。
账本是 SQL 数据库的一项功能。 可在任何现有的 SQL 数据库中启用该功能。
比较选项
使用下表比较选项,以便做出明智的决策。
机密账本和 SQL 数据库账本
此表将机密账本与 SQL 数据库账本进行了比较。
功能 | SQL 数据库账本 | 机密账本 |
---|---|---|
需要篡改证据的集中式系统 | 是 | 否 |
要求数据必须防篡改的去中心化系统 | 否 | 是 |
保护关系数据不被篡改 | 是 | 否 |
保护非结构化数据不被篡改 | 否 | 是 |
在区块链中保护链数据的链外存储 | 是 | 否 |
保护从区块链引用的文件的链外存储 | 否 | 是 |
关系数据是可查询数据 | 是 | 否 |
非结构化存储数据是可查询数据 | 否 | 是 |
机密账本和 Azure Blob 存储
Azure Blob 存储的不可变存储功能可确保写入其中的数据可供读取,但永远不会更改。 此表将该技术与机密账本进行了比较。
功能 | 机密账本 | 不可变存储 |
---|---|---|
机密硬件飞地 | 是 | 否 |
仅追加数据完整性 | 是 | 是,仅限于间隔 |
正在使用的数据加密 | 是 | 否 |
区块链账本证明 | 是 | 否 |
多方计算决策
此图总结了通过 Azure 服务进行多方计算的选项。
后续步骤
- Azure 机密账本
- Azure SQL 数据库账本
- Azure 虚拟机
- Azure Kubernetes 服务
- Azure SQL 数据库
- 对 Azure 机密账本节点进行身份验证
- Azure 机密账本体系结构