01 隐私计算技术开源的整体现状
随着政策鼓励与技术成熟,开源作为一种新型的生产方式、创新的协作方式,正逐渐渗入到千行百业,并在国家战略层面得到了肯定和支持。近年来,国内外隐私计算开源框架与应用工具不断涌现,开源项目涵盖了安全多方计算(MPC)、联邦学习(FL)、可信执行环境(TEE)、同态加密(HE)等各个技术领域。尤其是2022年,在国内更是被称为“隐私计算开源之年”。在2022年,国内已有蚂蚁集团、原语科技、翼方健数等企业推出了多个隐私计算开源项目,进一步促进了隐私计算技术的普及、应用和发展。隐私计算开源项目根据技术路径的不同,分为综合技术型开源项目和专精单一技术型开源项目。根据各个隐私计算开源项目涵盖的技术领域不同,应用功能与性能也有所差异,易用性、扩展性、适配性、通用性、模块化、组件化、用户体验等方面也各有千秋。
作为一个仍在发展中的技术领域,众多开源项目大大促进了隐私计算技术发展、普及及应用推广,也有利于在行业标准化及互联互通等方面提供更多的参考、方案与范式,进一步促进行业的发展与繁荣,主要有以下三个方面的积极意义。
综合技术型开源项目一般同时包含主流的安全多方计算(MPC)、联邦学习(FL)、可信执行环境(TEE)、同态加密(HE)等技术,拥有良好的开源社区生态。目前,致力于打造支持各种隐私计算技术及应用的综合性开源项目主要有OpenMined公司2018开始开源的PySyft系列项目,蚂蚁集团2022年开源的SecretFlow系列项目,以及原语科技2022年开源的PrimiHub系列项目等。
接下来,本文将从隐私计算技术体系中主要的4个技术方向——安全多方计算(MPC)、联邦学习(FL)、可信执行环境(TEE)、同态加密(HE)出发,逐一带来2022年全球隐私计算开源现状的剖析展示。
02 安全多方计算(MPC)开源介绍
安全多方计算(Secure Multi-party Computation, SMPC or MPC)领域主要包括通用MPC技术及专用MPC技术两大类,通用MPC技术一般支持各方之间密态的加法、乘法、比较等操作,可以基于基本操作构建通用的多方联合计算、统计分析、建模等功能,专用MPC技术包括隐私集合求交、匿踪查询等技术。其涵盖的关键技术包括秘密分享、混淆电路、不经意传输等。目前,安全多方计算领域的开源项目最为繁多,有面向学术研究的,也有面向工业应用的;有涵盖多种MPC协议的通用框架,也有支持单一安全协议的专用框架;有支持通用MPC技术的,也有支持专用MPC协议的;有面向整体应用的,也有面向领域专用技术的。
(1)面向工业应用的开源项目。包括TF-Encrypted、Meta开源的CrypTen、矩阵元开源的Rosetta、OpenMined开源的SyMPC、蚂蚁开源的SPU等,这些面向工业应用的开源项目基本都是基于深度学习框架开发,例如PyTorch或TensorFlow以及JAX。
(2)面向学术研究的开源项目。这部分的开源项目最多,呈持续繁荣的态势。其中MP-SPDZ支持最为丰富和全面的各种MPC安全协议,同时对通信部分进行了并行优化,提升总体框架效率;MPC4j是面向Java的旨在为研究人员提供MPC相关协议的库, 可对许多主流协议进行公平的性能比较;FudanMPL是国内首个由高校主导的开源的基于安全多方计算的机器学习框架,支持丰富的机器学习模型和场景;EzPC 主要支持神经网络的安全推理,并针对性地进行优化;ABY、ABY3、Cheetah等开源项目主要是针对相关论文的协议实现,通常作为底层协议被集 成在工业应用的开源框架中。
(3)专用MPC协议的开源项目。包括支持隐私集合求交的OPRF-PSI、MultipartyPSI等,支持匿踪查询的XPIR、SealPIR等,此类开源项目大多主要用于学术研究。
(4)面向基础MPC组件的开源库项目。包括支持各种高效的不经意传输协议方案的libOTe、EMP-toolkit等,支持混淆电路的Obliv-C等,这些关键技术开源库可以为通用的多方联合计算、隐私集合求交等各种上层应用提供高效基础的底层密码学原语技术支持。
03 联邦学习(FL)开源介绍
联邦学习(Federated Learning, FL)是从人工智能角度出发,结合密码学进行安全多方分布式机器学习的技术。它是一种可以保证在本地原始数据不出库,只通过传输中间结果(模型的梯度信息或模型参数)进行信息交换完成联合训练机器学习模型的方法。为提升安全性,通常结合同态加密、差分隐私技术以及包括基于秘密分享、不经意传输、混淆电路等密码学原理的各类安全多方计算协议和其它用于保证隐私计算的密码学技术来保护中间结果。从参与方数据的特征和样例重叠 来看,联邦学习落地应用主要分为横向联邦和纵向联邦两大场景。
(1)横向联邦学习。横向联邦学习的开源项目主要集中于欧美,如Google开源的TensorFlow-Federated、USC开源的FedML、CMU开源的LEAF等等,横向联邦学习主要面向C端客户,单个参与方数据量较少,但参与方数量可达千万甚至亿级,客户端数据不出域。
(2)纵向联邦学习。纵向联邦学习的开源项目主要来自中国,如微众银行开源的FATE,百度开源的PaddleFL,阿里开源的EFLS,京东开源的FedLearn等,纵向联邦学习主要面向B端客户,参与方一般为两方或多方,参与方比较少,但各方之间建模的数据量很大,各方明文数据不出域。
04 可信执行环境(TEE)开源介绍
可信执行环境(Trusted Execution Environment, TEE)通过在硬件设备上构建一个安全区域,保证其内部加载的程序和数据在计算全过程中的机密性、完整性和准确性。与纯软件的密码学隐私保护方案相比,在可信区域内执行的计算逻辑与在明文设备上运行并无差别,所以没有可用性方面的限制,计算表达能力很强,计算效率很高。但在安全性上,TEE技术本身依赖硬件环境,所以必须确保芯片厂商可信,而且与密码学中以数学困难问题保证安全不同,其硬件安全还存在侧信道攻击等其他安全问题。目前,TEE的硬件支持主要基于Intel的SGX以及ARM的TrustZone等技术,主要掌握在国外芯片厂商手里,近两年国内计算芯片厂商海光、飞腾、鲲鹏等也在积极推出自主实现的TrustZone功能。
(1)Occlum项目为蚂蚁集团开发的高效应用TEE环境的软件开源项目,其可以支持高效的多任务处理,并且提供多文件系统的支持。
(2)Gramine项目(前身为Graphene)即 Intel 为其SGX硬件设备提供的一套的TEE软件开源项目,可以成为诸多上层TEE应用提供基础的应用TEE硬件的能力。
(3)OP-TEE项目为基于 ARM的TrustZone 硬件设备的TEE开源项目,提供了对于TrustZone 类TEE硬件设备的硬件应用访问能力。
(4)百度的MesaTEE项目,该项目已经加入到 Apache开源基金会,当前的项目名称为Teaclave,其是一个通用的安全计算平台,且结合百度自身的深度学习框架能力,具有安全性、通用性与易用性等特点。
(5)Asylo项目为Google开源的一套支持 Enclave 应用的TEE开源项目。
(6)Edgeless社区发起的的Constellation、EdgelessDB、MarbleRun、Ego一系列项目提供了云原生平台下TEE的开源解决方案。
05 同态加密(HE)技术开源现状
全同态加密(Fully Homomorphic Encryption, FHE)是隐私计算中的一项重要原语级技术,因为其具有很强的通用性和应用潜力,也被称为密码学“皇冠上的明珠”。同态加密依赖于公钥加密体系,数据加密之后基于密文进行计算再解密得到的结果与直接基于明文计算结果相同。其可以被应用于MPC、联邦学习等各种隐私计算应用场景之中,全同态加密技术甚至在理论上对MPC、联邦学习、TEE等技术应用场景均有替代潜力,具有很大的想象空间,但目前其性能仍然很难达到实用级别。全同态加密技术根据密文计算原理的构造方式不同,可以分为基于布尔电路与基于算术电路两种,前者可以支持任意线性与非线性运算,但性能较差,后者一般支持同态加法与乘法操作,目前性能在某些应用中已经可以达到实用级别,还有一条技术路线可以将两者进行转换,综合发挥两者的优势,达到应用的最优效果。除了按照技术原理分类之外,目前还有一些通过硬件加速实现同态加密计算的开源方案。
(1)基于布尔电路构造的全同态加密开源项目。包括 TFHE、FHEW、 OpenFHE,Concrete、以及国内第一个同态开源项目HEhub等,可以支持任意线性及非线性运算,但效率还有待提升。
(2)基于算术电路构造的全同态加密开源项目。包括微软开源的SEAL,IBM开源的HElib,OpenMined开源的TenSEAL,此外还有Lattigo、HEAAN、OpenFHE等开源项目,基本都是基于多项式环构造,支持SIMD,效率较高。
(3)综合了布尔电路与算术电路同态加密的开源项目。包括OpenFHE、Hehub、PEGASUS等项目,其可以将两类全同态加密方案在计算过程中进行转换,既可以发挥算法电路的高效率优势,又可以利用布尔电路的非线性运算能力。其中Hehub是目前唯一一个国内自主研发的同态加密算法开源库,其在易用性、扩展性和效率方面具有一定的领先优势。
(4)全同态加密硬件加速的开源项目。包括cuHE、cuFHE、cuYASHE等项目,这些项目基本都是基于GPU实现的运算,目前其可以实现全同态加密计算相对于CPU计算1个数量级以上的效率提升。
文末
以上内容基本涵盖了2022年全球隐私计算行业的开源现状,目前已呈现出覆盖领域完整、应用工具丰富、百花齐放、百家争鸣的局面,并且仍在高速发展中。开源促进产业落地,产业兴旺同时也能反哺开源发展,学术界和工业界的开源齐头并进,在两方同时持续发力。
本文仅为《全球隐私计算图谱报告》的全球隐私计算开源一览章节的部分内容。《全球隐私计算图谱报告》主要由OpenMPC社区(开放隐私计算)联合多家行业内知名政企单位、研究机构和行业专家,经过广泛调研征集和深入细致讨论共同完成。
声明:本文来自开放隐私计算,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。