一、隐语架构概览
隐语分层架构设计,可以支持不同的技术路线,同时使得层内高内聚,层间低耦合,增强了开放性,不同技术路线的研究人员都可以在对应的层发挥自己的优势。
二、隐语架构拆解
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协议, 适配多种场景
• 支持协议扩展
• 多种数据并行, 指令并行优化