针对恶意用户的安全聚合协议设计与实现

陈立军,张 屹,陈孝如

广州软件学院 软件工程系 广州 中国 510990

随着物联网和云技术的出现,数据成为重要的企业资产。如今,越来越多的公司从各种来源收集大量数据,并使用数据分析工具来获取有意义的见解,并从中获得价值。在这些工具中,安全聚合协议在过去的二十年里得到了深入的研究,此类协议的基本设置由多方与一个聚合器协调组成,该聚合器的目标是计算各方输入的总和,而不会泄露除聚合值本身之外的任何有关各方私有输入的信息。

在现有文献中有许多安全聚合解决方案,这些解决方案主要关注数据隐私问题,即在使聚合器能够计算和显示输入总和的同时,对各方的个人输入保密;另一方面,在输入的正确性和完整性方面,假定所有涉及聚合协议的各方都是完全可信的。虽然很少有解决方案将聚合器视为潜在的恶意对手,但在本文中,考虑了恶意方的存在,他们可以发送虚假的输入,而不是他们的合法输入,从而导致计算无用。本文研究了这种更强大的威胁模型,将协作方视为潜在的恶意方,并在该模型下构建了第一个安全聚合协议。与文献[1]类似,本文的解决方案允许聚合器以保护隐私的方式计算收集的输入总和,同时允许聚合一些单独的标签,以帮助验证计算的正确性;另一方面,只有当收集到的单个输入属于特定的时间间隔(当单个值低于特定的阈值)时,才正确计算此验证标记。

因此,本文的新解决方案扩展了文献[1]中的安全聚合方案,引入了一个初始阶段,在此阶段中,用户只有在其单个值低于某个阈值时才能计算有效的验证标签,否则,用户持有随机标签,验证将失败,这一初始阶段涉及到一个新设计的可编程伪随机函数(OPPRF),该函数在聚合器和每个用户之间执行,以避免聚合器发现私有输入,并在用户输入合法时输出特定的完整值。该方案是基于文献[2]中引入的私有集成员(PSM)协议设计的,这个特殊的PSM 协议被转换为类似于文献[3]的安全比较协议。

作为概念的证明,本文将新的安全聚合协议进一步应用于暴露于模型后门注入攻击的特定联邦学习场景。在文献[4]中,作者开发了一个机器学习模型的构造,在这个模型中,多方使用他们的私有局部模型参数协作来训练模型,而不向包括聚合器在内的其他各方透露这些参数,更具体地说,受信任的聚合器初始化模型并将其参数发送给各方,各方使用其本地数据集重新培训模型,并将模型参数的更新发送给聚合器,后者依次合并这些单独的更新以获得全局模型。在文献[5]中,作者指出,这些解决方案在追求其目标的过程中受到恶意方的干扰。本文评估了所提议的解决方案在这个特定环境中的性能,并验证了它对后门攻击的有效性。

后面内容总结如下:

(1) 提出了一种安全聚合协议的设计,将聚合者和协作方都视为潜在的对手;

(2) 作为一个构建块,本文开发了一个新的OPPRF 结构,使聚合器能够检查输入值是否低于给定的阈值。该结构基于Ciampi 和Orlandi 的PSM 协议[2],也可以独立使用;

(3) 引入了一种隐私增强联邦学习(FL),通过在聚合步骤中对FL 应用本文的安全聚合协议来抵御恶意用户;

(4) 实现了安全聚合来评估其性能;

(5) 验证了针对暴露于后门攻击的FL 场景的解决方案,通过识别最敏感的参数(后门攻击)属于神经网络的最后一层偏差值,并将本文的安全聚合应用于这些实际参数。

