一、隐语架构概览
隐语分层架构设计,可以支持不同的技术路线,同时使得层内高内聚,层间低耦合,增强了开放性,不同技术路线的研究人员都可以在对应的层发挥自己的优势。
二、隐语架构拆解
1、产品层
- SecretPad:轻量化安装, 可以快速体验隐语的功能
- 多部署形态:目前有中心模式,之后会发行P2P模式
- 全栈产品:支持MPC,TEE,SCQL等
- SecretNote:Notebook形式,可以跟踪运行状态,进行交互式建模,以及多节点的管理和交互
2、算法层——高性能,易用的协议模块
- PSI:一种特殊的MPC协议,求两方数据的交集,除此之外不泄露其他信息
- 丰富的协议:半诚实模型(两方/多方);恶意模型
- 性能和协议优化
- 多层入口:白屏用户/开发人员
- PIR:用户查询服务端数据库中的数据,但服务端不知道用户查询的是哪些数据
- 丰富的协议:Sealed PIR;Label PIR...
- 性能和协议优化
- 多层入口:白屏用户/开发人员
- Data Analysis——SCQL
- 多方安全数据分析系统,可以使互不信任的参与方在保护自己数据隐私的前提下,完成多方数据分析任务
- 屏蔽了底层协议
- 核心特性
- 半诚实安全模型
- 支持≥2的参与方
- 兼容MySQL,支持常用的SQL语法和算子
- 数据使用授权管控
- 支持多种密态协议
- 联邦学习
- 在原始数据不出域的前提下,交换中间数据完成机器学习建模
- 包含水平联邦和垂直联邦(主要是拆分学习,Split Learning)
- 具备安全攻防保障的明密文混合的机器学习算法和框架
- 安全风险度量体系
- 攻防框架
- 攻防算法
- 性能优化
- 包含常见算法
3、计算层
- 混合编译调度-RayFed
- 在Ray基础之上所构建的专注于跨机构的分布式计算调度框架
- 面向跨机构场景
- 密态引擎-SPU(Secure Process Unit)
- 隐语密态计算核心模块之一
- 桥接上层算法和底层安全协议
- 为用户提供透明的, 高性能的, 基于安全协议的密态计算能力
- 面向机器学习研发人员, 密码协议研发人员, 编译器研发人员
- 核心特性
- 对接主流AI前端
- 支持多种机器学习算法
- 高性能MPC协议虚拟机
- 有丰富的MPC协议, 适配多种场景
- 支持协议扩展
- 多种数据并行, 指令并行优化
- HEU
- TEEU-可信执行环境单元
支持多种可信执行环境的, 具备数据使用跨域管控能力的密态计算枢纽,可执行数据分析, 机器学习, MPC/FL加速等功能
- 密码原语-YACL
- 多种隐私计算技术路线共同需要的密码库, 具备安全实现保证, 性能高等特点
- 现状:
4、资源层-KUSCIA
- 屏蔽不同机构之间基础设施的差异,为跨机构协作提供丰富可靠的资源管理和任务调度能力
- 可以运行多种框架
- KUSCIA架构
5、互联互通
- 使隐语和其他厂商互联互通, 共同完成隐私计算任务
- 模式: 黑盒模式, 白盒模式
6、跨域管控
- 数据离开持有者的运维域后, 数据方仍然能够有效的控制数据的流转过程, 避免被窃取或者非预期使用
- 三权分置