五分钟技术趣谈 | 隐私计算之安全多方计算

安全
是否有一种技术既可以保护用户的个人数据不被滥用,同时又能满足各行各业“实现数据共享,打破数据孤岛”的需求呢?隐私计算在这种情况下应运而生,而安全多方计算作为隐私计算中最成熟的技术,是如何让隐私计算逐步进入实用化场景的呢?本文将深入浅出的做一个介绍。

Labs 导读

随着5G技术的加速发展,我国的各个产业逐步进入数字化转型阶段。日益增长的数据作为数字时代的核心生产要素,对社会和企业的价值越来越重要。然而,在数据流通与共享的过程中却存在数据泄漏的风险,数据安全和隐私保护问题愈发被重视,国家逐步完善管控制度,先后发布《数据安全法》,《网络安全法》,这也意味着数据安全不容忽视。那是否有一种技术既可以保护用户的个人数据不被滥用,同时又能满足各行各业“实现数据共享,打破数据孤岛”的需求呢?隐私计算在这种情况下应运而生,而安全多方计算作为隐私计算中最成熟的技术,是如何让隐私计算逐步进入实用化场景的呢?本文将深入浅出的做一个介绍。

数字化转型时代

企业对数据的渴求越来愈大

数据的价值越来越高

然而

数据流通和分享过程中

被泄漏的个人隐私数据也不在少数

【数据隐私】成为网络热词

......

有没有一种技术

能保护数据的私密性

又让数据产生价值呢?

隐私计算或许就是一种选择

本期Labs带大家认识下隐私计算

以及隐私计算中的安全多方计算的那些事儿

Part 01什么是隐私计算

隐私计算(Privacy compute)是一种由多个参与方联合计算的技术,参与方不需要泄漏各自的数据就能够协作计算,联合分析得出想要的结果。与传统的数据协作相比,隐私计算提升了数据流通与分享的安全性,可以让原来不愿意或者不敢于开放的数据,在隐私计算技术下得以开放;让原来脱敏开放的数据,借助于隐私计算技术实现原始化数据的开放。各个行业能够借助隐私计算打破数据孤岛,促进数据的融合使用。

- 分支

隐私计算涉及到多方技术的融合,目前主流研究分为三个方向:

1、基于协议的安全多方计算:历史最悠久,积累了大量底层的安全技术,其他两个方向都或多或少用到了安全多方计算的底层技术,是我们今天讨论的重点。

2、基于现代密码的联邦学习:后起之秀,结合密码学和分布式计算实现了多方协作的机器学习,未来主要应用于人工智能领域。

3、基于硬件的可信执行环境:不同于前两种软件技术,可信执行环境是通过硬件技术对数据进行隔离保护的。

下图展示了隐私计算的一个整体架构:

Part 02隐私计算下的“加密主军”

- 起源

安全多方计算起源于姚明智教授提出的一个有趣的问题:

有两个百万富翁Alice和Bob,他们想比一比两个人谁的财富更多,但是由于财产是比较隐私的问题,因此两个人都不想向对方透露自己有多少财富;并且他们也不信任任何第三方。在这种前提下,该如何解决这个难题呢?

为解决这个问题,姚明智教授提出构建一种模型:在无可信第三方的前提下通过一个约定的函数,进行协同计算得到自己的计算结果,并且无法通过交互数据推测出其他任意一方的输入和输出数据。基于这个模型,发展出的密码学基础理论后来经过技术人员的设计和运用逐步成长为安全多方计算。

- 组成

安全多方计算不是一种单一的技术,它是由一系列技术组成的集合,这些技术能帮助数据参与方在不泄露己方原始数据的前提下获取到需要的整体数据信息。通用组成结构有以下两层:

支撑技术层

支撑技术层作为底层结构提供了最基本的一些加密解密算法,构筑了安全多方计算的基础。包括hash函数、密钥交换、同态加密(Homomorphic Encryption)、伪随机函数等,此外还包含安全多方计算中的基础工具:秘密分享(Secret Sharing)、不经意传输协议(Oblivious Transfer)、不经意伪随机函数(Oblivious Pseudorandom Function)等;

