SCQL概述
- SCQL定义:Secure Collaborative Query Language,是一种安全协作查询语言,用于在多方数据分析场景中实现数据隐私保护。
- 隐语架构:SCQL是隐语架构中的一部分,隐语架构包括硬件层、资源层、计算层、算法层和产品层,提供全栈的隐私计算解决方案。
- SCQL系统组件:
- SCDB:部署在可信第三方,负责将查询转换成密态执行图,下发给SCQLEngine。
- SCQLEngine:部署在数据参与方,协同其他参与方完成执行图的计算。
SCQL关键特性
- 半诚实安全模型:假设参与方可能会尝试获取其他参与方的数据,但不会主动破坏系统或协议。
- 多方支持:SCQL支持多个参与方(N>=2)进行协作。
- 易上手:提供MySQL兼容的SQL语言用户界面。
- 常用SQL语法和算子支持:满足大部分场景的需求。
- 列级别数据使用授权控制(CCL):通过CCL描述每列数据的使用约束。
- 多种密态协议支持:如SEMI2K、CHEETAH、ABY3等。
- 多种数据源接入:支持MySQL、Postgres、CSV等数据源。
SCQL应用场景
- 医疗数据研究:分析多家医院的医疗数据进行医学研究。
- 联合精准营销:金融机构与电商平台联合分析用户画像进行精准营销。
- 智能保险理赔:保险机构接入医疗机构数据提升理赔体验和核赔效率。
SCQL CCL
- CCL定义:Column Control List,是一种约束机制,用于描述数据在使用过程中的约束条件。
- CCL描述:三元组< src_column, dest_party, constraint >,定义了数据拥有者允许某列数据在满足约束条件下被访问。
- CCL示例:
<salary, Bob, PLAINTEXT_AFTER_AGGREGATE>
:Bob可以在聚合操作后明文访问salary列。<id, Alice, PLAINTEXT_AFTER_JOIN>
:Alice可以在JOIN操作后明文访问id列。
SCQL架构
课程总结
操顺德 | 蚂蚁集团隐私计算技术专家
视频地址,pdf地址
CCL起到了挺关键的作用