AI 年度盘点与2025发展趋势展望,50+案例解析亮相AICon 了解详情
写点什么

开源可信隐私计算框架“隐语”,蚂蚁做了什么?

  • 2022-07-07
  • 本文字数:6487 字

    阅读完需:约 21 分钟

开源可信隐私计算框架“隐语”,蚂蚁做了什么?

日前,IDC 开展了《IDC Perspective: 隐私计算全景研究》。通过调研发现,2021 年中国隐私计算市场规模已突破 8.6 亿元人民币,未来有望实现 110% 以上的市场增速。艾瑞咨询发布的《2022 年中国隐私计算行业研究报告》显示,2021 年至今年 3 月,隐私计算领域的累计融资额超过 18 亿元,占比超过过去 6 年的 60%,且至今投融资热度不减。隐私计算的投融资热度让更多隐私计算公司走到台前,也让更多开发者关注到了这项技术。


严格意义上来说,隐私计算目前没有一个明确的定义,行业里讨论比较多的隐私计算或者更准确的叫做隐私保护计算(Privacy-preserving Computation),是指在保证数据提供方不泄露原始数据的前提下,对数据进行分析计算的一系列信息技术,保障数据在流通与融合过程中的“可用不可见”,是一组技术的合集,包括多方安全计算 MPC、可信执行环境 TEE、联邦学习 FL、全同态加密 FHE 、可信密态计算(TECC)等等。国内隐私计算起步较晚,近几年来投入在隐私计算上的公司,比如蚂蚁集团、微众银行、华控清交、洞见科技等,以开源或者闭源的形式,在这组技术合集中选择多项技术进行研发,取得了一定的成绩但也迎来了一些挑战。


7 月 4 日,蚂蚁集团宣布面向全球开发者开源可信隐私计算框架“隐语”, 并与中国信通院云大所所长何宝宏、浙江大学网络空间安全学院院长任奎、上海交通大学教授郁昱、LVS 开源项目创始人章文嵩共同启动了“隐语开源指导委员会”成立仪式。隐语用一套通用的框架,将主流的隐私计算技术支撑起来。我们第一时间采访了隐语框架负责人、蚂蚁集团隐私智能计算技术部总经理王磊,解读蚂蚁集团可信隐私计算框架“隐语”的设计思路,开源目的和未来发展,为开发者和行业企业在隐私计算方面的投入提供参考。

“隐语开源指导委员会”成立仪式

“隐语”是什么?


隐语”是蚂蚁集团自 2016 年就开始研究的隐私计算框架,内置 MPC、TEE、同态等多种密态计算虚拟设备供灵活选择,提供丰富的联邦学习算法和差分隐私机制,助力隐私计算更广泛应用到 AI、数据分析等场景中,解决隐私保护和数据孤岛等行业痛点,已在蚂蚁内部业务及外部金融、医疗行业的智能风控、数字化运营等业务领域中落地应用。


“隐语”具备以下三个重要特性:


  1. 支持多种隐私计算技术。隐语支持目前几乎所有主流的隐私计算技术,如 MPC、TEE、FL、HE、DP 等,同时也在探索 TECC、受控匿名化等技术方向,并且积极支持互联互通。用户可基于不同业务场景来选择合适的技术方案。

  2. 支持全链路的数据分析和处理能力。可以满足用户在选定的技术方案下(MPC/FL/TEE 等),对数据进行数据分析、预处理,建模,预测的全流程数据处理需求。

  3. 支持业务全生命周期的孵化。隐语既支持业务在早期 PoC 阶段的快速迭代,也支持 PoC 验证成功后的业务的规模化推广,确保业务在规模化推广过程中的高可用。


技术演进的路线上来看,“隐语”的技术路线可以概括为几个阶段:最早的基于矩阵掩码的数据变换方案,到基于多方安全计算和可信执行环境的两套技术路线,发展到后来的多种技术融合的路线,并催生了可信隐私计算框架“隐语”。


蚂蚁可信隐私计算开源框架“隐语”,和可信执行环境隐私计算操作系统 Occlum 、蚂蚁隐私计算一体机技术一同承载了蚂蚁集团隐私计算技术体系。蚂蚁集团隐私计算技术体系不仅包括 “可用不可见”,也包括 “可算不可识”。蚂蚁集团认为,“可算不可识”是实现个人隐私保护的关键技术模式,在模型训练、数据分析等场景下确保个人身份不会被重识别,满足法律法规的匿名化要求。


