隐私计算实训营第七讲-隐语SCQL的架构详细拆解

隐私计算实训营第七讲-隐语SCQL的架构详细拆解

文章目录

  • 隐私计算实训营第七讲-隐语SCQL的架构详细拆解
    • 1.SCQL Overview
      • 1.1 多方数据分析场景
      • 1.2 多方数据分析技术路线
        • 1.2.1 TEE SQL方案
        • 1.2.2 MPC SQL方案
      • 1.3 Secure Collaborative Query Language(SCQL)
        • 1.3.1 SCQL 系统组件
        • 1.3.2 SCQL 关键特性
      • 1.4 SCQL应用场景
    • 2. SCQL CCL
      • 2.1 CCL有什么用?
      • 2.2 CCL是什么?
      • 2.3 CCL Example
    • 3.SCQL 架构
      • 3.1总体架构
      • 3.3执行流程

1.SCQL Overview

1.1 多方数据分析场景

在多方数据分析场景中,数据的分散性是一个显著的挑战。当数据集中存储在一个机构内时,分析任务相对简单,因为所有相关数据都处于同一个受控环境中。然而,随着数据隐私和安全意识的提高,以及数据保护法规的实施(如欧盟的GDPR),越来越多的场景下数据被存储在数据所有者的本地环境中,不同机构间的数据共享和分析变得复杂而困难。

在这里插入图片描述

1.2 多方数据分析技术路线

在这里插入图片描述
在涉及跨机构数据分析的场景中,保护数据隐私和安全是一个重要目标。针对这一需求,两种主要技术方案被提出:基于受信执行环境(TEE,如Intel SGX)的SQL(TEE SQL)方案,以及基于多方计算(MPC)的SQL(MPC SQL)方案。下面分别介绍这两种方案的优缺点:

1.2.1 TEE SQL方案

优点:

  • 高性能:TEE方案通常可以提供接近原生硬件性能的计算效率,因为它直接在CPU上执行,减少了额外的计算开销。
  • 易于部署:由于TEE是基于硬件的解决方案,它通常更易于在现有的硬件和软件架构上部署,无需复杂的网络配置或软件支持。
  • 强隔离性:TEE提供了强大的安全隔离,确保即使在操作系统或虚拟机管理器被攻破的情况下,数据和计算过程仍然安全。

缺点:

  • 可信硬件依赖:TEE方案高度依赖特定的硬件支持,这意味着其可用性和安全性取决于硬件供应商的技术和政策。
  • 安全漏洞风险:历史上TEE,尤其是Intel SGX,被发现有安全漏洞,这些漏洞可能被攻击者利用来破坏TEE的安全保障。
  • 有限的资源:TEE环境通常受限于较小的内存和存储空间,这可能限制其处理大规模数据集的能力。
1.2.2 MPC SQL方案

优点:

  • 无需可信硬件:MPC方案不依赖特定的硬件支持,因此具有更好的通用性和兼容性,可以在各种硬件和平台上实现。
  • 理论上的安全性:MPC提供了基于数学证明的安全保障,即使参与计算的一部分或多数方不可信,也能保证计算结果的正确性和数据的隐私。
  • 灵活性:MPC支持多种计算模型和复杂的数据分析任务,适用于不同的应用场景和需求。

缺点:

  • 性能开销:与直接在硬件上执行相比,MPC的计算过程涉及大量的加密和通信操作,这导致了较高的性能开销。
  • 复杂的协议设计:实现一个既安全又高效的MPC系统需要复杂的协议设计和优化,这增加了开发的难度和成本。
  • 网络依赖:MPC的效率在很大程度上依赖于参与方之间的网络连接质量,高延迟或低带宽的网络环境可能会显著降低性能。

总的来说,TEE SQL方案在性能和部署上具有优势,但依赖特定的硬件和面临安全漏洞的风险;而MPC SQL方案提供了强大的安全性和灵活性,但以牺牲计算效率和增加实现复杂度为代价。选择哪种方案取决于特定应用的安全需求、性能要求以及可用资源。

1.3 Secure Collaborative Query Language(SCQL)

在这里插入图片描述

1.3.1 SCQL 系统组件
  • SCDB:部署在可信第三方,负责将查询(query)翻译成密态执行图,然后下发给SCQLEngine。本身不参与计算,主要作用是查询预处理和协调。

  • SCQLEngine:部署在数据参与方,负责协同其他参与方一起完成执行图的计算。这是数据处理和计算的核心组件。

