当前位置: 首页 > 网络应用技术

Paillier半均匀加密:原理,有效的实施方法和应用程序

时间:2023-03-07 18:46:33 网络应用技术

  1个背景

  “数据安全法”从9月1日起正式实施,“个人信息保护法”也将在两个月后实施,这意味着对数据安全和隐私保护的监督将在一年内进行。合规性紧缩的背景,“数据岛”的现象变得越来越明显。如何实现安全的数据循环,保护数据隐私的价值和数据价值以及支持各方的联合计算是一个问题,这是一个问题数据平台需要解决。隐私计算技术旨在实现“可用数据”的目标并具有广泛的应用程序前景。)和安全多方计算(MPC)列出OTSPOT的当前学术研究,并受到广泛关注。

  2什么是相同的状态加密(HE)?

  他是一种特殊的加密方法,可以直接计算到加密数据,例如添加和乘法,计算过程不会泄漏有关原始文本的任何信息。计算结果仍然是加密的。用键解密的用户将处理密文数据解密后,获得的结果是原始文本的结果。

  根据支持类型和支持级别,可以将相同的状态加密分为以下三种类型:

  在Rivest于1978年首次提出了同一态加密的概念之后,多种解决方案支持PHE,例如RSA,GM [13],Elgamal [14],Paillier [1]。一个又一个又一个,例如bgn [16]。在如何实现方面,学术界很长一段时间都没有答案。直到2009年,Gentry [28]使用理想的网格来构建第一个FHE解决方案,这导致了一个解决方案学术界的感觉并引发了解决方案结构的研究繁荣。随后,出现了许多出色的解决方案,包括BFV [36],BGV [37],CKKS [38],以及多个出色的开源算法图书馆,作为密封[39],Helib [40]等。

  3为什么您需要半孔子加密(PHE)?

  一般安全计算方法不足

  隐私计算的应用程序方案非常广泛。除了满足多方的通用计算(计数或布尔计算)功能外,还有隐私集合集(PSI)[17],隐私保护机学习[4],加密数据库QUASEQUERY [9],住房签名[3]和其他更细分的应用程序。但是,在几种主要的通用 - 使用计算技术路线中,每种方法都有其自身的效率/安全性缺陷。在计算有限的乘法后,需要更复杂的是要清除噪声操作。经典的一般MPC协议通信开销很大,TEE的安全性高度依赖于硬件制造商,并且无法在密码学中提供严格的安全性。在复杂的计算情况下,通常不可用一种方法可以单独使用某种常规方法,该方法是还可以刺激学者研究特定场景的特定解决方案。通常根据特定情况定制可行的解决方案。通过结合和优化不同的技术组件,以获得安全有效的解决方案,以准确满足场景的需求。

  PHE首次亮相:辅助多重隐私计算方案

  图1.1。PHE的应用程序场景

  由于一般安全计算方法的某些缺点,并且在某些特定方案中仅操作(例如添加)以完成该功能,因此PHE已用于隐私计算领域。在多个开源库(例如命运[31 31))和大量的学术上衣(例如标准普尔,NDS,41811等)具有其数字。乘法使其成为隐私计算的重要基本组成部分,可以帮助完成各种隐私计算功能:

  1)隐私保护数据聚合

  因为在多方协作的统计场景中,法语PHE可以直接在无泄漏文本上直接执行添加和操作,因此可以完成安全统计和功能的功能。

  2)通过乘法三元组生成

  一般的安全计算可以根据不同的计算电路分为计算和布尔计算。为了计算计算,难度是如何繁殖。使用预生产乘法三个-Yuan组来协助乘法操作的方法可以大大减少乘法方法的在线开销,这是当前最流行的方法。计算三个元组乘法组的重要工具。它已应用于多个顶部额外的解决方案(例如NDSS [11],S&P [21])和实际产品(例如ShareMind [2])。计算具有重要意义。

  3)构建特定的隐私保护协议

  在机器学习预测分类方案中,如果具有模型的聚会是不可信的(例如外部制造商),那么当数据团进入样本进行预测分类时,可能需要样本数据的隐私。,可以构建隐私保护比较协议和Argmax协议,并可以进一步构建隐私保护简单的贝叶斯分类器和Ultra -Flat -Plane决策分类器[24]。此外,PHE还可以构建一个忽略的选择协议,以支持隐私保护决策决策树分类器[25]。

  4)住房签名

  传统的签名方法要求需要从存储介质(例如磁盘)到内存的完整私钥,并且存在泄漏的风险(例如特洛伊木马的偷来偷来的病毒,病毒和侧渠道攻击等等。)。阈值签名的利用可以有效避免这种风险,允许多方协作完成签名过程,并确保在任何一方中未恢复私钥。特定的PHE算法可用于实现客户端签名[3]和相关解决方案已在组密钥管理系统中实施[22]。

  5)简单地分享

  相同的国家秘密共享是一种切割 - 边缘安全计算技术,可用于大大减少安全计算的交互式通信量。具有特定代数结构的PHE方案已专门设计用于实现相同的秘密共享[10] [10],具有广泛的应用前景。

  6)隐私收集寻求

  PSI方案由PHE与多项式结合[17]构建。

  4 Paillier:最著名的一半 - 类似性加密解决方案

  Paillier是一个支持加拿大Tongshu [1]的公共密钥密码系统,该系统最初是由Paillier在1999年Eurocrypt提出的。然后,在PKC'01中提出了Pailier解决方案的简化版本26,这是最佳解决方案,这是最佳解决方案当前的Pailler解决方案。由于许多PHE方案,由于高效率和完整的安全性证明的特征,Pailier Solution的特征被广泛用于主要主题和实际应用中。它是隐私计算方案中最常用的PHE实例化方案之一。

  支持同一状态相同状态的其他密码系统包括DGK [5],OU [6]和基于方案的方案[12]。解密较高,但是由于算法的正确性和安全性尚未在学术界进行广泛研究和验证,因此我们的实验表明算法的解密部分存在于Algorithm.Deceminal的存在中,因此不建议使用算法的部分。在行业代码中,OU和基于网格的额外计算效率更有效,它也是PHE的良好候选者。该方案中的OU频率相对较低,并且基于方案的解决方案的大小很大,很大,在某些特定情况下,它具有自己的优势。

  数据技术和产品数据安全平台团队将对Paillier加密解决方案的原理和有效实施方法进行研究。使用多种优化方法来实现当前最佳的Paillier解密效率,这可以帮助基于Paillererererererererererererererererererererererererererererererererererererererererererererererererererererererererererererererererererererererererererererereereathe集团的真实商业场景,帮助基于Paillier加密的上层协议。

  1加法加法的定义

  在描述特定计划之前,我们定义了Phe的添加。首先,该方案的所有算法具有。

  除了解密外,他还具有处理密文的能力,因此您还应该具有“处理”算法。在添加phe的情况下,受支持的算法具有相同的状态和相同的拖把数量(标量乘法可以视为多个添加)。

  2 Paillier解决方案描述

  在论文[1]中提出了原始的pailier溶液。以下描述了解决方案:

  关键一代

  加密

  解密

  处于同一状态

  千分尺

  3正确性和安全性

  解密的循环

  微

  千分尺乘数正确性

  安全

  Pailier解决方案符合加密方案的标准安全定义:语义安全性,即在选择显式攻击的情况下的类别的不重音(IND-CPA)。该方案的安全性可以归因于剩余假设的确定。几十年来,全面研究没有任何多项式时间算法可以破坏,因此Pailier加密解决方案的安全性被认为是非常可靠的。

  有关详细的安全性证明,请参考该论文,我不会在此处详细介绍。

  1优化参数选择

  根据论文[23]中的描述,为了简化算法的计算,算法可以在关键生成阶段采用G = n+1。简化如下:

  对于g^m =(n+1)^m,根据两个项目[43],因为:

  第一个M-1项目是n^2的倍数,它在模具n^2下消失,因此此处的模块索引操作被简化为一次性乘以,这加速了加密过程:

  2使用Pailier-DJN优化解决方案

  图3.1优化1和优化2

  3使用中国剩余定理(CRT)加速模式

  定理介绍

  例子

  CRT应用于Paillier加解密过程

  图3.2用CRT优化

  如果使用CRT加速,计算器必须知道模量n^2(p^2,q^2)的分解。(p^2,q^2)是私钥的一部分,因此我们可以直接直接将CRT应用于解密过程。对于加密过程,根据加密者是否具有私钥,我们将加密算法设计为两类,即公共密钥和算法ENG1(PK,M)和私钥加上算法ENG2(PK,SK,M)。如果加密消息的聚会只有公共钥匙,则称为标准公共密钥的标准公钥添加算法ENG1(PK,M);如果加密政党还具有公钥和私钥,您可以调用私钥和算法ENG2(PK,PK,PK,PK,SK,M),输入私钥(P^2,Q^2)CRT加速加密过程。

  我们在使用CRT后测试优化效果。由于DJN方案严格比原始Pailier原始方案好,因此我们仅将CRT应用于DJN。在使用CRT后,DJN的私钥加密和解密性能增加了约90%。具体数据如表4.2所示。

  4个估计计算

  在Java上,如果以上方法是由单个位开发的,则|n |/2次(| n | = 3072)比一个时间索引更长,并且无法达到优化计算的效果。

  当存储空间受到限制时,可以使用更轻且有序的估计方法来减少储存额41,并且有望在C/C ++下实现一定的加速效应。这里的模具使用BigInteger.multiply()()在Java中,模具索引使用BigInteger.modpow()。

  图3.3预测

  在添加秘密时会重复使用的变量将在关键生成过程中提前计算并保存,以避免在解密过程中重复操作。

  5使用JNI技术

  Java的复杂计算效率通常不如C/C ++好。以密码学中的共同模量索引为例,当设置数字n,底部数字B和索引E为2048bits时,执行1,000个BigInteger.modpow(Modpow(Modpow)()在Java中,使用GMP库运行的MPZ_POWM()仅成本1800ms,与Java相比约为60%。我们希望通过致电C ++加快时间消费的时间计算。

  Java本地接口(JNI)是Java语言的本地编程接口。它提供了几种API,使Java可以用其他语言互相呼叫(这种效率很难实现。

  使用JNI桥,我们可以使用C/C ++具有更高效率的C/C ++来实施复杂的时间 - 效率更高,并通过JNI实现JNI实现Java的有效呼叫algorithm.我们已经开发了原始Paillier方案的JNI调用版本和优化的JNI调用版本DJN算法,使用C ++编写核心算法,并使用JNI通过JAVA包装类调用C ++库。在JNI的应用后,解密过程的效率得到了显着提高。具体数据如表4.2所示。

  使用JNI调用C ++库提高效率的成本是失去程序的移植性(C/C ++是非交叉 - 平台语言)。因此,是否应根据场景灵活使用JNI。

  图3.4 JNI

  6包

  为了确保安全强度,Pailier方案中的明亮空间大小为固定n(例如3072bits),并且要加密的纯文本可能属于一个较小的空间(例如16bits)。如果您在这种情况下,根据普通加密方法将清晰的文本加密到1个密码文本中,清除空间将有很高的冗余(相当于16bits的高级别填充0,编码为3072bits和3072bits.crypting.crypting.crypting),效率在加密时间和空间中非常低。

  为了避免冗余,在短暂和固定增长的情况下,我们充分利用非正式空间,并将多个原告包装到一个解密2中。具体过程如下:

  与原始的一个时间更换相比,在使用包装优化后,添加秘密的时间消耗和模量索引的时间消耗减少到原始1/K。此优化的效果取决于该优化的效果明亮的文字的长度。本文暂时不进行实验测试。

  图3.5包装

  1个测试条件

  表4.1。测试条件

  2性能

  表4.2:Paillier钥匙生成,加密和解密性能以不同的优化

  如图

  从表4.2和图4.1可以看出,与原始方案相比,DJN优化方案加解密的效率增加了约100%。使用CRT优化后,私钥加密和解密的效率继续提高大约当CRT和固定碱基预计将同时使用时,随着窗户的大小的增加,公共密钥加密的效率进一步提高时,有90%。使用JNI调用C也可以大大减少计算开销,与纯Java的增加超过60%,或者在组合固定基本优化时尤其明显。W = 8)+JNI优化同时,公共/私钥加密的时间分别从原始方案的37ms消耗到大约2ms/1ms,并实现了定性的LEAP。使用不同的优化,该时间关键产生(预期)将会增长,但是与大量数据的额外时间和秘密时间相比,这部分是一个时间的消费。

  3个预期清单大小

  使用固定碱体要优化以预先优化以生成预期清单。请参阅表4.3,列表占用的空间的大小和窗口大小W的大小。

  表4.3:Paillier估计列表大小与窗口大小之间的关系

  表5.1。将此工作与一些现有的开源库进行比较

  1个业务场景

  在商业广告的在线启动场景中,广告商(例如商人)将广告曝光产品放在广告平台上(例如媒体平台),用户在单击广告后可能会产生购买行为,以实现广告转换和实现。评估平台中广告的实际收入,有必要计算单击的用户之间产生了多少消费量。“用户数据集位于广告商的一边。对于法律合规和商业秘密的影响,双方可能不愿意共享原始数据进行合作。

  2隐私上诉

  3解决方案:私人互动 - 伴随加入性(PIS-C)

  PIS-C协议[19]是在Euros&P'20会议上提出的,其核心想法是通过“标签,chuff和汇总”过程将PSI协议和PHE转换为PIS-C协议,以便广告客户最终获得了交点值。聚合结果确保没有其他数据泄漏(请参阅原始论文)。

  图6.1。基于DDH的PIS-C协议流程

  PHE在本协议中扮演着核心角色。协议中的“隐私保护”功能取决于广告商将其自己的交易数据带有PHE加密发送到广告平台,因此广告平台已完成集中量的汇总数据量没有看到原始数据。该计划已由Google [20]降落[20]。除了广告方案外,它还可以用于“行为数据分离和利益数据”的各种业务场景,其中具有一个应用程序中有很多想象力。

  数据技术和产品数据安全生产平台致力于研究和着陆尖端隐私计算技术。可以通过4种评估(例如信任环境)批准的产品和“联邦学习”为内部的多个实用业务提供了服务以及在经济之外。如果有隐私计算相关的技术合作意愿/业务需求/愿意转移的意愿,欢迎询问。

  参考

  信息安全和隐私会议。施普林格,柏林,海德堡,2007年:416-430。[6] Okamoto T,Uchiyama S.一个新的公钥CRC] //第21 ACM ACM操作系统原理研讨会论文集。2011:85-100。[10] Orlandi C,Scholl P,31(4):469-472。[15] Rivest R L,Adleman L,Dertouzos M L.关于数据库和隐私同态[J]。)。IEEE,2020:370-389。[20] https://security.googleblog.com/2019/06/helping-surance-more-without-more-html [21] Mohassel P,Zhang y。Secureml:可扩展隐私的机器学习系统[C] // 2017 IEEE安全与隐私研讨会(SP)。IEEE,2017:19-38.Bost R,Popa R A,Tu S等。对加密数据[C] // NDSS进行的机器学习分类。2015,4324:4325。[25]Kissá,Naderpour M,Liu J等。SOK:模块化和钥匙密码学。施普林格,柏林,海德堡,2001:119-136。[27] Acar A,Aksu H,Uluagac A S等。一项关于同态加密方案的调查:理论与成像[J]。分解调查(CSUR),2018,51(4):1-35。[28] Gentry C.一种完全的同型瘤方案[M]。斯坦福大学,2009年。[29] https://www.keylength.com/com/comen/4/ [30] https://github.com/fisco-bcos/paillier-lib [31] https://github。[43] https://en.wikipedia.org/wiki/binomial_theorem [44] https://en.wikipedia.org/wiki/wiki/chinese_remainder_theorem [46]%a9zout%27S_IDENTITY

  资料来源:阿里巴巴云