为了在众多的业务场景中实现可用不可见、可算不可识,蚂蚁探索研究了几乎所有可能的隐私计算技术,包括:多方安全计算 MPC、可信执行环境 TEE、联邦学习 FL、全同态加密 FHE、差分隐私 DP 等;并且探索新的技术方向,比如首创了可信密态计算 TECC、受控匿名化技术等。同时蚂蚁在积极探索软硬件一体全栈可信、多协议互联互通、隐私计算与区块链融合 FAIR 等技术产品化方向。


“隐语”脱胎于蚂蚁集团对于隐私计算技术的大量研究。可信执行环境、多方安全计算、联邦学习是“隐语”的三个核心技术方向。“最早的时候做单机的可信执行环境,这里面的难点在于怎么把代码移植到可信执行环境中。”王磊谈道。蚂蚁集团的开源 TEE 操作系统 Occlum 就是为了解决这个问题。单机的问题解决了之后,集群化的问题接踵而来。“集群化能够解决高可用的稳定,保证生产环境的稳定性;同时在计算性能方面,当单机计算性能不行的时候,可以有更多的机器加入计算”,王磊谈道:“所以在 2018 年的时候,我们可能会更多会关注可信执行环境集群化的问题。”


多方安全计算和同态加密也是蚂蚁集团在 2018 年开始研究的,核心是为了解决性能的问题。早期“隐语”的计算技术主要专注在机器学习的一些算法上面。“多方安全计算现在一方面在研究如何提升计算性能,另外就是在研究如何与现有的机器学习框架等结合起来,复用众多的算法能力。”王磊谈道。


联邦学习则是为了解决大数据规模下的复杂机器学习问题而进行的探索,如 DNN,GNN 等。王磊举例,在一些数据量比较大、算法比较复杂的场景中,基于多方安全计算来做,存在一些性能上的瓶颈,如果基于联邦学习来做,则能通过安全退让 获得不错的性能提升,从而满足业务对性能和规模上的需求。


后来落地到业务中,联邦学习中间信息的隐私和安全问题凸显出来。隐语团队的做法是,在联邦学习中引入差分隐私技术,保护联邦学习中间信息的隐私,并将联邦学习和可信执行环境做更好的结合。


目前,隐语在蚂蚁集团内外部都有实际的落地案例,包括金融场景、医疗场景、保险场景等。今年初,“隐语”已经在蚂蚁做了内部开源,邀请了内部的一些团队一起参与到隐语的共建中来。王磊表示:“现在我们希望把‘隐语’开源到外部,让外部的团队也能够一起来共建。”


通过开源形成技术合力,“隐语”怎么做的?


技术上不能形成合力也是“隐语”团队看到行业情况后,想要开源的原因之一。“我这边看到现在很多隐私计算的企业,大家都是各自发展,同质化竞争比较严重。”王磊谈道,“有一些企业 MPC 做得强一些,有的企业联邦学习做得强一些。但为了客户需求,所有技术方向都要去布局,在人力上有非常大的浪费。”


“如果大家是在不同的公司去做不同的技术框架。一方面你会遇到很多类似的问题,这些问题在每一方单独聚集,由于是闭源的,都需要单独去解;另一方面,每一方单独寻找到的技术解决方案难以形成合力,更可能都不是最优解。我们希望通过隐语的开源,能吸引大家在隐语上实现共建,发挥各家企业的所长,最终希望在隐私计算技术上能形成的大的突破。”王磊告诉 InfoQ,国内做隐私计算的企业多集中在联邦学习技术路线,真正做 MPC 技术路线的并不多,做 TEE 且开源的就更少了。闭源也让大家很难判断技术的安全性,而安全是隐私计算的立足之本。


隐私计算行业人才也因不同背景分布在各个企业中。由于人工智能技术的火热,与人工智能技术联系更紧密的联邦学习成为更多隐私计算公司的主要技术方向。从隐私计算技术人才的分布来看,联邦学习方向上的技术人才大多有人工智能的背景。多方安全计算 MPC 具有强安全的属性,技术人才也多具有安全背景。“我觉得最主要是人才密度的原因。”王磊谈道,“对国内来说,由于机器学习人才密度较大,联邦学习的门槛会更低一点,而对于安全多方计算,人员的密度会相对低很多,导致其门槛会高一些。”


