隐私计算实训营学习三:隐私计算框架的架构和技术要点

news2024/9/30 15:22:46

文章目录

  • 一、隐语架构
  • 二、产品层
  • 三、算法层
    • 3.1 PSI与PIR
    • 3.2 Data Analysis-SCQL
    • 3.3 Federated Learning
  • 四、计算层
    • 4.1 混合调度编译-RayFed
    • 4.2 密态引擎
    • 4.3 密码原语YACL
  • 五、资源管理层
  • 六、互联互通
  • 七、跨域管控

一、隐语架构

1、完备性:支持多种技术,同态加密、多方安全计算、可信执行环境、差分隐私等。
2、透明性: 每层内部高内聚,层与层之间低耦合。
3、开放性:通过联合分层设计不同专业人员在自己层内充分发挥自己的优势
在这里插入图片描述

二、产品层

产品定位: 通过可视化产品,降低终端用户的体验和演示成本;通过模块化API降低技术集成商的研发成本。
人群画像: 隐私保护计算从业者、隐私保护计算需求方、隐私保护计算集成商、开发人员…
在这里插入图片描述

三、算法层

3.1 PSI与PIR

PSI与PIR定位: 提供高性能、轻量化、易用的PSI/PIR专用协议模块。
人群画像: PSI/PIR产品人员、PSI/PIR需求人员、PSI/PIR研发人员。

PSI隐私求交(Private Set Intesection):一种特殊的安全多方计算(MPC)协议,Alice持有集合 X,Bob持有集合Y,Alice和Bob通过执行PSI协议,得到交集结果X ∩ Y,除交集外不会泄漏交集外的其它信息。
特点:

  • 支持各类协议:半诚实模型、恶意模型、两方、多方等。
  • 性能、协议优化。
  • 提供多层入口:若为白屏用户可直接使用产品、若为开发人员可通过Python的SecretFlow或库进行集成。

PIR匿踪查询(Private Information Retrieval):用户查询服务端数据库中的数据,但服务端不知道用户查询的是哪些数据。
特点:

  • 支持各类协议:Sealed PIR、Label PIR、Spiral PIR、Simple PIR。
  • 性能、协议优化。
  • 提供多层入口:若为白屏用户可直接使用产品、若为开发人员可通过Python的SecretFlow或库进行集成。

3.2 Data Analysis-SCQL

Data Analysis-SCQL(Secure Collaborative Query Language)数据分析:一种多方安全数据分析系统,可以让互不信任的参与方在保护自己数据隐私的前提下,完成多方数据分析任务。
Data Analysis-SCQL定位: 屏蔽底层安全计算协议的复杂性,以简单熟悉的 SQL 语言界面,提供多方数据密态分析能力。
人群画像: 数据分析集成商、数据分析产品人员、数据分析需求人员、数据分析研发人员。
特点:

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

3.3 Federated Learning

Federated Learning联邦学习:在原始数据不出域的前提下,通过交换中间数据完成机器学习建模。包含水平联邦和垂直联邦(主要是拆分学习,Split Learning)。
Federated Learning定位: 具备安全攻防保障的明密文混合机器学习框架和算法。
人群画像: 深度学习需求方、深度学习产品人员、安全AI研究人员。
特点:

  • 安全攻防:安全风险度量体系、攻防框架、攻防算法。
  • 性能:稀疏化、量化、流水线。
  • 算法:营销算法(DeepFM、BST、MMoE)、SOTA安全聚合、大模型(计划)。

四、计算层

4.1 混合调度编译-RayFed

混合调度编译-RayFed:在Ray基础之上所构建的专注于跨机构的分布式计算调度框架。
RayFed定位: 面向跨机构场景,提供单机构内计算任务独立调度和跨机构计算任务协作的能力。
人群画像: 隐语工程开发人员、隐语算法开发人员。
https://github.com/ray-project/rayfed

4.2 密态引擎

SPU(Secure Process Unit)安全处理单元:桥接上层算法和底层安全协议,保持原生AI框架体验的同时为用户提供透明的、高性能的、基于安全协议的密态计算能力。
人群画像: 机器学习研发人员、密码协议研发人员、编译器研发人员。
SPU架构: 前端以JAX为主、Tensorflow与PyTorch也支持;中间层为编译器,将前端语言编译为XLA,再将XLA编译为机器学习的中间语言;下层为Runtime,主要为MPC的各种协议Semi2k、ABY3、Cheetah。

4.3 密码原语YACL