有一些关于保护隐私的聚合研究,如文献[6-8],即所有玩家都被认为是诚实的,所有的输入并无恶意;在文献[1]中,作者研究了聚合结果的更强篡改;最近,一些解决方案(如文献[9-10])实例化了通过数据模型的参数进行联邦学习的安全聚合,这些解决方案将以保护隐私的方式收集数据的用户视为潜在的对手;Youssef 等人[10]研究了用户对协作学习方案发起的潜在中毒攻击,该解决方案在秘密共享输入上使用聚合,在他们的解决方案中,他们方案的安全性依赖于两个不合谋的服务器的存在。此外,在文献[9]中,作者将秘密共享与随机屏蔽和数字签名结合起来,虽然这项研究考虑了积极的对手,但他们不能保证结果的正确性。另外,他们的解决方案需要所有用户彼此之间的协作,而在本文的解决方案中,每个用户只与聚合器通信。在文献[11]中,作者提出了一个名为Helen 的协作线性机器学习框架,在这个框架中,协作方被假定为恶意的,当各方执行局部计算时,作者使用零知识证明,正如论文中所述,Helen 不保护“坏数据”。因此,本文的解决方案可以看作是对海伦的补充。最后,本文提出了一个最新的解决方案FLGuard,来保护联邦学习过程免受中的多个后门攻击,该解决方案采用安全的两方协议,既满足了隐私要求,又防止了后门攻击。

其他内容组织如下: 在第2 节中,给出了关于本文的协议的底层基元的简要信息;在第3 节中介绍OPPRF 和安全聚合协议;第4 节中分析联邦学习的设置,并在其上应用本文的安全聚合协议;第5 节和第6 节分别包括安全性和性能分析;第7 节是本文的结论。

3.1 PUDA 协议

PUDA 协议[1]是一种安全的聚合协议,除了保证用户数据的私密性外,还可以保证聚合操作的正确性和聚合结果的完整性,不受恶意聚合者的干扰。该协议涉及一个可信的密钥经销商、一个数据分析器、一个聚合器和用户,这些用户的数据被收集和聚合,它的主要作用是在初始设置阶段生成全局参数和所需的密钥材料,进一步变成脱机状态,在实际协议中不扮演任何角色,聚合用户数据、接收结果并验证其正确性。更具体地说,在设置阶段,将安全参数κ作为输入,并生成以下参数:

素数阶p的循环组G1、G2和GT,其中g1和g2分别是G1和G2的生成元;

每个用户Ui来自Zp的n个加密密钥eki,eki被安全地发送到Ui(1≤i≤n),其中n是用户数);

在设置阶段之后,在协议的实际执行过程中,用户加密他们的私有输入并计算一个完整性标签。聚合器使用接收到的加密输入计算聚合值,并使用解密密钥解密结果。A 还计算聚合的完整性标签,完整性标签被发送到DA以验证结果,具体步骤请参见协议1。

3.2 不经意传输协议(OT 协议)

OT (Oblivious Transfer)[8]是发送方和接收方之间的安全两方协议,其中发送方输入两个消息(m0,m1),接收方输入一个选择位b,输出mb,而发送端不输出任何内容。它是一种可保护隐私的双方通信协议、接受者的隐私不被发送者所知道,使通信双方以一种选择模糊化的方式传送消息,也是密码学的一个基本协议,他使得服务的接收方以不经意的方式得到服务发送方输入的某些消息,这样就可以保护接受者的隐私不被发送者所知道。本文的安全聚合协议的实现也要用到OT 协议。

3.3 私有集成员协议

私有集成员关系(PSM)是一种多方协议,持有私有集的各方可以了解这些集的交集,仅此而已。Ciampi-Orlandi 在文献[2]中提出了一种两方PSM 协议,该协议输出的是交集的加密结果,而不是交集本身。该解决方案主要包括: 一方P1为其集合构造特定的图,另一方P2为其集合中的项跟踪图(无需注意)。值得注意的是,当各方集合的基数为1 时,可以实例化此协议以进行安全相等性检查。类似地,在本文的协议构建中,本文将Ciampi-Orlandi 的PSM 协议转换为安全比较协议的变体,如果他们的输入属于合法的间隔,本文使用该比较协议允许用户获得有效的加密标签值。

本文建议设计一种新的安全聚合协议,将以隐私保护方式收集用户输入的用户视为潜在的恶意用户,为此,建议通过引入一个初始阶段来扩展PUDA协议[1],在这个初始阶段中,只有当输入属于一个合法的间隔时,才能正确地计算单个标记。在这一阶段,基于文献[2]中提出的遗忘图跟踪思想,设计了一个新的遗忘可编程伪随机函数(OPPRF)。在这一节中,本文首先定义了一个可编程伪随机函数,并描述了OPPRF 的一个新结构,本文进一步提供了结果聚合方案的规范。

4.1 本文的OPPRF 协议