所以在“隐语”团队看来,开源或许是行业视角下一定程度上可以聚合技术资源投入的方法之一。目前来说无法判断哪条技术路线能在未来胜出,因为每条技术路线目前都只能解决一部分场景的问题,不同技术路线各有优劣。王磊解释道:“未来哪种技术路线能最终胜出,一方面取决于这个技术路线上是否会出现重大的技术突破,另一方面也取决于是否能找到合适的场景去驱动,比如同态加密技术一旦有较大的突破,可以在很多场景中使用,而且不受太多带宽的约束,也可以很好地支撑类似“东数西算”这样的大规模数据场景。此外,不同应用场景对于安全性、性能、成本的要求也是不同的,所以就算某一个隐私计算技术有了较大的突破,也不一定可以满足所有业务场景的需求。”


隐语目前的思路是,把主流的隐私计算方向,用一套统一的架构支撑起来。这也是隐语区别于谷歌等开源隐私计算框架比较不同的点。对于蚂蚁集团而言,这样做的好处在于,在看不清方向的时候,隐语不会错失窗口,一旦某个技术方向上有突破,也能做重点的倾斜和支撑。在隐语团队内部,不同的研究方向会由不同的小团队负责。


此次开源,隐语采用 Apache-2.0,代码托管在 Github 及 Gitee。对于算法 / 模型研发开发者,可以使用隐语提供的编程能力,方便快捷地将更多算法和模型迁移来,并得到隐私保护增强。对于底层安全开发者,可将底层密码 / 安全研究成果嵌入隐语,完善密态设备的能力、性能和安全,转化实际业务应用。


在 7 月发布的首个开源版本中,隐语开源了 MPC 的设备、HE 的设备以及差分隐私的原语,也会开放出整个明密文混合计算框架。在上层,基于这个框架隐语提供了部分多方安全计算和联邦学习的机器学习算法;到 11 月,隐语计划将上层的原子化产品能力开放,也会将底层大规模高可用的资源调度系统开放,并且会同步提供基于可信执行环境的数据分析和机器学习算法。


围绕开源社区,隐语希望能够在多个方面为隐私计算技术生态建设做力所能及之事:


其一是围绕隐私计算这一技术核心通过多种渠道以文字、视频等多样的内容,普及这一技术,通过开放的交流探讨增强生态中各界之间的交流;


其二是在普及之上,联动高校科研等科研机构,形成产业视角与教学视角的结合,打造一套体系化的隐私计算教学材料,助力社会培养会用隐私计算的人才体系;其三是在会用之上给予实质性的孵化支持,即通过 CCF- 蚂蚁隐私计算科研基金,公开招募、评选、扶持有创新有价值的科研项目深度发展。


“隐私计算在实际业务中使用时,需要和业务系统深度集成,而作为一个技术门槛和壁垒都比较高的技术方向,如果 让每个使用的团队都去从头开发 ,这其实是有非常大的成本的,隐语在内部的开源其实很大程度上能够帮他们去降低成本。”王磊谈道,“隐私计算还是一个蓝海,目前不存在有非常大的内部竞争的问题。‘隐语’开源也是希望能够把现在做隐私计算的单薄的技术力量汇聚起来,让大家形成合力,推动技术方向更快地发展。”


不过在企业内部推动开源要比在外部相对容易,外部企业之间的目标差异性更大,并且部分企业本身已经有了一些隐私计算的能力,更多地只是希望对现有能力做补充。“所以我觉得需求的差异性会很大。沟通的效率,也会比在企业内部沟通要低。但是,我觉得从整体推动隐私计算技术发展的角度来说,单靠一家集团、一个公司,其实是很难的,所以隐语开源势在必行。”王磊谈道。


为了让更多方参与到开源中来,“隐语”筹备近一年,主要是在做整体的架构升级,以确保开源的是高质量、可扩展的技术框架。


架构升级方面,以业务需求为起点的技术,发展到后期往往会有很多“独立的烟囱”,语义抽象跟着业务需求走,会让系统架构中形成很多“历史包袱”。基于“归纳和演绎”的理念,隐语这次的架构升级将很多业务层的语义剥下来,重新做分层和抽象封装,整体架构的通用性会更高。“我们刚开始做 MPC、联邦学习的时候,做着做着发现其实 MPC 和联邦学习是相通的。它们能够抽象出来的共同点是明密文混合计算。然后你会发现通过一套框架,我们可以把联邦学习和 MPC 完全统一起来,相互耦合。”