1.3.2 SCQL 关键特性
  • 半诚实安全模型:假设参与者不会主动破坏协议执行,但可能试图从过程中获取额外信息。SCQL设计以确保数据隐私,即使在半诚实假设下。

  • 支持多方(N>=2):允许两方或更多方参与者共同进行数据查询和分析,增加了系统的应用灵活性。

  • 易上手:提供MySQL兼容的SQL用户界面,使用户能够快速上手,无需学习新的查询语言。

  • 支持常用的SQL语法和算子:满足大部分数据查询和分析场景的需求,提高了系统的适用性和灵活性。

  • 可实用的性能:优化了数据处理和计算效率,确保在保护数据隐私的同时,也能提供可接受的性能。

  • 提供列级别的数据使用授权控制(CCL):增强了数据安全和隐私保护,允许精细控制数据访问权限。

  • 支持多种密态协议(SEMI2K/CHEETAH/ABY3):适应不同安全需求和计算环境,提供灵活的安全保护选项。

  • 内置支持多种数据源接入(MySQL, PostgreSQL, CSV等):提高了系统的兼容性和易用性,简化了数据导入和处理过程。

1.4 SCQL应用场景

在这里插入图片描述

2. SCQL CCL

2.1 CCL有什么用?

在这里插入图片描述

2.2 CCL是什么?

在这里插入图片描述

2.3 CCL Example

在这里插入图片描述

3.SCQL 架构

3.1总体架构

在这里插入图片描述

3.3执行流程

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/511332.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

css3之2D转换transform

2D转换transform 一.移动(translate)(中间用,隔开)二.旋转(rotate)(有单位deg)1.概念2.注意点3.转换中心点(transform-origin)(中间用空格)4.一些例子(css三角和旋转) 三…

SVM简介 详细推导 核函数 线性可分 非线性可分

注意:由于该文章由jupyter nbconvert导出,若单独执行代码可能出现变量找不到或者没有导入库的情况,正确的做法是将所有的代码片段按顺序放到一个.py文件里面或者按顺序放入一个.ipynb文件的多个代码块中。 SVM(Support Vector Machine) Vap…

第十五届蓝桥杯模拟考试I_物联网设计

反思: 本次模拟让我惊醒,写这个作品如同搭积木,在拼接的时候都要仔细检查这个积木是否出bug,确保没有问题再将其拼接到之前搭好的大模块之中,因为就是这样的题目我在处理过程中就遇到了BUG,原因竟出在输入模式要上拉&…

鸿蒙OS元服务开发:【(Stage模型)设置应用主窗口】

一、设置应用主窗口说明 在Stage模型下,应用主窗口由UIAbility创建并维护生命周期。在UIAbility的onWindowStageCreate回调中,通过WindowStage获取应用主窗口,即可对其进行属性设置等操作。还可以在应用配置文件中设置应用主窗口的属性&…

MegaSeg Pro for Mac v6.3.1 注册激活版 音视频DJ混音工具

MegaSeg Pro for Mac是一款专业的DJ和广播自动化软件,旨在为音乐专业人士提供强大的音乐播放和演播功能。这款软件具有多种功能,包括强大的音乐库管理,支持导入和组织大量音乐文件,可以轻松管理你的音乐收藏。它支持广泛的音频格式…

idea快速找到maven中冲突的依赖,解决依赖冲突

红色实线:冲突,红色虚线:依赖于同一个包的多版本 选择包,右键Excluede,排除 问题原因: 一个项目中需要jar包A和jar包B,而jar包A和jar包B都需要依赖jar包C,但A需要1.2.16版本的C,B需要1.2.17版本的C,这时候就可能会产…

vs2022断点找bug出错(打上100个断点)

初步分析:故障出自-具体功能模块 进一步分析:故障出自-该功能代码流程 进一步分析:从该功能起点-终点,一路打100个断点

电商技术揭秘五:电商平台的个性化营销与数据分析

文章目录 引言1. 个性化营销的概念与价值1.1 个性化营销的定义1.1.1 个性化营销的基本概念1.1.2 个性化营销在电商领域的重要性 1.2 个性化营销的核心价值1.2.1 提升用户体验1.2.2 增加转化率和客户忠诚度1.2.3 优化营销资源配置 2. 用户画像与行为分析2.1 用户画像的构建2.1.1…

