摘要:随着MPC、隐私计算等概念的流行,诸多政府机构、金融企业开始考虑参与到多方计算的场景中,扩展数据的应用价值。

本文分享自华为云社区《使用PSI解决联邦计算的数据碰撞问题》,作者:breakDraw。

联邦计算场景

随着MPC、隐私计算等概念的流行,诸多政府机构、金融企业开始考虑参与到多方计算的场景中,扩展数据的应用价值。

以下面这个场景为例,银行可能希望获取水电局和自己银行内储户的数据,来综合计算得到各公司的信贷评分等级。

那么银行可能希望执行如下sql,来得到信贷评分。

select0.5*c.资助金额*0.3+0.4*a.贴息金额*0.3+0.2*a.标的金额*0.3+(0.05*b.水费缴纳金额+0.05*b.汽费缴纳金额+0.05*b.电费缴纳金额)*0.1
frompartyA.taxa.partyB.amountb
ona.id=b.id

问题

上述联邦计算场景中,需要做join操作,来进行水电局和银行数据的关联。传统方案中,会在TEE中进行碰撞操作,得到关联数据,再进行计算。

但水电局的用户数量是非常多的,而银行的储户数量相对来说是有限的。因此实际关联数量是以银行储户数量为准。

如果将水电局的数据如果全部上传到TEE中,则软硬件之间的传输代价会非常大,且这个过程将非关联记录的敏感数据也会一并带上来。

另外银行的储户身份也可能是高敏感隐私。

解决

使用PSI方案(隐私保护集合交集)可以有效地解决上述两个问题。

PSI通常具有以下三个特点:

  • 半可信场景:数据双方不愿意暴露所有数据,仅希望求得数据集合交集
  • 数据最小化:除了数据集合交集以外的数据不能泄露给任意一方
  • 安全双方计算:参与计算的双方需要共同实现一套安全的计算协议,以保证数据的安全性。
    具体流图如下:

该过程可保证A方和B方的id在纯密文的场景下进行碰撞,得到关联id集合,并以此为依据输出。

应用

当前tics的联邦计算业务已支持psi的应用。

联盟管理页面,管理员开启“高级别隐私保护”。当开启之后,如果满足PSI-JOIN的sql语句,tics便会选用psi的方式构建执行计划,进行join碰撞,再继续后续的计算。

创建作业,执行对应包含sql-join作业

执行作业,可以看到tics系统的DAG图中,展示了psi的全部过程。输出结果与直接做join的结果是一致的。

点击关注,第一时间了解华为云新鲜技术~

遇到联邦计算数据碰撞难题怎么办?不妨试一试PSI相关推荐

  1. c++日志库实战——spdlog,是不是感觉log4cxx有点笨重,不妨试一试spdlog

    c++日志库实战--spdlog,是不是感觉log4cxx有点笨重,不妨试一试spdlog 背景 更新记录 spdlog是什么 spdlog快速入门 编译 CMake手动方式 Vcpkg全自动方式(推 ...

  2. ios 获取固件版本_觉得iOS测试版本BUG太多?系统降级试一试?

    对于那些喜欢折腾手机,尝鲜新功能的小伙伴来说,一但iOS有新的测试版本出来就会更新,但iOS 系统的小更新很是频繁,经常更新难免会出问题,尤其是较大版本间的升级(比如iOS12到iOS13),会让很多 ...

  3. 2.8 高收藏率小红书笔记怎么写?试一试这7类方法吧【玩赚小红书】

    1.教程攻略类 ​ ​ ​ 打开任何一类的美妆产品,最常见的就是各类妆容教程和变美攻略.就拿教程最多的眼妆来说吧,很多女孩子都觉得眼妆很难画好. 如果是碰到网上流行的网红眼影,比如什么猫眼妆.截断式眼 ...

  4. 在上海做什么赚钱快?这10个你可以试一试!

    现在生活压力越来越大,工作也越来越难找,尤其是想找一个各方面都比较合适的更是难上加难,因此,很多人就选择在家创业,那么在家创业都干什么比较赚钱呢?在上海做什么赚钱快?这10个你可以试一试! 1.纯兼职 ...

  5. 扛住100亿次请求?我们来试一试!

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 作者 | xiaojiaqi 来源 | github.com/xi ...

  6. python第七章动手试一试_Python学习3

    第七章 用户输入和while循环 7.1 函数input()的工作原理 动手试一试: carname=input('Please input the car you want to hire:') p ...

  7. AI也能写高考作文?我们用清华刚刚开源的「九歌」试了试

    晓查 郭一璞 发自 凹非寺 量子位 报道 | 公众号 QbitAI 今天是高考第一天,我猜,你一定在看全国各地那些奇奇怪怪的高考作文题,还要纠结一下: 这题目,该怎么写? 那,写不出来不如扔给AI,看 ...

  8. python课本第三章答案idle_第三天任务 (【基于Python编程从入门到实践】第三章 列表 书本及动手试一试)...

    3.1列表什么是列表 列表是由 一系列特定顺序排列的元素组成的 用方括号[]来表示列表 并用逗号来分隔其中的元素 访问列表元素 索引指定访问的列表元素 使用列表中的各个值 3--1 动手试一试 3.1 ...

  9. CSS性能优化:可以试一试内联CSS?

    CSS性能优化:可以试一试内联CSS? 在互联网的早期,网站主要用于显示基于文本的信息.慢慢地,我们的连接速度得到了提高,用户能够相当快地下载高分辨率图像和视频.现在,网站做的不仅仅是以文本形式提供必 ...

最新文章

  1. android与python交互_Android与Python混合编程
  2. 阿里云Redis开发规范
  3. 网站怎样建设才能更好的吸引住用户呢?
  4. Androidz之Activity概要学习
  5. 使用JQUERY实现局部页面定时刷新
  6. MySQL-日志、完全备份恢复和增量备份恢复
  7. android数据存放map_ES6 的新鲜玩意儿——集合set、map、WeekSet、WeekMap
  8. glup打包代码不更新
  9. 12个有趣的C语言面试题
  10. 我的YUV播放器MFC小笔记:右键菜单事件和非标题实现鼠标拖动
  11. linux+listen错误,linux listen()
  12. 成长,责任,和公司的关系
  13. 第01期:ubuntu下淘宝网Tengine服务器的搭建
  14. 【转】pda的广播扫码uni-app
  15. python字符串偏移量_字符串掩码和带正则表达式的偏移量
  16. 悉尼大学BUSS6002Assignment1课业解析
  17. 克隆硬盘后进不去系统_硬盘GHOST克隆后,为什么新的硬盘系统启动不了?
  18. android 手机安装windows7,安卓手机安装运行Win7系统教程(图文)
  19. spring boot结合shiro实现用户-角色-权限的控制(包含用户名密码登陆和手机号验证码登陆)
  20. sqlserver如何快速生成不重复的随机数据

热门文章

  1. Bootstrap 排版和链接
  2. es6 对象的扩展运算符
  3. 轨迹规划当中用到的多项式插值和样条曲线
  4. java 判断正负数_Java判断一个字符串为数字(正负、小数)
  5. python一加到二十等于多少_Python 3.1新变化之性能改善篇(转载)
  6. python读取csv数据画直方图_用csv文件作为inpu在python中绘制直方图
  7. pymavlink 源码剖析(二)之生成代码
  8. iviewtable表格数据 录音播放下载
  9. 读取数据库并写入excel表中 发送邮件
  10. json与jsonp应用及其他ajax数据交互方式