密码原语YACL:多种隐私计算技术路线共同需要的密码库,具备安全实现保证、高性能等特点。
人群画像: 安全/密码研究人员。
特点:

  • 性能:核心原语高性能保障、详细的benchmarking。
  • 安全性:安全逻辑“链。
  • 易用性:对密码协议开发者有良好的接口抽象、注释 = 文档。

五、资源管理层

基于 K8s 的隐私计算任务编排框架kuscia(KUbernetes based Secure Collaborative InfrA):屏蔽不同机构间基础设施的差异,为跨机构协作提供丰富且可靠的资源管理和任务调度能力。
人群画像: 隐私保护计算集成商、运维开发人员。
kuscia核心分为两块: Master(控制平面)与Lite(节点)。
在这里插入图片描述

六、互联互通

互联互通:隐语和其它厂商的平台可以互联互通,共同完成一个隐私计算任务。
人群画像: 互联互通需求方、算法研发人员、平台研发人员、隐私保护计算集成商。
互联互通分为白盒模式与黑盒模式:

  • 黑盒模式(管理调度互联): 管理面、控制面实现互联互通,两边加载相同的算法容器。例如两个机构任务管理调度不一样,但都使用隐语。
  • 白盒模式(基于开放算法协议的互联): 算法引擎层面可以直接互联,两边算法容器可能是不一样的实现。
    在这里插入图片描述

七、跨域管控

跨域管控:数据离开持有者的运维域后,数据方仍然能够有效地控制数据的流转过程,避免其被窃取或者非预期使用。
人群画像: 隐私保护计算需求方、监管方、运维人员。
核心(三权分置):数据要素“三权”在数据流转过程中诞生与流转,数据要素“三权”权益的机制保障核心是数据加工使用权跨域管控。
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

谷粒商城 - 前端基础

1.前端技术栈 2.ES6 2.1简介 2.2 let 与 const <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Doc…

yolov8目标检测数据集制作——make sense

背景 在前几天我进行了录制视频以准备足够多的数据集&#xff0c;同时使用利用python自定义间隔帧数获取视频转存为图片&#xff0c;所以今天我准备对我要训练的数据集进行标注。我要做的是一个基于yolo的检测项目&#xff0c;在搜索资料后得知大家多是用labelme或者make sens…

Redis如何删除大key

参考阿里云Redis规范 查找大key&#xff1a; redis-cli --bigkeys 1、String类型&#xff1a; Redis 4.0及以后版本提供了UNLINK命令&#xff0c;该命令与DEL命令类似&#xff0c;但它会在后台异步删除key&#xff0c;不会阻塞当前客户端&#xff0c;也不会阻塞Redis服务器的…

K8S--SpringCloud应用整合Nacos实战

原文网址&#xff1a;K8S--SpringCloud应用整合Nacos实战-CSDN博客 简介 本文介绍K8S部署SpringCloud应用整合Nacos实战。 本文是将原来的SpringCloud项目&#xff08;闪速优选&#xff09;迁移到K8S上&#xff0c;一行代码都不需要改动。用K8S运行Nacos、Gateway、SpringCl…

音乐制作利器FL Studio21.2.2中文版编曲软件助你成为音乐大师!

FL Studio 21.2.2中文版是一款功能强大的音乐制作软件&#xff0c;也被称为“水果编曲”。它为用户提供了全面的音乐制作工具和功能&#xff0c;支持多轨道音频录制、音序处理、混音和音频编辑等&#xff0c;帮助用户实现高质量的音乐制作。 此外&#xff0c;FL Studio 21.2.2…

Java基础-常用类