【Linux】在生产环境中,Linux系统排查常用命令

问题排查 文章目录 问题排查top命令CPU:vmstatprocscpu内存:free硬盘:df硬盘IO:iostat网络IO:ifstat 生产环境服务器变慢,诊断思路和性能评估 top命令 查看整机系统新能 使用top命令的话,重点…

如何处理Flutter应用在iOS平台上的兼容性问题

本文探讨了使用Flutter开发的iOS应用能否上架,以及上架的具体流程。苹果提供了App Store作为正式上架渠道,同时也有TestFlight供开发者进行内测。合规并通过审核后,Flutter应用可以顺利上架。但上架过程可能存在一些挑战,因此可能…

使用TCP协议就一定零丢包了吗?

简述数据包发送流程 为了简化模型,我们把中间的服务器给省略掉,假设这是个端到端的通信。且为了保证消息的可靠性,它们之间用的是TCP协议进行通信。 为了发送数据包,两端首先会通过三次握手,建立TCP连接。 一个数据包&…

django-haystack,具有全文搜索功能的 Python 库!

目录 前言 安装与配置 全文搜索基础 搜索引擎配置 索引配置 搜索视图与模板 过滤器与排序 自定义搜索逻辑 应用场景 1. 电子商务网站的商品搜索 2. 新闻网站的文章搜索 3. 社交网站的用户搜索 4.企业内部系统的文档搜索 总结 前言 大家好,今天为大家分享…

零基础入门多媒体音频(7)-AAOS audio

概览 Android Automotive OS (AAOS) 是基于核心的 Android 音频堆栈打造,以支持用作车辆信息娱乐系统。AAOS 负责实现信息娱乐声音(即媒体、导航和通讯),但不直接负责具有严格可用性和时间要求的铃声和警告。 虽然 AAOS 提供了信号…

python爬虫+django新闻推荐系统可视化分析

1. 安装python3.7.0 2. 更新pip 控制台执行 python -m pip install -U pip 3. 安装依赖库 pip install -r requirements.txt 4. 更改mysql数据库配置 修改newsServer/settings.py中的数据库连接配置,比如修改下方PASSWORD密码为本机mysql密码&#xff1…

GPT 模型解析:ChatGPT 如何在语言处理领域引领潮流?

人工智能时代来临 我们正处于AI的iPhone时刻。——黄仁勋(英伟达CEO) ChatGPT 好得有点可怕了,我们距离危险的强人工智能不远了。——马斯克(Tesla/SpaceX/Twitter CEO) 以上的内容说明我们现在正处于一个技术大翻牌的…

Git分支提交时自动大写 fatal: the remote end hung up unexpectedly

先说结论: 进入 .git/refs/heads目录,会看到Feature文件夹,重命名为feature即可。 表现: 通过终端命令创建的分支 git checkout -b feature/name 使用git push后自动变成了Feature/name 并且有时候在本地创建feature/1234567…

视频基础学习四——视频编码基础一(冗余信息)

文章目录 前言一、编码压缩的原理1.空间冗余帧内预测 2.时间冗余帧间预测运动估计运动补偿 3.编码冗余4.视觉冗余 二、压缩编码的流程1.编码器2.编解码流程 总结 前言 上一篇文章介绍了视频帧率、码率、与分辨率。也介绍了为什么需要对视频进行压缩,因为720P、rgb2…

吴恩达深度学习笔记:深层神经网络(Deep Neural Networks)4.1-4.4

目录 第一门课:神经网络和深度学习 (Neural Networks and Deep Learning)第四周:深层神经网络(Deep Neural Networks)4.1 深层神经网络(Deep L-layer neural network) 第一门课:神经网络和深度学习 (Neural Networks a…

在CentOS 7上安装Python 3.7.7

文章目录 一、实战步骤1. 安装编译工具2. 下载Python 3.7.7安装包3. 上传Python 3.7.7安装包4. 解压缩安装包5. 切换目录并编译安装6. 配置Python环境变量7. 使配置生效8. 验证安装是否成功 二、实战总结 一、实战步骤 1. 安装编译工具 在终端中执行以下命令 yum -y groupin…

【热门话题】WebKit架构简介

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 WebKit架构简介一、引言二、WebKit概览1. 起源与发展2. 模块化设计 三、WebCore…