【隐私计算实训营007——隐语SCQL的架构详细拆解】

1.SCQL Overview

SCQL属于隐私保护的BI。

1.1 对于安全聚合查询语言的两种常见的技术方案

1.2 SCQL系统组件

  • SCDB
    • 部署在可信第三方,负责将query翻译成密态执行图,下发给SCQLEngine,本身不参与计算
  • SCQLEngine
    • 部署在数据参与方 ,负责协同其他参与方一起完成之星途的计算。

1.3 SCQL的特点

  • 基于半诚实安全模型
  • 支持多方(N>=2)
  • 易上手,提供 MySQL 兼容的 SQL 方言用户界面
  • 支持常用的 SQL 语法和算子,满足大部分场景的需求
  • 可实用的性能
  • 提供列级别的数据使用授权控制 (CCL)
  • 支持多种密态协议(SEMI2K/CHEETAH/ABY3)
  • 内置支持多种数据源接入(MySQL,Postgres,CSV 等)

1.4 SCQL应用场景

2.SCQL CLL

CCL全程是Column Control List

是一个三元组<src_column,dest_party,constraint>

数据拥有方允许某列数据(src_column)被某个参与方(dest _party) 以满足某种约束条件下进行访问

满足CCL的语句不等于安全

  • 不满足CCL约束一定不安全
  • 满足CCL约束不一定安全

从完全的人工检查------预先定义一些规则来排除一部分不合规的SQL,减轻审核人员的压力。

2.1 常见的CCL中的constraint

  • PLAINTEXT
    • 允许以任何形式进行披露,通常用于非敏感数据,谨慎使用。
  • PLAINTEXT_AFTER_JOIN
    • 作为 INNERJOIN 的 key,经过JOIN 后可以明文披露。
  • PLAINTEXT_AFTER_GROUP BY
    • 作为GROUP BY的分组列,在分组后可以明文披露。
  • PLAINTEXT_AFTER_AGGREGATE
    • 被约束的列经过聚合操作(如: SUM、AVG、MIN、MAX、COUNT) 后的结果可以明文披露
  • PLAINTEXT_AFTER_COMPARE
    • 被约束的列经过比较操作 (如: <,>,>=,=,!= 等等)后的结果可以明文披露。
  • ENCRYPTED_ONLY
    • 始终以密态的形式参与计算,不允许任何形式的披露,除了 COUNT外 (SCOL 不保护计算中
      间结果的size)。

3. SCQL架构

3.1 SCQL的工作流

相关推荐
时序数据说1 小时前
国内时序数据库概览
大数据·数据库·物联网·时序数据库·iotdb
阿Paul果奶ooo4 小时前
Flink中基于时间的合流--双流联结(join)
大数据·flink
数据爬坡ing4 小时前
过程设计工具深度解析-软件工程之详细设计(补充篇)
大数据·数据结构·算法·apache·软件工程·软件构建·设计语言
计算机源码社6 小时前
分享一个基于Hadoop的二手房销售签约数据分析与可视化系统,基于Python可视化的二手房销售数据分析平台
大数据·hadoop·python·数据分析·毕业设计项目·毕业设计源码·计算机毕设选题
Direction_Wind7 小时前
Flinksql bug: Heartbeat of TaskManager with id container_XXX timed out.
大数据·flink·bug
计算机毕设残哥7 小时前
完整技术栈分享:基于Hadoop+Spark的在线教育投融资大数据可视化分析系统
大数据·hadoop·python·信息可视化·spark·计算机毕设·计算机毕业设计
轻流AI9 小时前
线索转化率翻3倍?AI重构CRM
大数据·人工智能·低代码·重构
Kay_Liang10 小时前
从聚合到透视:SQL 窗口函数的系统解读
大数据·数据库·sql·mysql·数据分析·窗口函数
武子康11 小时前
大数据-69 Kafka 存储结构解析:日志文件与索引文件的内部机制
大数据·后端·kafka
萤丰信息18 小时前
智慧工地从工具叠加到全要素重构的核心引擎
java·大数据·人工智能·重构·智慧城市·智慧工地