专用算法层

专用算法层是利用支撑技术层构建的安全多方计算协议,包括专用算法和通用框架。专用算法是指为了特殊问题所构建的特殊算法,效率较高,包括了四则运算,比较运算,矩阵运算等;通用架构是指可以满足大部分需求的隐私计算逻辑,虽然效率相比专用算法较低,但是适用范围更广。

- 技术手段

秘密分享

秘密分享算法能够将数据拆解成几个没有意义的数字,分发给多个参与方。每个参与方拿到数据的一部分,并且用这部分数据参与计算。这样既保证了各个参与方无法还原出原始数据,又能得到正确的计算结果。我们以计算平均工资为例,A,B,C想计算一下他们的平均工资,但又不想暴露自己的薪资,用秘密分享可完美解决这个问题,具体看下表:

假设A工资10万,他把自己的薪资信息拆分后,分发给了B(3万)和C(5万),B和C进行相同逻辑拆分,最后这些秘密分享的数据共同计算得到了正确结果。

不经意传输

不经意传输指数据发送方有N个数据,数据接收方请求接收一个数据,发送方收到请求后随机发送一个数据,并且自己并不知道发送的是哪个数据。这种方法保护了被选择之外数据的隐私性。

混淆电路

混淆电路将安全多方计算当做布尔电路进行处理,每一路的计算都进行加密,并且打乱加密顺序达到混淆的目的。基于混淆电路技术可以构造出通用的安全多方计算协议。

同态加密

同态加密是指每个参与方的输入数据首先经过同态加密算法之后再给到计算方,计算方在本地进行解密并计算。在返回计算结果时,同样进行加密处理。参与方拿到计算结果后进行解密得出目标数据。同态加密的类型分为加法同态,乘法同态,全同态加密三种。

Part 03安全多方计算实用场景

医疗领域:安全多方计算在医疗领域的应用可以为原来相对封闭的医疗数据参与方建立起安全可信的数据交换网络,如当前全国正在着力推动的全民病历互通,在各个医疗机构针对用户病历进行共享的时候,安全多方计算可提供一种可靠,安全的方式构建一个交换网络来保护用户病历数据的隐私性,从而实现医疗数据价值的最大效用

金融领域:安全多方计算支持的本地数据采集,秘密分享,多样化的协调计算能帮助金融机构将用户征信数据分析范围从单纯的金融信贷数据扩展到医疗,保险,交通等领域,获得更完善和精准的用户信用画像

营销领域:安全多方计算在移动家庭业务营销中已经得到了运用。基于已有的大数据分析基础,安全多方计算为家庭业务营销提供了一种保护数据隐私的营销方案:利用隐私数据求交集运算去判断用户画像和消费意愿,只有交集部分用户能够被需求方获得。这个方案能在保护用户隐私信息的前提下判断用户的购买意愿和风险承受能力,达到改善用户体验和拓展市场的目的。

作者:李佳斌,单位:中国移动智慧家庭运营中心

责任编辑:未丽燕 来源: 移动Labs
相关推荐

2021-06-04 15:38:18

联邦学习人工智能数据

2023-07-16 18:49:42

HTTP网络

2023-07-23 18:47:59

Docker开源

2023-07-16 18:42:18

2023-07-02 16:09:57

人工智能人脸识别

2023-07-02 16:34:06

GPU虚拟化深度学习

2023-04-15 20:25:23

微前端

2023-07-31 08:55:15

AI技术网络暴力

2023-07-12 15:50:29

机器学习人工智能

2023-08-29 06:50:01

Javamaven

2023-09-12 07:10:13

Nacos架构

2023-08-06 06:55:29

数字可视化物联网

2023-09-02 20:22:42

自动化测试软件开发

2023-07-12 16:13:01

2021-09-18 11:36:38

混沌工程云原生故障

2023-08-07 06:35:07

系统限流

2023-04-15 20:33:35

图形数据库数据库

2023-06-03 21:14:47

Linux

2023-06-03 21:06:05

2023-08-06 07:00:59

Openstack网络
点赞
收藏

51CTO技术栈公众号