隐私计算训练营第三讲-详解隐私计算的架构和技术要点

简介: SecretFlow 是一个隐私保护的统一框架,用于数据分析和机器学习,支持MPC、HE、TEE等隐私计算技术。它提供设备抽象、计算图表示和基于图的ML/DL能力,适应数据水平、垂直和混合分割场景。产品层包括SecretPad(快速体验核心能力)和SecretNote(开发工具)。算法层涉及PSI、PIR、数据分析和联邦学习(水平、垂直、混合)。此外,SecretFlow还有YACL密码库和Kusica任务调度框架,Kusica提供轻量化部署、跨域通信和统一API接口。

隐语简介

隐语的SecretFlow 是一个隐私保护数据分析和机器学习的统一框架。

SecretFlow 提供

  • 设备抽象,将多方安全计算(MPC)、同态加密(HE)、可信执行环境(TEE)等隐私计算技术抽象为密文设备,将明文计算抽象为明文设备。
  • 基于抽象设备的计算图,使数据分析和机器学习工作流程能够表示为计算图。
  • 基于计算图的机器学习/数据分析能力,支持数据水平/垂直/混合分割等场景。

1DBAB8E5-CA52-47e0-8A31-87C46988E8A3.png

隐语架构

隐语的架构图如下:

2.png

产品层

隐语的产品层包含SecretPad SecretNote两种。

SecretPad 是隐语平台部署包,可快速帮助用户体验隐语核心能力。在部署安装包的时候,可选择不同的部署模式,如部署成P2P的模式(无需可信第三方,无Center平台)或者中心化的模式(有Center平台)

中心化模式下,体验版内置Alice和Bob两个节点,配置相应数据,用户可直接进行模型训练;用户也可以自己添加数据表,上传自有数据进行模型训练,数据均在本地保存,无需联网即可体验。

SecretNote是隐语提供的开发工具,使得开发者可以以notebook的形式在SecretNote上进行开发,可以实现交互式建模,同时可以实现多节点一站式管理与交互,并且能够对任务的运行状态进行跟踪。

算法层

隐语在算法层提供PSI、PIR、Data AnalysisFederated Learning登多种算法。

隐私求交(Private Set Intersection)是一种使用密码学方法,获取两份数据内容的交集的算法。PSI过程中不泄露任务交集以外的信息。

在隐语中,SPU设备支持三种隐私求交算法:

  • ECDH:半诚实模型, 基于公钥密码学,适用于小数据集。
  • KKRT:半诚实模型, 基于布谷鸟哈希(Cuckoo Hashing)以及高效不经意传输扩展(OT Extension),适用于大数据集。
  • BC22PCG:半诚实模型, 基于随机相关函数生成器。

隐语在数据分析方面提供了SCQL功能,安全协作查询语言(Secure Collaborative Query Language, SCQL)是一个允许多个互不信任参与方在不泄露各自隐私数据的条件下进行联合数据分析的系统。

关键特点

  • 半诚实安全。SCQL 假设所有参与方都是半诚实的。
  • 支持多方(N>=2)。
  • 支持常见的 SQL select 语法和函数,满足大多数场景的需求。详情请查看 SCQL 实现进度
  • 可实用的性能。SCQL 有多层次的性能优化。
  • 易于使用。SCQL提供了类似于关系 SQL 的界面。
  • 数据使用授权。SCQL 为数据所有者提供了一个名为 CCL(Column Control List, 列控制列表)的机制,以定义他们的数据使用限制。

联邦学习是一种机器学习范式,其核心思想为多个参与方在数据不出域的前提下共同完成机器学习训练。隐语支持以下几种联邦学习

设备

隐语的设备分为物理设备和逻辑设备,其中,物理设备是隐私计算各个参与方的物理机器,逻辑设备则由一个或多个物理设备构成。逻辑设备支持一组 特定的计算算子(Device Ops),有自己特定的数据表示(Device Object)。逻辑设备分为明文和密文两种类型,前者执行单方本地计算,后者执行 多方参与的隐私计算。

逻辑设备的运行时负责内存管理、数据传输、算子调度等职责,运行在一个或多个物理设备上。逻辑设备和物理设备不是一对一的关系,一个物理设备可能同时属于多个逻辑设备。在同一组物理设备上,可以根据不同的隐私协议和参与组合虚拟出不同的逻辑设备。

隐语设备.png

除此之外隐语还提供YACL密码库和kusica任务编排调度框架

Kuscia