“隐语”团队在整个隐私计算的架构分层上做了很多设计,提供更适合开发和接入的模式。

隐语技术框架分层


隐语将参与开源的群体大体上分为两大类,一类是使用者,通过使用隐私计算的技术形成解决方案解决业务问题;一类是开发者,对于隐私计算有更深入的理解,能够进行代码的贡献。


针对隐私计算的开发者,隐语框架可以分成五层,支持不同背景的开发者共同参与开发共建。


  • 最上面是产品层,提供黑 / 白屏的原子化产品能力,可以方便业务平台进行集成和二次开发。

  • 第二层是业务算法层,通过屏蔽隐私计算的概念,让算法开发者可以像使用传统机器学习和数据分析一样使用隐私计算。

  • 第三层是明密文混合调度层,这一层会提供明密文混合编程的接口,通过屏蔽掉隐私计算各种技术的实现细节,降低开发者的门槛,当业务算法层不能满足开发者对性能或场景的需求,开发者可以通过明密文混合编程接口,进行更深度的开发。

  • 第四层是引擎层,这一层会面向安全背景的开发者,深入到隐私计算各种技术的实现细节,通过密态虚拟机的抽象,对上层提供明密文混合计算的能力。

  • 最后一层是资源调度管理层,用于解决跨域协作之间的生产高可用问题。


“我们一直觉得开源是一件非常慎重的事情。开源不仅仅是把代码拿出去这么简单,其实我们更希望通过良好的架构设计,最终能够让更多的人加入进来。”王磊谈道,“我们希望有更多的用户能够去使用隐语,去解决实际场景中的问题,帮助我们去探索出更多的实际应用场景。我们也希望在这个过程中,用户能够及时地把问题反馈到社区,形成更好的迭代。开发者们能够参与到技术共建过程中,以合力去突破隐私计算技术方向。”


“隐语”团队也已成立开源指导委员会,对技术进行把关,与蚂蚁集团内部有开源运营经验的同学一起打造开源社区。

隐私计算技术突破口


虽然在技术发展、业务需求和投融资的推动下,行业内已经有不少或开源或闭源隐私计算公司,但目前,对于隐私计算的水平,行业内并没有一套严格统一的指标。对于技术发展的阶段,也没有相对统一的衡量标准。


数据时代,传统的集中式计算,数据规模、计算能力、算法复杂度呈正相关趋势,隐私计算也是一样,能够支持的数据量越高,场景越复杂,算法越复杂,隐私计算技术的成熟度就越高。“我觉得隐私计算的几个技术目前能够去支撑的数据量可能不尽相同,一般像 MPC 大概是百万到千万的一个量级;TEE 和联邦学习 会是千万到亿的量级。”王磊谈道,“如果从能够适应的场景来考虑,我觉得可以综合考虑安全性、支持的数据规模,以及在数据规模下的性能和精度,通过这些维度去衡量整个技术的发展阶段。”


从技术维度出发,王磊对几个核心技术方向可能的突破点做出了自己的判断:


联邦学习最需要突破的技术点是安全性的证明和度量。AI 方面的专家在做联邦学习的过程中,对安全性的理解是不如安全领域的专家的,联邦学习需要想办法证明过程中被泄露的中间信息是否安全,至少需要能对泄露的信息量进行度量。多方安全计算在安全上有理论证明,需要解决的是低网络带宽和高网络延迟的情况下,怎么提升计算性能。


同态加密核心要解决的是加密后的计算性能和数据膨胀的问题。目前行业内的主要思路是通过硬件计算来解决加密后的计算性能的问题。数据膨胀方面,很短的数据加密后就会膨胀得非常厉害,对存储和网络传输都会带来比较大的压力。可信执行环境,面临的第一个问题是底层硬件的漏洞,比如硬件黑盒化的功能无法验证,在很多场景尤其是金融场景很难落地应用。


针对上述这些问题,蚂蚁集团也在积极努力的去尝试解决,比如联邦学习的安全性度量工作,多方安全计算协议性能优化,针对同态加密的硬件加速,自主可控的 TEE 软硬件的研发,都是目前蚂蚁集团重要的研究方向,这些方向的研究成果也会即时地通过蚂蚁的开源系统分享给社会,共同推动隐私计算行业的进步。