可编程伪随机函数(OPPRF)[2]是一种两方协议,其中一方P1和另一方P2分别输入一个密钥K和一个字符串x,P2输出FK(x),其中F是一个伪随机函数族,接收一个键K和一个字符串x并输出一个看起来随机的结果(P1什么都不输出)。

可编程伪随机函数(OPPRF)[12]被定义为OPRF 的扩展,其中协议为一些编程输入输出预定义的特定值(以及其他值的随机输出)。

对于本文的安全聚合协议,构造了一个OPPRF的变体,使得P2对应于用户,只有当x小于预定义的阈值时,才能学习到特定的值,否则,用户学习一个随机的值(例如FK(x))。为此,本文引入OPPRF 协议(见协议1),该协议将在持有私有输入x的用户(P2)和持有密钥ga和阈值λ的聚合器(P1)之间运行。最终协议,只有x小于或等于λ和P1学习kopprf,P2学习kopprf(ga)x,这个值帮助用户对验证标记的有效构造做出贡献;另一方面,如果是x>λ,则用户学习到一个随机的值,值得注意的是,该聚合器对私有输入x一无所知。

为了清晰起见,协议2提供了OPPRF协议的一个简单版本的规范,该协议只能在输入正整数时执行。

用户和聚合器运行lOT 协议,其中l是x的位长。在每一次OT 执行中,用户会学到一个关于结果的掩码信息,以及一个当x≤λ时需要去掉结果掩码的密钥。更具体地说,第i次OT 用户学习,其中,是掩码,xi-1是第(i-1)次对大多数的位x=xℓ-1||…||x1∥x0。在最后,对于ℓOTs,聚合器发送不同的密钥,如果x≤λ则用户了解到密钥用于加密用户可以提取kopprf(ga)x:

否则,输出将变成一个随机值。

为了使用户只有在x≤λ时才能从实际结果中去掉掩码,本文使用了Ciampi-Orlandi 的基于遗忘图跟踪的PSM 协议,该聚合器为x的每个比特分配三个加密密钥,并构建一个加密密钥链来构建安全比较协议。图1 显示了λ=100 的示例图,因为λ的最左边位是"1 ",所以当x的最左边位是" 0 "时,用户学习到k<2,否则在执行第一个OT 后学习到k=2。假设x=001,执行第一个OT 协议后,用户学习k<2。在第二次执行OT 后,由于x的第二位是" 0 ",用户收到Ek<2(k<1)、Ek=2(k=1)和Ek>2(k>1)。因为用户持有从先前OT 协议接收到的密钥k<2,所以只能解密Ek<2(k<1)。解密操作后,用户学习k<1,由于用户只知道k<1,它只能恢复k<0,它最终用于加密隐藏输出kopprf(ga)x所需的掩码。OPPRF 每一步的底层OT协议在协议2 中指定。

聚合器为OTs 准备消息对(每个潜在位值对应一条消息),这些消息包括用于加密/解密消息的密钥的加密,以便进行下一步。因此OT 协议链遵循图1 中所示的加密密钥的实际图: 子节点中的密钥使用父节点中的密钥进行加密。在协议2 的步骤5中,用户无意地跟踪这个图,这允许用户只学习树叶中的一个键。图2 描述了我们的OPPRF 协议在λ=100 和x=001 示例中的执行情况。从图中可以看出,由于用户的私有输入小于阈值,因此用户能够计算(ga)x。

图1 聚合器对λ=(100)执行的密钥加密的图表示(注意,在本例中从未使用到k>2 的路径,如果λ最左边的位是" 0 ",那么k<2 的路径将不会被使用)Figure 1 Graph representation of key encryption performed by the sink on λ=(100) (Note that in this example,the path to nar>2 is never used,and if the leftmost bit of arg is" 0 ",then the path to narg <2 will not be used)

图2 针对 x=(001) 和 λ=(100) 执行协议2Figure 2 executes protocol 2 for x=(001) and red=(100)

4.2 提议的安全聚合协议

在本节中,介绍所提议的安全聚合协议,分别将聚合器和用户输入一个阈值(λ)和私有输入(为Ui输入xi),聚合器输出的和用户的输入,如果小于λ每个用户的输入,否则,聚合器输出一个错误,表明至少有一个用户的输入大于λ。对于本文的解决方案的设计,本文使用了PUDA 协议[1]中的思想。在PUDA中,聚合器可以是恶意的,用户可以得到保证,他们输入的总和不会改变。在本文的例子中,除了实际和的正确性之外,聚合器还确保每个参与用户的私有输入小于λ的阈值。

