赞
踩
SCQL:属于隐私计算BI范畴,允许多个互不信任参与方在不泄露各自隐私数据的条件下进行联合数据分析。
如下数据在不同机构,同时又要保护原始数据不泄露,需要使用多方数据分析技术,目前主要有两种技术路线:
1、基于可信执行环境TEE SQL: 数据需要出域,数据方首先将数据加密上传到可信执行环境里,可信执行环境能够保证数据安全,在可信执行环境进行计算。
优点:效率高。
缺点:数据要出域,信任根在硬件提供商。
2、多方安全计算MPC SQL: 数据不需要出域,数据拥有方需要部署计算节点,通过MPC协议进行计算。
优点:数据不出域。
缺点:性能较低,规模受限。
SCQL(Secure Collaborative Query Language):是MPC SCQL的一个解决方案,系统组件主要有SCDB与SCQLEngine。
SCDB: 部署在可信第三⽅,负责将 query 翻译成密态执⾏图,下发给 SCQLEngine,本身不参与计算。
SCQLEngine: 部署在数据参与⽅,负责协同其他参与⽅⼀起完成执⾏图的计算。
SCQL特性:
半诚实安全模型。
⽀持多⽅(N>=2)。
易上⼿,提供 MySQL 兼容的 SQL ⽅⾔⽤户界⾯。
⽀持常⽤的 SQL 语法和算⼦,满⾜⼤部分场景的需求。
可实⽤的性能。
提供列级别的数据使⽤授权控制(CCL)。
⽀持多种密态协议(SEMI2K/CHEETAH/ABY3)。
内置⽀持多种数据源接⼊(MySQL,Postgres, CSV 等)。
应用场景: 适用于任何多方数据分析场景。
当前业内基于多方数据分析的安全保障模型审核强度大、周期长、效率低;因此提出CCL的多方数据分析安全保障模型,数据拥有方首先设置数据如何被使用的限制,若未通过CCL检查则直接被拒绝,若通过再由审核员确认,减轻审核员负担。
CCL(Column Control List): CCL 是一种约束机制,使得数据拥有者可以使用CCL描述每列数据在使用过程中的约束,数据分析引擎确保所有执行过程严格满足约束条件。他是一个三元组<src_column, dest_party, constraint>
,数据拥有方允许某列数据(src_column)被某个参与方(dest_party)以满足某种约束条件下进行访问。 不满足CCL约束一定不安全,满足CCL约束不一定安全。
例如:Alice对Bob的约束为,Alice table A的salary字段对Bob的权限必须经过聚合操作(sum/avg/min/max)后才能对Bob可见。
目前CCL定义的六种约束:
SCQL架构:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。