隐私计算-7-隐语SCQL的架构详细拆解

日向远 2024-04-03 23:02:44

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架构

  • SCQL工作流程

    1. 发起DQL(数据查询语言)。
    2. 下发密态执行图至SCQLEngine。
    3. 从数据源读取数据。
    4. 执行MPC(多方计算)协议。
    5. 上报执行结果。
    6. 返回执行结果。
  • 执行图示例:展示了如何在不同数据状态下,根据CCL设置选择最佳执行协议,如Private groupby、HESum groupby、Oblivious groupby、Vertical groupby等。

课程总结

操顺德 | 蚂蚁集团隐私计算技术专家
视频地址pdf地址
CCL起到了挺关键的作用

...全文
21 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

292

社区成员

发帖
与我相关
我的任务
社区描述
隐语开源社区,隐私计算开发者交流和讨论的平台。
密码学可信计算技术安全 企业社区
社区管理员
  • 隐语SecretFlow
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

【最新活动】

3月18日:隐私计算实训营第一期

试试用AI创作助手写篇文章吧