本文的协议步骤在协议3 中给出,与 PUDA类似,初步设置阶段涉及一个可信的密钥经销商KD,它生成协议中使用的密钥。

设置:KD将安全参数κ作为输入并生成如下参数:

(1) 使用双线性映射e创建素数阶p的循环群G1、G2和GT,其中g1和g2分别是G1和G2的生成器;

(2) 选择一个散列函数H: {0,1}* →G1;

(3) 从Zp中随机选择加密密钥eki并将eki以安全方式发送给Ui(1≤i≤n),其中n是用户数量;

(5) 从Ui接收g2tki,其中tki由用户随机选择;

在本节中,将展示如何在一个真实的案例研究中使用本文提出的安全聚合协议,该案例研究包含一个联邦学习(FL)方案。根据定义,联邦学习方案允许跨持有局部数据样本的多个边缘设备训练模型,而无需交换它们。特别是,本文演示了如何在FL 中防止后门攻击,其中恶意的数据所有者试图仅对具有特定特征的特定输入扰乱联邦模型,通过使用本文的安全聚合协议,因此不公开本地模型参数。

5.1 案例研究: 后门攻击

在后门攻击中,联邦学习中的任何一个参与者都可以用另一个替代联邦模型,这样一来,(1) 新的模型对联邦学习任务同样准确;(2) 但恶意参与者管理模型对攻击者选择的后门子任务[5]的执行情况。例如,正如在文献[5]中所演示的,一个后门图像分类模型将具有某些特征的图像错误地分类给攻击者选择的类,更准确地说,文献[5]显示,恶意参与者可以管理模型,将CIFAR-10 数据集上所有带有赛车条纹的汽车误分类为鸟类,同时保留其他输入的模型准确性。图3 显示了用于上述后门攻击的一些汽车图像。

图3 来自CIFAR-10 的样本汽车图像,带有赛车条纹,用于后门注入Figure 3 Is an image of a sample car from the CIFAR-10,with racing stripes,for rear door injection

5.2 后门攻击中的异常

为了调查和揭示后门攻击导致的潜在异常,本文在CIFAR-10上实现了文献[5]中演示的后门攻击,并分析了恶意和良性参与者客户端的本地模型权重,其中一个是恶意的,其他是良性的。图4显示了10个局部模型的最后一层偏差值的梯度统计(即联邦模型的偏差值与局部模型的偏差值的差值)。图4a 显示了第一轮训练中10个客户端的偏差梯度的绝对和,其中恶意客户端(即客户端1)用红色表示。从图中可以看出,与良性客户端相比,恶意客户端的偏差值更偏离联邦模型,这可能是后门攻击异常的标志。同样,图4b 和图4c 分别给出了模型偏差梯度的最大值和最小值。图4d、4e 和4f 描绘了第30轮的相似图,显示了相同的模式。从这些实验结果中,本文观察到联邦学习设置中的后门攻击会在偏差值中产生异常,这可以用来检测这种类型的攻击,因此,本文的安全聚合协议可以只针对这一层执行每个用户输入的盲验证,并且可以使用不认为用户是恶意的安全聚合解决方案,来执行前一层其他参数的聚合。

图4 第1 轮的(a)、(b)、(c) 和第30 轮的 (d)、(e)、(f)Figure 4 Round 1 (a) and (b),(c),and 30 rounds of (d),(e),(f)

5.3 截断对FL 性能的影响

模型权重,这些值需要转换为整数,截断过程将加速本文的安全聚合协议的执行,因此,本文研究了截断对关节模型精度的影响。本文对模型权值进行了截断实验,并与未截断的联邦模型进行了精度和损失的比较。图5a 和5b 分别显示了两种情况下在每一轮训练中超过10 次试验的平均联邦模型精度,其中权值被截断为3 位有效数字。本文观察到截断对模型精度和损耗的影响并不显著,因为相应的曲线有很大程度的重叠,而曲线之间的微小差异可能是由于模型训练的随机性。

5.4 多个恶意用户的影响