文章目录 1.Math类2.System类1.exit代码 结果2.arraycopy参数解释代码结果 3.currentTimeMillens代码结果 3.大数处理方案基本介绍BigInteger类介绍代码结果 BigDecimal类介绍代码结果 4.日期类对于IDEA类图中的属性![image-20240101190844530](https://img-blog.csdnimg.cn/im…

学习 考证 帆软 FCP-FineBI V6.0 考试经验

学习背景&#xff1a; 自2024年1月起&#xff0c;大部分时间就在家里度过了&#xff0c;想着还是需要充实一下自己&#xff0c;我是一个充满热情的个体。由于之前公司也和帆软结缘&#xff0c;无论是 Fine-Report 和 Fine-BI 都有接触3年之久&#xff0c;但是主要做为管理者并…

使用Python进行自动化测试Selenium与PyTest的结合【第150篇—自动化测试】

&#x1f47d;发现宝藏 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。【点击进入巨牛的人工智能学习网站】。 使用Python进行自动化测试&#xff1a;Selenium与PyTest的结合 在软件开发中&#xff0c;自…

Linux 常用命令 1

Tips&#xff1a;终端热键ctrl shift 放大终端窗口的字体 ctrl - 缩小终端窗口的字体 注意区分大小写 查阅命令帮助信息&#xff1a; 1&#xff09;--help command –help(两个减号) 显示command命令的帮助信息 2&#xff09;man man command 查阅command命令的使…

java数据结构与算法刷题-----LeetCode75. 颜色分类

java数据结构与算法刷题目录&#xff08;剑指Offer、LeetCode、ACM&#xff09;-----主目录-----持续更新(进不去说明我没写完)&#xff1a;https://blog.csdn.net/grd_java/article/details/123063846 文章目录 1. 双指针两次遍历2. 三指针 1. 双指针两次遍历 解题思路&#…

linux下线程分离属性

linux下线程分离属性 一、线程的属性---分离属性二、线程属性设置2.1 线程创建前设置分离属性2.2 线程创建后设置分离属性 一、线程的属性—分离属性 什么是分离属性&#xff1f; 首先分离属性是线程的一个属性&#xff0c;有了分离属性的线程&#xff0c;不需要别的线程去接合…

YOLOv8 | 网络结构 | 详细讲解YOLOv8的网络结构

⭐欢迎大家订阅我的专栏一起学习⭐ 🚀🚀🚀订阅专栏,更新及时查看不迷路🚀🚀🚀 YOLOv5涨点专栏:http://t.csdnimg.cn/70xZa YOLOv8涨点专栏:http://t.csdnimg.cn/Cb89a YOLOv7专栏:http://t.csdnimg.cn/HaTdn 💡魔改网络、复现论文、优化创新💡 …

风靡全球的WEB3街头时尚品牌Hape正式启动2024年回到街头系列活动

什么是「街头」 是永不畏惧的竞技精神 是肆意生长的野性力量 是色彩绮丽的感官世界 3月23日&#xff01; 跟随Hape的节奏&#xff0c;领略最原始纯粹的街头文化&#xff0c;在Yolo Block找到属于你的街头时尚 「回到街头」活动信息 时间 3月23日 - 4月14日 地点 福建省…

【数据结构初阶】之堆(C语言实现)

数据结构初阶之堆&#xff08;C语言实现&#xff09; &#x1f30f; 堆的概念&#x1f30f; 堆的模拟实现&#x1f413; 堆的结构和方法接口&#x1f413; 堆的方法的模拟实现&#x1f64a; 堆的初始化&#x1f64a; 堆的构建&#x1f64a; 堆的插入&#x1f64a; 向上调整&…

仿牛客社区项目所有PPT图片

文章目录 第1章 初识Spring Boot&#xff0c;开发社区首页1.1 课程介绍1.1.1 课程目标1.1.2 技术架构1.1.3 开发环境 1.2 搭建开发环境1.2.1 Apache Maven1.2.2 Intellij IDEA1.2.3 Spring Initializer1.2.4 SpringBoot 入门示例 1.3 Spring入门1.3.1 SpringBoot 全家桶1.3.2 S…

RecyclerView notifyItemRemoved 之后的源码分析

源码版本&#xff1a;androidx1.3.2 分析场景&#xff1a; RecyclerView使用线性布局&#xff0c;方向为竖直方向&#xff0c;布局从上到下&#xff0c;宽高都是 MATCH_PARENT。开始有3条数据。然后移除 position 1 的数据。 流程图 先说下结论&#xff1a; 在 dispatchL…

MySQL | 用户管理

目前为止&#xff0c;我们一直使用的是root权限写的SQL语句。但如果我们只能用root&#xff0c;这样存在安全隐患。而MySQL是给我们提供了用户管理的&#xff0c;可以创建用户&#xff0c;提供权限&#xff0c;收回权限。 1. 用户 MySQL中的用户&#xff0c;都存储在系统数据库…

软件测试教程 性能测试概论

文章目录 1. 性能测试实施的流程1.1 常见的性能问题1.2 性能测试是什么&#xff1f;1.3 性能测试和功能测试之间的区别1.4 什么样的系统/软件表现属于性能好&#xff0c;什么样的软件性能表现属于性能不好1.5 为什么要进行性能测试1.6 性能测试实施的流程1.7 常见的性能指标以及…

基于ssm汽车养护管理系统论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本汽车养护管理系统就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数据信息…

ASP .Net Core 配置集合 IConfiguration 的使用

&#x1f433;简介 IConfiguration 是 ASP.NET Core 中的一个接口&#xff0c;用于表示配置集合。以下是关于 IConfiguration 的详细介绍&#xff1a; 作用&#xff1a;IConfiguration 允许开发人员从各种来源&#xff08;如文件、环境变量、命令行参数等&#xff09;读取应用…