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

文章目录

  • 一、隐语架构
  • 二、产品层
  • 三、算法层
    • 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.mzph.cn/news/766961.shtml

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

相关文章

docker构建镜像时可能会用到的自启动命令

在 Linux 中,各种服务的自启动命令可以通过 systemd 来管理。当你将服务部署到 Docker 中时,可以通过在 Dockerfile 或 Docker Compose 文件中设置相应的命令来实现这些服务在容器启动时自动启动。以下是一些常见的 Linux 服务的自启动命令和在 Docker 中…

基于Springboot的牙科就诊管理系统(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的牙科就诊管理系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构&#xff0c…

RocketMq 顺序消费、分区消息、延迟发送消息、Topic、tag分类 实战 (消费者) (三)

消费端配置 如下所示:是消费者的配置类,有以下几点需要注意的地方 1、是TargetMessageListener这个监听类(下文会把这个监听类的具体代码贴出来),需要把这个监听类订阅。 2、rocketMqDcProperties.getTargetProperties…

蓝桥杯day9刷题日记

P8649 [蓝桥杯 2017 省 B] k 倍区间 思路&#xff1a;前缀和的题&#xff0c;对k取余相同的数就可以得到k的倍数 #include <iostream> #include <string> using namespace std; long long ans; int n,k; long long q[100010]; long long sum[100010];int main() …

Redis 教程系列之Redis 安全(六)

我们可以通过 redis 的配置文件设置密码参数&#xff0c;这样客户端连接到 redis 服务就需要密码验证&#xff0c;这样可以让你的 redis 服务更安全。 实例 我们可以通过以下命令查看是否设置了密码验证&#xff1a; 127.0.0.1:6379> CONFIG get requirepass 1) "re…

小程序返回webview h5 不刷新问题

我的场景&#xff1a;a、小程序首页-》b、webview h5活动列表-》c、小程序活动详情 c返回b b无法刷新 网上说了好多办法试过了都不行 求解啊 比如 1、先清空URL在赋值 <web-view wx:if"{{url}}" src"{{url}}" bindmessage"onMessage"&g…

【机器学习】k近邻(k-nearest neighbor )算法

文章目录 0. 前言1. 算法原理1.1 距离度量1.2 参数k的选择 2. 优缺点及适用场景3. 改进和扩展4. 案例5. 总结 0. 前言 k近邻&#xff08;k-nearest neighbors&#xff0c;KNN&#xff09;算法是一种基本的监督学习算法&#xff0c;用于分类和回归问题。k值的选择、距离度量及分…

Linux中Oracle数据库启动顺序

首先使用oracle用户登录Linux&#xff0c;用lsnrctl status查看监听状态 1、&#xff1a;进入sqlplus $ sqlplus /nolog SQL> 2&#xff1a;使用sysdab角色登录sqlplus SQL> conn /as sysdba 3&#xff1a;启动数据库 SQL> startup 4&#xff1a;打开Oracle监听 …

微信小程序 - picker-viewer实现省市选择器

简介 本文会基于微信小程序picker viewer组件实现省市选择器的功能。 实现效果 实现代码 布局 <picker-view value"{{value}}" bindchange"bindChange" indicator-style"height: 50px;" style"width: 100%; height: 300px;" &…

OCR研究背景及相关论文分享

光学字符识别&#xff08;Optical Character Recognition&#xff0c;OCR&#xff09;是指使用光学方法将图像中的文字转换为机器可编辑的文本的技术。OCR技术的研究和应用已有数十年的历史&#xff0c;其背景和发展受到多方面因素的影响。 技术需求背景 1.自动化文档处理&am…

【数据分享】2012-2023年全球范围逐年NPP/VIIRS夜间灯光数据

夜间灯光数据是我们在各项研究中经常使用的数据&#xff01;本次我们给大家分享的是2012-2023年全球范围的逐年的NPP/VIIRS夜间灯光数据&#xff0c;数据格式为栅格格式(.tif)。该数据来自于NCEI国家环境信息中心&#xff0c;近期该网站更新了2023年的夜间灯光数据&#xff0c;…

安卓开发button控件的使用

在 Android 开发中&#xff0c;Button 控件用于创建用户可点击的按钮。以下是使用 Button 控件的一般步骤&#xff1a; 1. 在布局文件中添加 Button&#xff1a;打开你的布局文件&#xff08;例如 activity_main.xml&#xff09;&#xff0c;将 Button 控件添加到布局中。可以使…

电脑如何关闭自启动应用?cmd一招解决问题

很多小伙伴说电脑刚开机就卡的和定格动画似的&#xff0c;cmd一招解决问题&#xff1a; CtrlR打开cmd,输入&#xff1a;msconfig 进入到这个界面&#xff1a; 点击启动&#xff1a; 打开任务管理器&#xff0c;禁用不要的自启动应用就ok了

Linux——进程间通信管道

&#x1f4d8;北尘_&#xff1a;个人主页 &#x1f30e;个人专栏:《Linux操作系统》《经典算法试题 》《C》 《数据结构与算法》 ☀️走在路上&#xff0c;不忘来时的初心 文章目录 一、进程间通信1、进程间通信的目的2、进程间通信发展3、进程间通信分类 二、管道1、什么是管…

tcp 协议详解

什么是 TCP 协议 TCP全称为 “传输控制协议(Transmission Control Protocol”). 人如其名, 要对数据的传输进行一个详细的控制。TCP 是一个传输层的协议。 如下图&#xff1a; 我们接下来在讲解 TCP/IP 协议栈的下三层时都会先解决这两个问题&#xff1a; 报头与有效载荷如何…

【Linux】线程控制{fork() / vfork / clone/pthread_join()/pthread_cancel()}

文章目录 1.fork() / vfork / clone2.线程等待2.1pthread_join()2.2pthread_tryjoin_np() 3.pthread_exit()4.pthread_cancel()5.一些线程相关的问题6.pthread_detach()7.pthread_self()8.认识线程标识符&#xff1a;pthread_self()获取线程标识符9.POSIX线程库 1.fork() / vfo…

【CVPR2024】CricaVPR

【CVPR2024】CricaVPR: Cross-image Correlation-aware Representation Learning for Visual Place Recognition 这个论文提出了一种具有跨图像相关性的鲁棒全局表示方法用于视觉位置识别&#xff08;VPR&#xff0c;Visual Place Recognition &#xff09;任务&#xff0c;命…

MySQL学习笔记------SQL(1)

关系型数据库&#xff08;RDBMS&#xff09; 建立在关系模型基础上&#xff0c;由多张相互连接的二维表组成的数据库 特点&#xff1a;使用表储存数据&#xff0c;格式统一&#xff0c;便于维护 使用SQL语言操作&#xff0c;标准统一&#xff0c;使用方便 SQL通用语法 SQL…

Java 开篇之 JDK 下载、安装、配置、卸载、运行及乱码处理

JDK 安装和配置 本文内容简介&#xff1a; JDK 简介JDK 正确卸载方式JDK 下载和安装环境变量配置开发过程运行结果及乱码解决 JDK 简介 JDK&#xff08;Java Development Kit&#xff09;是 Java 语言的软件开发工具包&#xff0c;它是 Sun Microsystems&#xff08;现已被 Ora…

【研发日记】C/C++开发避坑秘籍(一)——CAN接收Buffer溢出Bug

文章目录 背景介绍 问题描述 分析排查 解决方案 总结归纳 背景介绍 在一个嵌入式软件项目中&#xff0c;有一段使用C语言写的嵌入式代码&#xff0c;功能是把CAN总线上的几帧报文接收进来&#xff0c;并解析出数据。示例如下&#xff1a; 乍一看感觉挺简单&#xff0c;想着…