本文还研究了多个恶意用户协同干扰模型的情况,在这个新的实验中,本文认为恶意数据在恶意用户中是均匀分布的。本文研究了三个主要场景: (1)1 个恶意用户,恶意数据率为1/3;(2) 2 个恶意用户,恶意数据率各为1/6;(3) 5个恶意用户,恶意数据率各为1/15。图5 显示了在30 轮训练中10 个客户端的偏差梯度的绝对和,其中恶意客户端用红色表示。本文注意到,随着恶意用户数量的增加,越来越难以将他们与合法用户区分开来。因此,本文的解决方案对于一定数量的恶意用户是有效的(例如在文献[13]中,恶意用户的最大比例被设置为50%),对这种复杂攻击的进一步调查可以作为未来工作的一部分进行。此外,恶意用户的数量不会增加本文的协议的计算和通信成本,因为一个OPPRF 运行在每个用户和聚合器之间。

图5 权值截断对模型精度和损耗的影响Figure 5 Influence of weight truncation on model accuracy and loss

本文提出的一个安全聚合协议,首先将聚合器视为对手,并表明所提出的协议确保聚合器遗忘,即聚合器只学习用户输入的总和,其他什么也不学习。采用仿真证明技术,进一步讨论了协议3对用户的安全性。

6.1 聚合器遗忘

文献[1]提供了聚合器无关性的正式定义,从直观上看,通过接收用户的加密输入和相应的标签,聚合器A 不应该发现任何超过实际总和的附加信息,由于所提出的解决方案基本上不需要修改就实现了PUDA,因此本文可以推断该协议确保了聚合器遗忘性。

6.2 安全计算

为了证明计算的安全性,本文需要将所有各方的输出分布与一个理想模型进行比较,在这个理想模型中,一个可信的第三方得到了各方的输入,计算该函数并返回输出,并显示现实世界中对手的视图在计算上与模拟视图没有区别。

6.2.1 用户U 损坏的情况

假设输入U的模拟器(记作SimU)为x,如果x<λ则输出kopprfgax,否则为r。在模拟中,本文需要展示SimU可以生成输入消息给用户的视图,也就是说,本文想证明以下条件成立:

SimU首先需要为OT运行一个模拟器,本文称之为SimUOT,用于ℓ 层OT执行。此外,SimU执行该协议,就像用户U和聚合器A所做的那样,与文献[2]中的引理1 类似,该证明从OPPRF 的实际执行开始使用混合参数。

(1) 混合实验H0与OPPRF的实际执行相同;

(2)Hi收益根据H0的区别第i次 OT 执行SimUOT是运行在输入(xℓ-i,)。

正如文献[2]中所证明的那样,混合实验Hi中SimU的观点是不可区分的。本文可以得出结论,SimU可以生成对U的传入消息的视图,并且不可区分性保证了对不同用户没有优势U的视图和OPPRF在现实世界中的输出,以及SimU生成的视图和OPPRF 在模拟过程中的输出。

6.2.2 聚合器A 损坏的情况

聚合器的模拟器SimA提供给OPPRF 的输入,即:秘密密钥ga、阈值λ和输出kopprf。为了模拟A,SimA充当所有 OT 的发送者,并将所有1≤i≤ℓ 发送到SimA进一步遵循协议3 的执行。

类似于文献[2]中的引理2,证明使用混合参数从协议3 的实际执行开始,作为第一步,SimA随机生成 4ℓ对称密钥,一个额外的随机值,并根据步骤1 计算SimA运行ℓ层 OT 协议的模拟器。最后SimA选择一个随机数r′,一个随机密钥kopprf,并在步骤2 之后计算三个值。

本文可以观察到,每个实验之间的不可区分性源于OT 的安全性和加密算法。本文可以得出结论,SimA可以为聚合器生成传入消息,并且损坏的聚合器在区分现实世界中的聚合器视图和模拟期间由SimA生成的视图方面没有优势。

在本节中,本文将分析安全聚合协议的复杂性,并通过在联邦学习下的后门检测场景中实现概念证明及其实例化来验证本文的方案。

7.1 复杂性分析

7.1.1 OPPRF 和安全聚合协议的渐近复杂性