Kuscia(Kubernetes-based Secure Collaborative InfrA)是一款基于 K3s 的轻量级隐私计算任务编排框架,旨在屏蔽异构基础设施和协议,并提供统一的隐私计算底座。通过 Kuscia:

  • 轻量化部署:您可以用最低 1C2G 的资源完成 100W 级数据隐私求交(PSI)。
  • 跨域网络安全通信:您可以实现多隐私计算任务并发执行时的端口复用(仅需一个公网端口)与安全通信。
  • 统一的 API 接口:您可以使用 HTTP/GRPC API 接口集成隐私计算能力。
  • 互联互通:你可以与行业内多种隐私计算系统进行互联互通。

隐语架构总结.png

相关文章
|
1月前
|
设计模式 前端开发 测试技术
Flutter 项目架构技术指南
探讨Flutter项目代码组织架构的关键方面和建议。了解设计原则SOLID、Clean Architecture,以及架构模式MVC、MVP、MVVM,如何有机结合使用,打造优秀的应用架构。
Flutter 项目架构技术指南
|
1月前
|
分布式计算 算法 调度
课3-详解隐私计算框架的架构和技术要点
隐语架构涵盖产品、算法、计算、资源和硬件五层,旨在实现互联互通和跨域管控。产品层包括SecretPad等,简化用户和集成商体验。算法层涉及PSI/PIR、SCQL和联邦学习,提供隐私保护的数据分析和学习。计算层如RayFed、SPU、HEU等,支持分布式计算和密态处理。资源层的KUSCIA用于跨机构任务编排,硬件层涉及FPGA等加速器。互联互通支持黑盒和白盒模式,确保不同平台协作。跨域管控则强调数据流转控制,保护数据权益。
|
28天前
|
设计模式 安全 Java
【分布式技术专题】「Tomcat技术专题」 探索Tomcat技术架构设计模式的奥秘(Server和Service组件原理分析)
【分布式技术专题】「Tomcat技术专题」 探索Tomcat技术架构设计模式的奥秘(Server和Service组件原理分析)
33 0
|
29天前
|
NoSQL Java Redis
【分布式技术专题】「分布式技术架构」手把手教你如何开发一个属于自己的分布式锁的功能组件(二)
【分布式技术专题】「分布式技术架构」手把手教你如何开发一个属于自己的分布式锁的功能组件
15 0
|
28天前
|
存储 监控 安全
金石推荐 | 【分布式技术专题】「单点登录技术架构」一文带领你好好认识以下Saml协议的运作机制和流程模式
金石推荐 | 【分布式技术专题】「单点登录技术架构」一文带领你好好认识以下Saml协议的运作机制和流程模式
64 1
|
28天前
|
存储 Java 应用服务中间件
【分布式技术专题】「架构实践于案例分析」盘点互联网应用服务中常用分布式事务(刚性事务和柔性事务)的原理和方案
【分布式技术专题】「架构实践于案例分析」盘点互联网应用服务中常用分布式事务(刚性事务和柔性事务)的原理和方案
52 0
|
28天前
|
canal 消息中间件 关系型数据库
【分布式技术专题】「分布式技术架构」MySQL数据同步到Elasticsearch之N种方案解析,实现高效数据同步
【分布式技术专题】「分布式技术架构」MySQL数据同步到Elasticsearch之N种方案解析,实现高效数据同步
79 0
|
1月前
|
Cloud Native 安全 网络安全
构建未来:云原生架构在企业数字化转型中的关键角色网络安全与信息安全:防御前线的关键技术
【2月更文挑战第30天】 随着数字转型的浪潮席卷各行各业,企业正寻求更加灵活、可扩展的解决方案以适应不断变化的市场需求。本文将深入探讨云原生架构如何成为支持这一转型的核心技术,分析其优势和挑战,并提出实施策略。云原生技术的采用不仅加速了开发过程,还提供了自动化运维、弹性伸缩等特性,为企业带来了前所未有的敏捷性和效率。然而,迁移至云原生架构也伴随着技术复杂性增加和安全风险的挑战。文章最后,我们将提供一系列最佳实践,帮助企业在采纳云原生技术的过程中规避风险,实现持续创新。 【2月更文挑战第30天】 在数字化时代,数据成为核心资产,而网络安全与信息安全则是维护这些资产不可或缺的屏障。本文深入探讨了
|
6天前
|
敏捷开发 监控 数据管理
构建高效微服务架构的五大关键策略
【4月更文挑战第20天】在当今软件开发领域,微服务架构已经成为一种流行的设计模式,它允许开发团队以灵活、可扩展的方式构建应用程序。本文将探讨构建高效微服务架构的五大关键策略,包括服务划分、通信机制、数据管理、安全性考虑以及监控与日志。这些策略对于确保系统的可靠性、可维护性和性能至关重要。