



随着大数据产业的迅速发展,通过优化算法和协议、云平台融合、软硬件协同设计等融合创新,提升计算、交互效率,将是当下和未来隐私计算发展的重要方向,国家政策也对隐私计算产业发展起到了有力的助推作用。工信部发布的《大数据产业发展规划》和《工业大数据发展指导意见(2022)》相继提出,支持企业加强安全多方计算等数据流通的关键技术攻关和测试验证,促进工业数据安全流通。通过技术与制度配套推进的方式实现数据保护,将是隐私计算发展的有效路径。隐私计算从技术层面实现了隐私保护与数据协作之间的动态平衡,对打破数据孤岛、释放数据价值具有不可替代的作用。
隐私计算是一个跨越众多领域的综合性技术体系,该体系在保护数据隐私的基础上,致力于解决数据存储、数据流通、数据应用等一系列数据安全问题,在充分挖掘数据价值的过程中,实现数据的“可用不可见”。从实现方式上,可以将隐私保护技术分为两大类。一类是基于算法加密保护的隐私计算,它通过多种技术手段实现数据在处理和分析过程中的隐私保护,例如,同态加密允许在加密数据上直接进行计算,计算结果解密后与在明文上计算的结果相同。全同态加密(Fully Homomorphic Encryption,FHE)作为同态加密的高级形式,支持更复杂的计算操作。另一类是新兴的安全计算范式——机密计算,它通过在基于硬件的可信执行环境(Trusted Execution Environment,TEE)中进行计算来保护使用中的数据(data in use),确保数据在计算过程中的机密性和完整性。机密虚拟化是机密计算领域的一个重要分支,它通过结合虚拟化技术和机密计算的硬件安全特性,为运行在虚拟机中的工作负载提供了更高级别的安全保护。
1.安全多方计算
安全多方计算 [1] 这一概念由姚期智院士于1986年首次提出,其核心问题在于如何在缺乏可信第三方的情况下,确保参与方的输入信息在计算过程中的安全性,同时避免向参与方泄露除结果外的任何信息。这一创新理念为数据安全计算领域的发展奠定了基础,并持续引领该领域的进步与突破。
如图1-2所示,参与方A、B、C参与了安全多方计算。他们分别将各自的输入数据 x A 、 x B 、 x C 输入安全多方计算框架,该框架确保数据在计算过程中的安全性。计算完成后,框架返回计算结果 y 到三个参与方,确保他们只能获取计算结果,而无法获取其他任何信息。这种安全多方计算方式确保了数据的隐私性,并防止了信息泄露。
图1-2 安全多方计算示例
百万富翁问题是安全多方计算领域的一个著名例子。该问题描述了两个富翁希望比较他们的财富,但又不希望对方或第三方知晓自己财富的具体数额。通过安全多方计算,这两个富翁可以在不暴露财富具体数额的前提下进行比较,从而确保了自己的财富隐私。
目前,实现安全多方计算主要有四种隐私计算框架,它们分别是不经意传输(Oblivious Transfer,OT) [2] 、混淆电路 [3] (Garbled Circuit,GC)、秘密共享 [4] (Secret Sharing,SS)以及零知识证明 [5] (Zero-Knowledge Proof,ZKP)。这4种框架为保障数据安全提供了多元化的解决方案。同时,安全多方计算技术已被成功应用于多种机器学习模型中,包括但不限于决策树、线性回归、逻辑回归、朴素贝叶斯分类器,以及K-Means聚类。可以看出,安全多方计算在提升机器学习模型的安全性方面发挥着广泛作用。
2.同态加密
同态加密 [6] 是一种具有革新性的加密技术,它可以在不解密的情况下对密文进行特定形式的代数运算,得到的结果仍然是加密的,并且解密后的结果与对明文进行相同运算的结果完全一致。这意味着我们能够在加密的数据上执行诸如检索、比较等操作,并得到准确的结果。而在整个处理过程中,数据始终保持加密状态,不会被泄露,如图1-3所示。因此,同态加密从根本上解决了将数据及其操作委托给第三方时的保密问题,对于云计算等各种应用场景具有巨大的实际意义。
图1-3 同态加密示例
同态加密一直是密码学领域的热点研究课题。在以往的研究中,人们只发现了一些部分实现同态加密的方法,这些方法通常只能执行有限的运算操作。2009年9月,克雷格·金特里发表了一篇突破性的论文 [7] ,从数学角度提出了一种全同态加密的可行方法。这种方法允许在不解密的条件下对加密数据进行任何可以在明文上进行的运算,从而实现了同态加密的全面突破。这一突破为同态加密技术的进一步发展和实用化奠定了坚实的基础,并引发了密码学和信息技术产业的广泛关注和研究热潮。
同态加密技术的发展历程是不断追求创新和突破的过程,如图1-4所示。它的概念起源于20世纪70年代,Ron Rivest、Leonard Adleman和Michael L.Dertouzos于1978年首次提出了同态加密的思想。这一创新的加密方式不同于以往关注数据存储和传输安全的加密技术,更注重在数据处理过程中保护数据不被泄露。
随着研究的深入,同态加密算法根据支持的同态运算的类型和深度被划分为三大类:部分同态加密(Partially Homomorphic Encryption,PHE)、类同态加密(Somewhat Homomorphic Encryption,SWHE)和全同态加密(Fully Homomorphic Encryption,FHE)。在同态加密技术发展的前30年里,部分同态加密和类同态加密取得了显著进步。其中,部分同态加密被进一步分为乘法同态加密和加法同态加密,RSA算法和Elgamal算法是乘法同态加密的典型代表,Paillier算法则是加法同态加密的杰出代表。此外,BGN方案由于仅支持一次乘法同态运算,被视为类同态加密的代表算法。
图1-4 同态加密发展历程
2009年,克雷格·金特里在一篇里程碑式的论文 [7] 中提出了基于理想假设的全同态加密系统,该系统被认为是第一代全同态加密系统。随后,BGV和BFV作为第二代全同态加密系统进一步推动了这一领域的发展。而tFHE和FHEW则代表了第三代全同态加密系统的进步。近年来,于2017年被提出的CKKS引起了广泛关注,它支持针对实数或复数的浮点数加法和乘法同态运算,虽然计算结果为近似值,但这一特性恰好适用于机器学习模型训练等无须精确结果的场景。
今天的同态加密技术已经取得了显著的进展,它们不仅在理论层面丰富了密码学的研究内容,更在实际应用中展现了巨大的潜力和价值。
3.差分隐私
差分隐私 [8] (Differential Privacy,DP)是一项创新的隐私保护技术,由Dwork在2006年提出,旨在解决数据查询过程中的隐私泄露问题。该技术的核心思想是,在数据查询中,确保相近的查询有较高概率产生相同的结果,从而有效地避免攻击者通过对比查询结果的差异来窃取用户数据。同时,差分隐私还保证了数据查询的准确性,使数据查询方能够获得完整的数据统计特征,但无法获取精确到单条记录的信息。
差分隐私作为一种通用的隐私保护模型,在实现上主要依赖添加噪声的方法。这一技术具有广泛的应用范围,任何需要隐私保护的算法都可使用。只要算法中的每个步骤都符合差分隐私的要求,其最终结果便符合差分隐私的特性。因此,差分隐私技术适用于算法流程中的多个环节。
目前,差分隐私技术已经在推荐系统、用户行为分析、社交网络分析,以及联邦学习等多个领域得到了实际应用。例如,通过收集和分析用户的行为统计数据,差分隐私技术能够提高推荐算法、输入法和搜索算法等的性能。在这些领域中应用差分隐私技术,不仅能够保护用户的隐私数据,还能优化用户使用互联网产品的体验。
在联邦学习中,差分隐私技术主要应用在横向联邦学习中。具体而言,在联邦学习的参与方上传通过本地训练得到的模型梯度信息时,差分隐私技术能够通过添加扰动噪声的方式来防止攻击者从中推测出用户数据。这种技术在不导致过多通信和计算开销的情况下,有效地防止了用户隐私数据的泄露。然而,模型的收敛速度可能会在一定程度上受到梯度信息中噪声的影响,从而增加联邦学习的训练时间。此外,在实际应用中,确定合适的隐私预算是一个挑战。过高的隐私预算可能导致数据过度失真,过低的隐私预算则可能带来隐私泄露风险。因此,如何设定适当的隐私预算是差分隐私技术在实际应用中需要解决的一个重要问题。
通过这种方式,差分隐私不仅在理论层面为隐私保护提供了新的解决方案,更在实际应用层面推动了隐私保护技术的发展和进步,是平衡数据利用和用户隐私保护的强大工具。
4.零知识证明
零知识证明这一概念最早由麻省理工学院的沙菲·戈德瓦塞尔(Shafi Goldwasser)与西尔维奥·米卡利(Silvio Micali)于1985年在一篇题为《互动式证明系统的知识复杂性》的论文中正式提出。在该论文中,作者指出,证明者(Prover)能够在不泄露具体数据信息的前提下,让验证者(Verifier)确信数据的真实性。
零知识证明主要存在两种形式:交互式与非交互式。交互式零知识证明需要证明者针对每位验证者逐一证明数据的真实性;非交互式零知识证明则需要证明者生成一份证明文件,任何获取并使用该证明文件的人都能够进行验证。
目前,零知识证明有多种实现方式,例如zk-SNARKS、zk-STARKS、PLONK,以及Bulletproofs。这些实现方式在证明规模大小、证明者所需时间,以及验证时间等方面具备独特的优势与不足。
零知识证明具备以下三个基本特征。
●完整性:若陈述(Statement)为真,那么诚实的验证者能够相信诚实的证明者确实掌握了正确的信息。
●可靠性:若陈述为假,那么任何不诚实的证明者都无法成功说服诚实的验证者,使其相信自己拥有正确信息。
●零知识性:若陈述为真,那么验证者除了从证明者处得知该陈述为真这一事实,无法获取其他任何信息。
简而言之,创建零知识证明时,验证者会要求证明者执行一系列操作,而证明者只有在知晓底层信息的前提下,才能够正确完成这些操作。若证明者随意猜测一个结果,那么验证者很可能在验证过程中察觉并证实其错误。
5.可信执行环境
机密计算联盟(Confidential Computing Consortium,CCC)给出了机密计算的定义:通过在基于硬件的可信执行环境中计算,保护使用中的数据的机密性与完整性,防止未经授权的访问或篡改。
机密计算技术的核心在于通过基于硬件的可信执行环境进行计算,从而保护数据和应用,实现隐私计算的预期效果。作为机密计算的底层支撑技术,可信执行环境通常需要实现隔离执行、远程认证、内存加密等技术目标。目前主流的CPU厂商提供可信执行环境的实现方案。例如,英特尔的SGX和TDX、ARM的Trust Zone,以及AMD的SEV等,它们都是目前行业内广泛认可的可信执行环境实现方式。
具体来说,隔离执行利用软硬结合的隔离技术,将可信执行环境与非可信执行环境完全隔离,确保可信应用的可信计算基(Trusted Computing Base,TCB)仅用于应用本身和实现可信执行环境的基础软硬件;而其他软件,甚至操作系统内核等特权软件都可能被视为不可信或恶意的。远程认证则能够对可信执行环境中的代码进行度量,并向远程系统证明符合预期的代码正在合法的可信执行环境中运行。内存加密确保在可信执行环境中的代码和数据在内存中计算时保持加密状态,防止特权软件甚至硬件的窥探。
在机密计算的上下文中,未经授权的实体包括主机上的应用程序,主机操作系统,以及Hypervisor、系统管理员、服务提供商、基础设施所有者或对硬件具有物理访问权限的任何人。机密计算中的数据机密性指未经授权的实体无法查看可信执行环境中的数据;机密计算中的数据完整性指防止未经授权的实体篡改正在处理中的数据;机密计算中的代码完整性意味着可信执行环境中的代码不能被未经授权的实体替换或修改。总之,这些安全属性不仅保证了数据的机密性,还保证了所执行的计算是符合预期的,从而使人们可以相信计算的结果。
机密虚拟化技术是机密计算领域的一个重要分支。机密虚拟化技术通过可信执行环境技术,在虚拟化环境中创建隔离的执行空间,来保护虚拟机(Virtual Machine,VM)中的应用程序和数据。机密虚拟化技术为云服务提供商提供了安全技术底座,阿里云、谷歌云、微软Azure等也在积极探索机密虚拟化技术的应用,市场上已经出现了一些基于机密虚拟化技术的产品和服务,例如阿里云的机密虚拟机服务、蚂蚁金服的机密计算平台等。这些服务通过提供加密的虚拟机镜像和远程认证机制,确保数据在云环境中的安全。机密虚拟化技术的发展正在推动云计算和数据安全领域的进步,为敏感数据处理提供了新的安全范式。随着技术的不断成熟和应用场景的拓展,机密虚拟化技术有望在未来发挥更大的作用。
为了更全面地理解和比较前面章节介绍的各类隐私保护技术,本节对隐私保护计算技术进行综合性的对比与总结,如表1-3所示。
表1-3 隐私保护计算技术比较
安全多方计算以密码学为基础,其安全性可以得到密码学理论的严格验证。在整个计算过程中,各参与方的除计算结果外的任何信息都不会被泄露,保证了计算的高准确性。然而,由于包含了复杂的密码学操作,安全多方计算开销大、通信耗时长,在复杂计算场景中的应用受到一定限制。目前,安全多方计算主要适用于一些简单场景,如密钥管理、简单统计,以及线性的机器学习模型等。要想将其应用于更复杂的场景,一方面需要底层理论的创新突破,另一方面需要提升计算效率并优化通信复杂度。
同态加密拥有严格的密码学理论支撑,其所有运算均在密文状态下进行,从而确保了隐私数据的高级别保护和计算的准确性。但值得注意的是,某些同态加密算法可能仅适用于特定领域,或作为其他解决方案的一个组件。尽管全同态加密在理论上能够进行任何计算,但其巨大的计算负担使其只有借助专用硬件加速才能满足实际应用的性能需求。
差分隐私的核心目标在于保护计算结果,而不涉及具体的计算步骤。例如,当我们训练一个机器学习模型时,差分隐私通过在模型参数中引入适量的随机噪声,使攻击者难以从模型参数推测出训练数据的具体内容。需要明确的是,差分隐私并不涵盖建模过程的保护,这需要依赖其他隐私保护手段,如可信执行环境等。另外,由于差分隐私通过添加噪声来保护数据,不可避免地会对结果的精确性产生一定影响。因此,在那些对计算精度有极高要求的场合,差分隐私可能不是一个理想的选择。
零知识证明技术通常涉及复杂的数学运算,如大整数运算、椭圆曲线运算等,导致证明生成与验证过程的计算成本高昂,尤其在大规模数据或复杂命题证明场景下,对计算资源要求极高。同时,生成的零知识证明可能占用较大存储空间,给存储设备带来压力。例如,在处理海量金融交易数据的零知识证明时,所需的计算资源和存储容量可能超出普通服务器的承载能力。此外,在实际应用中,零知识证明系统的参与者之间需要建立一定的信任基础,确保各方遵循协议规则,否则可能出现恶意攻击行为,破坏系统的安全性与可靠性。
与其他隐私技术相比,可信执行环境展现出了独特的优势,因为它成功地平衡了安全性、通用性和高效性这三大关键要素。相较于其他隐私保护计算技术,可信执行环境的通用性和高效性尤为突出,它不仅能顺畅地支持通用计算框架和应用,计算性能也能与明文计算媲美。可信执行环境既可以作为独立的隐私计算工具,也可以与其他技术融合,共同强化隐私保护,特别是在涉及大数据、高性能和通用隐私计算的场景中,如安全可信云计算、大规模数据保密协作,以及隐私保护的深度学习等领域,可信执行环境成为一项至关重要的技术。然而,可信执行环境也存在一些不足,例如其信任链与硬件厂商紧密相连,这可能对机密计算技术的可信度造成一定影响。此外,从理论角度来看,目前的可信执行环境实现存在侧信道攻击的可能性,这是需要在实际应用中加以防范和考虑的风险。