在本文的 OPPRF 协议(协议2)中,聚合器(P1)在G1中执行O(ℓ)OTs 作为发送方,O(ℓ)对称密钥加密和O(ℓ) 求幂和乘法。类似地,用户在G1中运行O(ℓ)的传输操作,O(ℓ)对称密钥解密和O(ℓ)乘法运算作为接收方。因此,本文的OPPRF 协议的计算复杂度是O(ℓ)。不难看出,协议的通信复杂度也是O(ℓ)。本文的安全聚合协议(协议3)要求用户在G1和一个OPPRF 协议执行中运行恒定数量的对称密钥运算、幂运算和乘法运算。因此,用户的成本变为O(ℓ),因为 OPPRF 协议在聚合器端,执行G1中的O(n)乘法运算以计算Vt和σt值,并执行G1中的O(2ℓ)乘法运算以从Vt中提取聚合结果。这些是对O(n)OPPRF 执行的补充,其中n是用户数量,结果,聚合器的计算复杂度变为O(2ℓ+nℓ),因为总共运行了n次 OPPRF 协议,所以总通信成本变成了O(nℓ)。

7.1.2 OPPRF 协议的具体复杂性

聚合器通过在G1中执行六个对称密钥加密、一次幂运算和两个乘法运算来准备消息对。产生这些消息对的操作总数大约等于6ℓ对称密钥加密、ℓ次求幂和2ℓ乘法运算。幂运算(roki)可以离线完成以降低在线计算成本。聚合器还在协议2的步骤3中进行了一次幂、一次乘法和三个对称密钥加密。除了产生这些消息对和密文之外,聚合器还扮演了发送者的角色,需要对ℓ进行2ℓ次非对称密钥解密。当使用 OT 扩展方法[14]时,假设基础OT 执行是离线执行的,一个 OT 的成本变为3ℓ对称密钥加密操作。因此,当使用 OT 扩展时,为聚合器运行本文的 OPPRF 协议的总成本是G1中9ℓ+3 次对称密钥加密、ℓ+1次幂运算和2ℓ+1次乘法。如果使用OT 扩展,用户(P2)执行3ℓ对称密钥操作,同时执行ℓ次传输(否则,ℓ非对称密钥加密),3ℓ对称密钥操作来解密消息和ℓ-1次乘法G1在协议的第5步,最后,用户执行3次对称密钥解密和1次乘法以达到 OPPRF 协议的输出。因此,当使用 OT 扩展时,用户总共执行6ℓ+3次对称密钥操作和ℓ次乘法。当我们查看具体的通信复杂度时,本文看到数据总量大约等于2ℓ(3ℓs+ℓp),其中ℓs是对称密钥加密的密文长度,ℓp是G1中项目的长度,假设OT 扩展的通信成本大约等于输入的长度。

7.1.3 安全聚合协议的具体复杂性

聚合器在G1中执行n次乘法和一次求幂,以及一次哈希计算来计算Vt,2ℓ乘法从Vt中提取sutm,n次逆运算和n-1 次乘法在G1中计算σt,最后一个哈希在G2中取幂,除了 OPPRF 执行之外,GT中的三个配对操作和一个乘法用于验证。因此聚合器上的总计算成本是两次哈希计算,9nℓ+3n对称密钥加密,3n+2ℓ+2nℓ-1 在G1中的1 次乘法,G1中的n逆运算,G1中的nℓ+n+1 次幂运算,G1中的一个乘法和G2中的三次乘方运算。当我们查看一个用户的计算成本时,本文看到用户除了作为接收者执行OPPRF 外,还需要在G1中进行一次哈希运算、两次求幂和一次乘法来计算密文,在G1中进行一次幂次和一次乘法来计算标签。这样用户的总计算复杂度就变成了G1中的1 次哈希运算、3 次幂运算和ℓ+2次乘法和6ℓ+3 次对称密钥运算。因此,考虑到用户和聚合器的成本,在G1中,本文的安全协议的总计算成本是n+2 次哈希计算,15nℓ+6n 对称密钥加密,5n+2ℓ+3nℓ-1次乘法,n次逆运算,G1中的nℓ+4n取幂,G2中的一次取幂,GT中的三个配对操作和一个乘法。这通信成本主要来自用户向聚合器发送密文和标签以及每个用户与聚合器之间执行的OPPRF 协议。因此,本文的安全聚合协议的总通信复杂度变为 2nℓp+2nℓ(3ℓs+ℓp)。

7.2 实验验证

