前言
提醒:全文10千字,预计阅读时长15分钟;
读者:对隐私计算感兴趣的小伙伴;
目的:读者利用15~30 分钟对本文沉浸式阅读理解,能够掌握隐私计算 80% 的概念;
关键词 :隐私计算、多方安全计算、联邦学习、同态加密、机密计算、差分计算;
摘要
本文主要从基本概念、技术方向、法律法规、应用等方面对隐私计算进行了简单的科普解读。
图1 隐私计算市场规模
编辑
一、概念
1.1 数据 Data
数据:数据已经成为现代社会的主要生产要素,其价值创造依赖于数据流通。数据流通的关键是价值流通,数据流通的目的是价值释放。
数据中可能包含隐私。
1.2 隐私 Privacy
定义:《民法典》第1032条第二款:“隐私是自然人的私人生活安宁和不愿为他人知晓的私密空间、私密活动、私密信息。”
权力:《中华人民共和国民法典》第一千零三十二条: 自然人享有隐私权。任何组织或者个人不得以刺探、侵扰、泄露、公开等方式侵害他人的隐私权。
1.3 隐私跨境
隐私跨境:泛指因各种原因导致隐私数据跨越其管控区域到其他区域,是数据跨境过程中不可避免的行为。
隐私计算是保护隐私跨境流通安全与合规的有力武器。
1.4 隐私计算 Privacy computing
定义:隐私计算是指在保护数据本身不对外泄露的前提下实现数据分析计算的技术集合,达到对数据“可用、不可见”的目的;在充分保护数据和隐私安全的前提下,实现数据价值的转化和释放。隐私计算是面向隐私信息全生命周期保护的计算理论和方法,是隐私信息的所有权、管理权和使用权分离时隐私度量、隐私泄漏代价、隐私保护与隐私分析复杂性的可计算模型与公理化系统。
价值:与传统数据使用方式相比,隐私计算的加密机制能够增强对于数据的保护、降低数据泄露风险。传统数据安全手段,比如数据脱敏或匿名化处理,都要以牺牲部分数据维度为代价,导致数据信息无法有效被利用,而隐私计算则提供了另一种解决思路,保证在安全的前提下尽可能使数据价值最大化。
尽管应用潜力巨大,但隐私计算技术的规模化应用仍面临着生态、性能、安全等多方面的挑战。
1.5 隐私计算技术
多方安全计算(Secure Multi-party Computation, MPC)是指在无可信第三方的情况下,多个参与方共同计算一个目标函数, 并且保证每一方仅获取自己的计算结果,无法通过计算过程中的交互 数据推测出其他任意一方的输入数据(除非函数本身可以由自己的输 入和获得的输出推测出其他参与方的输入。
联邦学习是实现在本地原始数据不出库的情况下, 通过对中间加密数据的流通与处理来完成多方联合的机器学习训练。联邦学习参与方一般包括数据方、算法方、协调方、计算方、结果方、任务发起方等角色,根据参与计算的数据在数据方之间分布的情况不 同,可以分为横向联邦学习、纵向联邦学习和联邦迁移学习。
可信执行环境(Trusted Execution Environment, TEE)通过软硬件方法在中央处理器中构建一个安全的区域,保证其内部加载的程序 和数据在机密性和完整性上得到保护。TEE是一个隔离的执行环境,为在设备上运行的受信任应用程序提供了比普通操作系统(Rich Operating System, RichOS)更高级别的安全性。
多方中介计算(Multi-partyintermediary computation, MPIC)是指多方数据在独立于数据方和用户的受监管中介计算环境内,通过安全可信的机制实现分析计算和匿名化结果输出的数据处理方式,是一个计算管理系统。在MPIC中,数据方的原始数据由其去标识化后输入中介计算环境或平台参与计算,完成计算后立即被删除,匿名化结果数据经审核后按指定路径输出。在MPIC的特定环境和规则下,信息数据的身份标识经过加密和标识化的处理,因其算法具有不可逆性,故无法恢复为原始数据,满足了匿名化的一个要求,即不能原复;同时,由于这些去标识化的信息数据被封闭在特定受监管环境或平台中,客观上达到了匿名化的另一个要求,即无法识别特定自然人。故被处理的数据实质可视同匿名化,不再属于个人信息,无需征得个人同意就可进入中介计算环境或平台参与计算。
差分隐私(differential privacy)是密码学中的一种手段,旨在提供一种当从统计数据库查询时,最大化数据查询的准确性,同时最大限度减少识别其记录的机会。
1.6 隐私计算平台
隐私计算平台是融合了隐私计算技术,并提供隐私计算服务的平台。
PrimiHub是开源隐私计算平台,基于安全多方计算、联邦学习、同态加密、可信计算等隐私计算技术,结合区块链等自主研发的隐私计算应用平台。秉承保护数据在应用过程中的隐私安全,实现“数据可用不可见”。 产品平台涵盖了匿踪查询、隐私求交、联合建模、联合统计、算法容器管理、数据资源管理、数据确权与定价、异构平台互联互通等主要应用服务功能。
二、技术解读
2.1 屠龙刀因武林纷争
2.1.1 独孤求败玄铁重剑重现
-姚老师的百万富翁问题-
一个屋子里只有 2个富翁你(5块钱)和我(3块钱),是否有一个办法在相互不泄露财产隐私数据的情况下比谁是哥哥?
---------------------------------------------------我是思考线-------------------------------------------------------
规则:
1. 拿 10 个相同的盒子,按 顺序排列
2. 你向第 5 个箱子里放 1 罐啤酒(和资产相等),前 4 个放上花生米(少于你的资产),后 5 个放上瓜子(多于你的资产), 全部上锁,只有你有钥匙。
3. 将 10 个盒子给我,维持顺序
4. 我把第 4 个箱子再 上一把锁(我的资产),然后把其他盒子销毁
5. 在 双方见证的情况下,打开盒子;
6. 如果是瓜子,我是哥哥;如果是花生米,你是哥哥;如果是啤酒,一人喝一口就行了。
是时候展示真正的实力了,按照以上方法,咱俩真正比一下,你有 500w,我有 200w,看看最终能比较出来吗?
隐私计算理论技术的百花齐放就源自这个问题,大师们依次现身说法:
1978 Rivest[1]首次提出同态加密这一概念
1979 Shamir[2] 提出门限秘密分享协议
1981 Rabin[3] 提出不经意传输协议
1982 Yao[4] 提出多方安全计算协议
1986 Yao[5]提出混淆电路
1987 Goldreich[6] 提出基于秘密分享的MPC
1995 Chor[7] 提出PIR协议
1999 Paillier[8] 提出半同态加密协议
等等
前两位是 RSA 的发明者吧,总体来看这些概念原型出现的比较早,随着技术理论的不断成熟以及市场需求,2018 年开始这些隐私计算技术在金融、医疗、政务领域得到规模化应用,相关标准也不断的完善推出,隐私计算开始进入大众视野。
2.1.2 四大门派各显神通
图2 隐私计算技术框架
编辑
引自《隐私计算》陈凯 杨强
根据《隐私计算》一书中的分类,隐私计算技术主要包括多方安全计算、联邦学习、同态加密、可信执行缓解、差分隐私,各个技术既相互独立,又有一定的联系,比如联邦学习和其他几种技术都有联系,而可信执行环境和同态加密是相互独立的,这些技术共同构成隐私计算技术框架;每个隐私计算技术内部又由更具体的技术构成,总体来说整个技术框架构成清晰、层次分明、相互独立,容易发展进化,下面对各个技术分类进行介绍。
2.2 多方安全计算 MPC
2.2.1 概述
MPC 根据参与方数量的不同,可分为:两方计算(two party computation,简称 2PC)和多方计算(multi-party computation),这两者间存在本质的区别。目前,通用的两方计算(2PC)已经具备了商用的条件。多方计算在某些特定场景下也已经没有太多的性能瓶颈;而通用计算协议在可扩展性层面依然不够成熟,这也是学术界一直在探索的方向。
2.2.2 数学定义
假设存在n 个参与方 P1,P2,…,Pn,每个参与方都有一个私有输入数据 xi,所有参与方共同计算某个函数 f(x1, x2, …, xn),且要求在计算结束时,每个参与方 Pi 只能得到私有输入数据 xi 的输出,而不能获取其他参与方的输入信息及输出结果信息。
2.2.3 技术分解
秘密共享
数学家眼中的秘密共享
图3 秘密共享定义
编辑
我等学渣眼中的秘密共享
秘密共享的思想是将秘密以适当的方式拆分,拆分后的每一个份额由不同的参与者管理,单个参与者无法恢复秘密信息,只有若干个参与者一同协作才能恢复秘密消息。更重要的是,当其中任何相应范围内参与者出问题时,秘密仍可以完整恢复。
这是不是有点像集齐七龙珠,倚天屠龙得武穆遗书,还考虑了防破坏、防背叛。皇帝密诏印多分,切碎,每个锦衣卫一块,分头行动,送往目的地。
可以通过数学上的很多原理构造秘密共享方案:
如果秘密是一条秘密多项式曲线上的一个点,如
那么秘密y被分割为a、b、c、x
更高级的,秘密可以是一个高阶曲线上的点,利用拉格朗日插值法还原更精确的秘密
编辑
只需要通过 k 和 x 还原 k 个密钥,就可以获得秘密
给说人话的学渣加鸡腿
混淆电路
不经意传输
2.2 联邦学习
2.3 同态加密
2.4 机密计算
2.5 差分计算
三、案例解读
3.1 金融营销与风控
3.2 基因研究
3.3 医药研究
3.4 政府部门
四、 Information
4.1 标准、法规、读物
4.1.1 标准
《信息安全技术 机密计算通用框架》
《电信网和互联网联邦学习技术要求与测试方法》
《电信网和互联网多方安全计算技术要求与测试方法》
《隐私计算 一体机技术要求》
《隐私计算 可信执行环境安全要求和测试方法》
《隐私计算 可信执行环境性能要求和测试方法》
《隐私计算 金融场景标准及测试方法》
《基于多方安全计算的数据流通产品技术要求与测试方法》
《隐私计算多方安全计算产品性能要求与测试方法》
《隐私计算 多方安全计算安全要求与测试方法》
《多方安全计算金融应用技术规范》
《多方安全计算金融应用评估规范》
《Recommended Practice for Secure Multi-Party Computation》
4.1.2 行业报告
《隐私计算推动金融业数据生态建设》
《隐私计算应用研究报告(2022)》
《可信隐私计算研究报告》
《2022中国隐私计算产业研究报告》
《2022年中国隐私计算行业洞察报告》
《中国隐私保护计算技术研究报告》
《2021年中国隐私计算市场研究报告》
4.1.3 书刊
《隐私计算理论与技术》李凤华
《隐私计算》陈凯
《隐私计算——推进数据”可用不可见”的关键技术》 闫树
4.2、组织
4.2.1 联盟
中国信通院隐私计算联盟
4.2.2 社区
开放隐私计算OpenMPC
Edgeless
4.2.3 机构
CCSA
IEEE
CFCA
中国人民银行
4.3、开源项目
4.3.1 综合性
PySyft、SecretFlow、PrimiHub
4.3.2 MPC
工业 TF-Encrypted、CrypTen、Rosetta、SyMPC、SPU
学术 MP-SPDZ、FudanMPL、MPC4j、EzPC 、ABY、ABY3、Cheetah
4.3.3 FL
TensorFlow-Federated、FedML、LEAF、FATE、PaddleFL、EFLS、FedLearn
4.3.4 TEE
Occlum、Gramine、OP-TEE、豆荚TEE、Teaclave(MesaTEE)、Asylo、Constellation、EdgelessDB、MarbleRun、Ego
4.4.5 HE
TFHE、FHEW、 OpenFHE,Concrete、HEhub、SEAL、HElib、TenSEAL、OpenFHE、Hehub、PEGASUS、cuHE、cuFHE、cuYASHE
总结
隐私计算是未来几年比较火的方向,值得我们花些时间学习。
参考
《隐私计算》陈凯
终于把隐私计算、联邦学习、多方安全计算、机密计算、差分隐私全搞清楚了!
一文剖析2022年“全球隐私计算开源现状”
术语
MPC
安全多方计算(Secure Multi-Party Computation,MPC)是指在无可信第三方的情况下,多个参与方协同计算一个约定的函数,并且保证每一方仅获取自己的计算结果,无法通过计算过程中的交互数据推测出其他任意一方的输入和输出数据。安全多方计算(MPC)包括同态加密、秘密共享、混淆电路、零知识证明、不经意传输(OT)等技术。
PSI
隐私保护集合交集协议(Private Set Intersection,PSI)允许持有各自数据集合的两方执行双方集合的交集运算。PSI 协议结束之后,一方或两方能够得到交集结果,但是双方都无法获知交集以外的对方集合数据的任何信息。
写在后面
皮格马利翁效应心理学指出,赞美、赞同能够产生奇迹,越具体,效果越好~
“收藏夹吃灰”是学“器”练“术”非常聪明的方法,帮助我们避免日常低效的勤奋~