zoukankan      html  css  js  c++  java
  • 遇到联邦计算数据碰撞难题怎么办?不妨试一试PSI

    摘要:随着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的结果是一致的。

     

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

  • 相关阅读:
    Intent flag 与启动模式的对应关系
    Activity的启动模式---总结
    NDK---使用,开发步骤
    自定义ViewGroup
    android:process结合activity启动模式的一次实践
    Java单元测试之覆盖率统计eclemma
    Java单元测试之JUnit篇
    结对编程1
    个人作业1——四则运算题目生成程序(基于控制台)
    Coding使用方法
  • 原文地址:https://www.cnblogs.com/huaweiyun/p/15205630.html
Copyright © 2011-2022 走看看