本文使用python 实现本文的安全聚合协议,并在具有Intel Core i7 CPU 和32GB 内存的笔记本电脑上运行该实验。对于需要验证的双线性配对,分别采用RSA 2048 和BN256[15]作为非对称加密算法。本文不是将每个实体作为单独的程序线程运行,而是将它们模拟为顺序调用的函数。为了模拟通信,本文使用了一些文件,其中消息发送方写入一个文件,而接收方读取该文件。在度量计算时间时,本文消除了由文件读写操作成本和初始键设置过程引起的开销,本文没有使用任何OT 扩展方法,OPPRF 协议中也包含了与roki相关的计算代价。OT 扩展的使用、基本OTs 的执行和roki脱机计算将显著提高OPPRF 协议的速度。在对对称密钥解密操作进行验证时,本文选择密钥长度为128 位的AES 加密算法,统计正确性参数为48 位。

表1 给出了本文的协议的执行时间和主要功能(安全聚合、OPPRF 和验证)的粒度,以显示它们的性能与用户数量、聚合的和值和被聚合的输入长度的相关性。表中显示的执行时间是用户和聚合器的总执行时间,聚合时间包括用户对输入信息进行加密、对密文进行聚合以及由聚合器提取和的时间;验证时间包括用户计算标签值的时间、标签聚合的时间和聚合器验证的时间。该表报告了协议执行20 次的平均执行时间。注意,该实现并没有对速度进行优化,只是一个概念验证,通过一些优化和OT 扩展方法的使用,本文所提议的协议执行时间显著减少了。

表1 安全聚合协议的执行时间(以秒为单位)Table 1 Execution time of security aggregation protocol (in seconds)

本文还使用CIFAR-10 数据集将安全聚合协议(也包括负输入)集成到第4 节中描述的联邦学习设置中,本文对最后的偏差值使用了本文的协议,其中恶意用户的偏差值与合法用户的偏差值不同(参见第4节了解详细信息),这些值被缩放和截断,以便它们属于{-999,…,999}间隔,实验结果表明,本文的协议确实可以帮助检测后门攻击。

7.3 协议比较

综合引言和相关工作以及6.1、6.2 的性能分析,表2比较了本文的协议与参考协议的功能。

表2 协议功能比较Table 2 Comparison of protocol functions

由上表2 可以看出,本文所拟议的安全聚合协议是目前性能较好的聚合协议。

本文为特定设置引入了一种新的安全聚合解决方案,用户可以提供恶意输入来有意更改聚合结果。为了防止此类攻击,本文的解决方案允许聚合器检测大于预先确定的阈值的输入,而无需了解有关输入的任何信息。为了开发这样的解决方案,本文提出了一个新的可编程伪随机函数,它也可以独立用于进一步的设计。该OPPRF 基于安全比较协议,在聚合器和每个用户之间执行。多亏了这个OPPRF,聚合器只对高于/低于某个阈值的合法值求和,而没有发现用户的输入。此方案仅支持基于时间间隔的验证。在聚合器诚实但好奇的假设下,证明了该协议是安全的。本文还评估了所提议的解决方案的性能。最后,本文将所提议的安全聚合协议实例化为一个有发起后门攻击的对手存在的联邦学习场景,在这个特定的场景中,数据由模型参数组成,聚合器以隐私保护的方式将最后一层偏差值与预先确定的阈值进行比较。本文的协议还可以用于其他异常检测用例,如文献[15]中提到的传感器网络聚合、智能计量、人口监测和传感等。未来的工作可以集中在联邦学习案例研究的上下文中调查恶意用户数量的影响。

猜你喜欢 后门密钥乘法 算乘法小学生学习指导(低年级)(2022年10期)2022-11-05幻中邂逅之金色密钥故事作文·低年级(2022年2期)2022-02-23幻中邂逅之金色密钥故事作文·低年级(2022年1期)2022-02-03密码系统中密钥的状态与保护*北京电子科技学院学报(2020年2期)2020-11-20《整式的乘法与因式分解》巩固练习语数外学习·初中版(2020年11期)2020-09-10把加法变成乘法小学生学习指导(低年级)(2019年9期)2019-09-25TPM 2.0密钥迁移协议研究小型微型计算机系统(2018年9期)2018-10-26电动推杆式垃圾车后门锁紧装置设计专用汽车(2016年4期)2016-03-01这个班还不错作文·初中版(2015年10期)2015-10-26新帕萨特右后门玻璃升降功能失效汽车维修与保养(2015年2期)2015-04-17

推荐访问:恶意 聚合 协议