袁博 王思源
(中国信息通信研究院云计算与大数据研究所,北京 100191)
当前,全球进入数据驱动的数字经济时代,数字经济已成为新一轮数字科技革命和产业变革的焦点,数据也成为了关键生产要素。数据要素要合规自由流通才能源源不断地释放价值,但受限于数据盗用、错用、滥用等安全事件的频发,国家、企业和个人对数据安全保护的重视程度空前提高,要实现数据利用和数据安全并重,“可用不可见的”隐私计算(Privacy Preserving Computing)技术正是破题的关键。通过对隐私计算从前沿技术到落地产品的发展历程进行研究,进而分析了隐私计算产品的现状,并结合实际工作提出一套隐私计算产品评估体系,最后对隐私计算产品评估体系未来的发展进行了展望。
隐私计算是在保护数据本身不对外泄露的前提下实现数据分析计算的一类信息技术,主要包括多方安全计算(Secure Multi-Party Computation,MPC)、可信执行环境(Trusted Execution Environment,TEE)、联邦学习(Federated Learning,FL)等核心技术。
1978年,同态加密[1]的出现,将加密技术研究从静态引向动态;1979年,Shamir[2]提出秘密分享方案,使分发者能够通过秘密多项式将信息分解为多个秘密并发送给持有者,各持有者无法获得原始信息;1981年,不经意传输协议[3]也被提出,在这个协议中,消息发送者会从一批待发送消息中发送一条给接收者,但发送者无法知晓实际发送了哪一条消息。基于上述的研究工作基础,图灵奖得主姚期智院士于1982年首次提出了多方安全计算协议[4],协议主要研究了在无可信第三方情况下的安全计算约定函数问题。在随后的几年内,姚期智院士针对百万富翁问题又提出了混淆电路解决方案[5],基于布尔电路的思想构造安全计算函数,使参与者可以使用某个数值来进行计算,而无需知道具体数字内容。至此,依赖同态加密、秘密分享、不经意传输、混淆电路等基础技术、协议的多方安全计算逐渐走向成熟。
联邦学习可以在不同的数据结构、不同的机构间发挥作用,没有领域和算法限制,同时具有模型质量无损、保护隐私、确保数据安全的优势。2013年,王爽教授团队提出了分布式隐私保护在线机器学习的概念[6],隐私保护与机器学习第一次被关联起来;随后,谷歌也于2016年提出了横向联邦学习[7],以解决安卓手机终端用户在本地更新模型的问题;2018年,杨强教授提出联邦迁移学习[8]的解决方案,将迁移学习与联邦学习进行了结合。
可信执行环境技术是指运行在隔离硬件之上的隔离安全操作系统,以及提供授权安全软件的安全执行环境。该技术实现了不同程序的隔离运行,从而保障了用户关键代码和数据的机密性、完整性不受恶意软件破坏。可信执行环境的标准是在2009年由开放移动终端平台组织(Open Mobile Terminal Platform,OMTP)智能终端安全工作组提出[9];2011年,国际标准化组织Global Platform也着手开始研究、制定可信执行环境的相关标准[10]。
随着以上各类基础技术的发展,隐私计算技术最终成型。隐私计算技术融合了人工智能、密码学、数据科学等众多领域,借助于多方安全计算、可信执行环境、联邦学习、去标识化及脱敏技术等为代表的现代密码学和信息安全技术,在保证原始数据安全隐私性的同时,实现了对数据处于加密状态或非透明状态下的计算和分析。2019年,Gartner在Hype Cycle中首次将隐私计算列为处于启动期的关键技术[11];2020年,隐私计算被列为Gartner的十大重要战略趋势之一[12]。
隐私计算相关技术虽然从20世纪80年代左右就开始出现,但因为其计算效率是明文的10万倍以上,因此几乎不具备实际使用价值,更多作为前沿技术被持续探索研究。
近年来,隐私计算逐步从技术走向了应用。一方面算法和硬件优化极大提升了计算效率。得益于长期以来隐私计算底层算法的持续优化,更高效的算法不断提出,GPU、FPGA等硬件辅助加速,跨公网的计算节点间通信速率不断提升,隐私计算产品初步具备了使用价值。另一方面,国家和社会对数据安全保护和数据合规流通的意识和要求逐步提高,以往的明文数据交易流通方式在很多场景下不再适用,也使得隐私计算具备了更多使用动力和使用空间。因此,隐私计算逐步从技术研究走向实际应用,当前在一些特定的联合查询、隐私统计、联合建模和联合预测等场景上已经可以满足实际生产需要,相应的隐私计算产品也逐步成熟和丰富。
近年来,隐私计算相关产品数量呈现爆发式增长的态势,相关产业蓬勃发展。根据中国信息通信研究院云计算与大数据研究所统计,参照中国信息通信研究院云计算与大数据研究所公布的隐私计算相关测评的产品情况,2019年下半年为5款、2020年上半年为10款、2020年下半年为26款,增长十分迅速[13]。从互联网头部企业、电信运营商、知名大数据公司到隐私计算技术研发初创公司,越来越多类型的企业加入隐私计算技术提供者的行列中。
技术及应用的发展也使得隐私计算相关产品的架构、功能逐渐成熟。当前,大部分产品都已支持对外提供服务,具有较高的产品化、商业化程度,普遍具备了调度管理、数据处理、联合计算、运维管理等基础功能,能够满足用户的通用性需求。
随着技术发展以及各厂商在观点验证(Proof of Concept,POC)阶段的不断尝试,隐私计算产品呈现出相关技术深度融合,以及工具化、模块化的特点。应用隐私计算能够实现数据的可用不可见,但这只解决了数据流通中的一个环节。若要真正发挥出隐私计算的技术价值,推动数据可信流通,还需要产品具有多技术储备,并与相关技术不断融合,共同发挥作用。就隐私计算三大技术融合而言,多方安全计算重安全,联邦学习重效率,可信执行环境重通用,一些隐私计算产品兼容了多种技术,使用户能够在面向不同业务时,根据需求选择与之相适应的技术。就隐私计算产品与其他相关技术融合而言,与云计算融合,在支持云端数据存储、处理的同时加强安全与隐私的控制;与大数据平台融合,通过嵌入大数据平台、共享接口,成为大数据平台中的关键组件;与人工智能融合,支撑多方数据安全共享,优化训练效果、提升模型精度;与区块链融合,借助区块链的特性实现存证与审计,增强多方信任。
在提供完备功能的通用平台的基础之上,如何满足用户的个性化与定制化需求、提升用户使用效率将成为产品形态趋同的形势之下,技术提供者提升竞争力的关键。以金融机构为代表(特别是银行)的业务需求方,对于计算任务中的具体算法通常有定制化的需求。当前,大部分产品都能够根据用户需求提供封装好的定制算法,在此之上,少量产品已经支持用户在产品前端自定义配置算法。针对用户在应用过程中的个性化功能配置需求,部分产品通过模块“自定义”,组件“拖拉拽”的形式,以支持用户应用流程自定义配置。现阶段,隐私计算产品普遍采取轻量化部署形式,在几个小时内便可完成部署,并针对不同系统提供多样化的客户端。
2.2.1 隐私计算产品亟需统一规范和评估
从生产角度来看,隐私计算行业作为新兴行业,相关产品数量和种类在增长迅速的同时,也出现了产品质量参差不齐、鱼龙混杂的现象,行业需要一个统一的门槛来提升整体产品质量。从使用角度来看,作为新兴技术,隐私计算产品的使用者很难综合判定选择使用什么样的隐私计算产品,因此亟需建立统一的隐私计算产品规范和产品评估体系。
2.2.2 隐私计算产品性能仍需提升
在技术特点上,隐私计算相关的密码学技术有“牺牲性能换来安全”的特点,这使其在计算效率上存在先天劣势。虽然算法算力的优化在促进多方安全计算性能不断提升,但由于其加密机理复杂、交互次数繁多,当应用逐步向更大规模数据推广时,性能不足将成为其关键的阻碍。
2.2.3 隐私计算产品安全性有待验证
隐私计算产品的安全边界和等级的界定需要考虑不同行业、不同技术的差别,也要平衡实际应用中计算的准确性和计算效率的要求,因此作为一项保护数据隐私的新技术,因其技术复杂,市场尚不成熟,隐私计算产品的安全性仍有待验证。
制定共性的评估体系和标准,能够将各类复杂的隐私计算产品转化为易于理解的指标形态。从供应商角度来看,共性的评估体系能够有效促进厂商之间的有序发展,建立行业的技术门槛,提升供应商的服务能力。从市场用户角度来看,共性的评估体系能够帮助用户理解技术特点与能力,便于用户选型。
本文提出的评估体系包含基础能力评估、性能专项评估、安全专项评估(见图1)。基础能力评估能够反映出隐私计算产品功能的通用性程度;性能专项评估能够反映出隐私计算产品在满足安全性和准确性门槛下的计算效率;安全专项评估能够反映出隐私计算产品在各安全维度下的安全等级。
图1 隐私计算产品评估体系
3.1.1 基于多方安全计算的数据流通产品
基于多方安全计算的数据流通产品主要功能是在保证数据安全的前提下实现多方数据的联合计算,需要从数据相关基础能力、编译及计算能力、数据流通相关管理能力、流通产品安全性健壮性稳定性相关能力、性能等角度评估此类产品。表1为基于多方安全计算的数据流通产品基础能力测试项。
表1 基于多方安全计算的数据流通产品基础能力测试项列表
3.1.2 基于联邦学习的数据流通产品
基于联邦学习的数据流通产品主要功能是在保证多个参与方各自原始私有数据不出数据方定义的私有边界的前提下,协作完成某项机器学习任务。需要从调度管理能力、数据处理能力、算法实现、效果及性能、安全性等角度评估此类产品。表2为基于联邦学习的数据流通产品基础能力测试项。
表2 基于联邦学习的数据流通产品基础能力测试项列表
3.1.3 基于可信执行环境的数据计算平台
基于可信执行环境的数据计算平台是通过软硬件方法构建的一个安全区域,可保证在安全区域内部加载的代码和数据在机密性和完整性方面得到保护。需要从任务处理能力、算法拓展性、环境验证、通信安全性、计算机密性、一致性、数据存储、审计、运维等角度评估此类产品。表3为基于可信执行环境的数据计算平台基础能力测试项。
表3 基于可信执行环境的数据计算平台基础能力测试项列表
3.1.4 区块链辅助的隐私计算技术工具
隐私计算虽然实现了在多方协作计算过程中的数据可用不可见,但是计算过程和结果均缺乏可验证性。将区块链技术对计算的可信证明应用到隐私计算中,可以辅助增强隐私计算任务中数据端到端及全生命周期的隐私性、安全性和可追溯性。对于区块链辅助的隐私计算技术工具,需要从系统管理能力、数据处理能力、计算能力、安全性、性能等角度进行评估。表4为区块链辅助的隐私计算产品基础能力测试项。
表4 区块链辅助的隐私计算产品基础能力测试项列表
隐私计算产品普遍具备的计算功能可以概括为基础运算、联合统计、隐匿查询、安全求交、特征工程、联合建模和联合预测七大类,各类算法的安全性、结果的准确性、计算耗时,三者之间相互影响、相互抵消,需要持续不断优化,才能达到更高层次的平衡。满足安全性与准确性要求是评估的必要条件,计算耗时是评估的主要参考维度。面向不同场景的计算耗时测试只有满足安全性、准确性要求才具备有效性。基于多方安全计算和基于联邦学习的隐私计算产品在覆盖的场景范围和安全性要求上略有差异。
3.2.1 安全性要求
隐私计算产品应满足通信信道安全、身份认证、计算结果安全、安全参数、密码安全等通用性安全要求。对于每种不同的算法,产品也应满足算法层面的安全要求,从而保证在产品的使用过程中,用户数据隐私不会被泄露。
性能专项评估的主要功能是在尽可能保证相同效果的前提下对比不同产品的性能表现。因此,该评估的安全性要求仅为最低可接受的门槛值,评估方式包括专家评审、一致性检验等。首先,需要对产品的设计文档、算法说明、参考文献、已公开发表的论文进行评审,确定产品的安全等级;其次,需要对隐私计算产品的核心代码、关键日志、通信报文进行交叉核验,确认产品的实际方案与评审内容一致。
3.2.2 准确性要求
隐私计算产品在某些特定算法中会舍弃或丢失部分精度,这导致了其最终的计算结果与明文直接计算存在一定程度的偏差,小范围内的偏差在实际应用中是可以被接受的。因此,针对各种不同的算法,应设置不同的准确性要求,计算结果满足该要求则表示其他成绩有效。
在基础运算、联合统计、特征工程等场景中,使用隐私计算产品得到的结果和明文本地计算结果的相对误差进行核验,相对误差应保持在业务可接受的范围内;在隐匿查询、安全求交和联合预测等场景中,隐私计算产品得到的结果和明文本地计算结果应保持一致;在联合建模场景中,使用同样的数据集样本、输入特征、训练参数,分别使用隐私计算产品和传统机器学习程序进行建模训练,核验隐私计算产品训练得到模型的评价指标和明文基准模型的评价指标是否保持在较小的绝对误差范围内。
3.2.3 计算耗时
计算耗时是性能专项评估的主要参考维度,当任务的执行过程满足安全性要求且结果满足准确性要求时,计算耗时能够直观地反映出产品性能的优劣,具有一定程度的可比性。在计算耗时的测试中,除了需要记录任务的总耗时外,还应记录任务各阶段耗时,以体现不同的产品的差异性。
隐私计算产品的安全评估方法主要包括专家评审及一致性验证。首先,需要对产品的设计文档、算法说明、参考文献、已公开发表的论文进行评审,确定产品的安全等级;其次,需要对隐私计算产品的核心代码、关键日志、通信报文进行交叉核验,确认产品的实际方案与评审内容一致。
安全评估的参考维度包括算法安全、安全参数、数据安全、通信安全、系统安全、结果安全、日志与存证。与性能专项评估中的安全性要求不同,安全专项评估的主要功能是对比不同产品的安全性、隐私性。在安全专项评估中,设置了多个等级的安全需求,根据产品在每个维度中每个测试项的表现综合定级。
由于隐私计算技术是解决当下数据利用与数据安全并重发展的关键,隐私计算产品化、商业化进程逐步加快,因此对隐私计算产品进行综合评估显得尤为重要。本文阐述了隐私计算产品化的发展历程和现状,并为当前处于早期发展的隐私计算提出了一套产品评估体系,主要就隐私计算相关的多方安全计算、联邦学习、可信执行环境等关键技术和区块链隐私计算融合技术提出了功能评估方法,验证产品的调度管理、数据处理、联合计算、运维管理等基础功能,并在此基础上提出了隐私计算产品的性能、安全性的评估方法,以此衡量隐私计算产品在关键风险点上的安全性和重点算法场景下的性能表现。
隐私计算存在多种不同的技术路径,技术路径之间的差异明显,同一技术路径下不同产品的实现也相互独立,数据资源的互联互通只能基于不同的技术平台分块实现,增加了应用侧的使用成本。作为数据合规流通的关键技术手段,隐私计算技术打造的产品和平台下一步将有更广泛的互联互通趋势,未来可能会演变为数据流通的基础设施,具备公共用品属性。因此,隐私计算跨平台互联互通的技术规范和评估方法也是下一步需要关注的重点。