整体来看,作为保障数据流通的关键技术,隐私计算技术从安全性和性能层面来看,还存在着一定的限制。蚂蚁集团基于长期对隐私计算技术的实践积累,提出了多个创新技术路线。如从 2021 年起,蚂蚁集团推动发展了新一代隐私计算技术可信密态计算(TECC),创新性地将密码技术(MPC、FL)和全栈可信计算技术(TEE、TPM)融合在一起,突破了使用单一技术的局限,获得了更高的综合能力。与其他隐私计算技术相比,TECC 更加适用于对数据安全需求高(如重要数据)、数据规模大(如百万个人信息)、计算逻辑复杂、参与方数量不固定的场景,并支持等跨地域数据中心的密态计算需求。据悉,蚂蚁集团也正在筹备这一技术的开源。


对于隐语来说,开源只是走向开放生态的第一步。更多的技术创新、保障开发者使用体验、活跃健康的开发者生态,才是隐语未来要长期面临的挑战。

2022-07-07 11:157745

评论 1 条评论

发布
用户头像
2022-07-08 23:34
回复
没有更多了
发现更多内容

Amazon Aurora 读写能力扩展之 ShardingSphere-JDBC 篇

SphereEx

Apache 数据库 开源 ShardingSphere SphereEx

H2 数据库如何以服务器方式启动

HoneyMoose

OpenHarmony加速行业应用落地,多款软件发行版正在通过兼容性测评

OpenHarmony开发者

OpenHarmony

SAP 云平台(Cloud Platform)架构概述

汪子熙

云计算 云平台 SAP 云计算架构师 4月月更

Docker下,pinpoint环境搭建

程序员欣宸

Java Docker 4月月更 Pinpoint

Tomcat:网络请求原理分析

IT巅峰技术

80+产品正通过兼容性测试,OpenHarmony生态蓬勃发展

OpenHarmony开发者

OpenHarmony

如果只有一周时间,怎么快速提升线上系统的稳定性?

Samson

运维 监控 技术管理 SRE 系统稳定性

Windows Edge 浏览器的有关 URL 链接的复制粘贴

HoneyMoose

丁未篇 「元宇宙超次元 」 《「內元宇宙」聯載》

因田木

Web3.0 命書

16 条 yyds 的代码规范

爱好编程进阶

Java 程序员 后端开发

使用 GoRouter 进行 Flutter 导航:Go 与 Push

坚果

4月月更

替代 Elasticsearch,TDengine 助力四维图新将存储空间利用率提升 8 倍

TDengine

数据库 tdengine

2020最新互联网数据调查显示,Kotlin-势必取代-Java?

爱好编程进阶

Java 程序员 后端开发

20万+字,熬夜整理了一份程序员不可或缺的软技能高分原创电子书送给你

爱好编程进阶

Java 程序员 后端开发

电商秒杀系统架构设计

李大虾

#架构实战营 「架构实战营」

2021金三银四吃透这份Java面试突击手册!成功跳槽涨薪30K

爱好编程进阶

Java 程序员 后端开发

融云国产化适配排坑指南

融云 RongCloud

FL STUDIO20.9中文版汉化包注册激活教程

茶色酒

FL STUDIO20.9

Spring Data Elasticsearch 使用示例

Java elasticsearch 4月月更

企业知识库建立的目的及意义

小炮

知识库

17 网站架构的伸缩性设计

爱好编程进阶

Java 程序员 后端开发

2021金三银四巨作!10万字!阿里高工纯手码JDK源码笔记 带你飙向实战

爱好编程进阶

Java 程序员 后端开发

H2 数据库采用客户/服务器端连接数据的 JDBC 参数

HoneyMoose

C语言总结_语句、运算符

DS小龙哥

4月月更

OpenMLDB:线上线下一致的生产级特征计算平台

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

敏捷开发中如何从容应对需求变更?

华为云开发者联盟

敏捷开发 需求 软件开发 需求变更

己酉篇 「反元富民」《「內元宇宙」聯載》

因田木

元宇宙

灵感乍现!造了个与众不同的Dubbo注册中心扩展轮子

捉虫大师

Java dubbo 注册中心 4月月更

APICloud数据云3.0使用教程

YonBuilder低代码开发平台

后端开发 APP开发 APICloud 数据云

(项目实战)如何结合k8s和pipeline的流水线,并通过k8s接口完成镜像升级

爱好编程进阶

Java 程序员 后端开发

开源可信隐私计算框架“隐语”,蚂蚁做了什么?_AI&大模型_张俊宝_InfoQ精选文章