利索能及
我要发布
收藏
专利号: 2022111964147
申请人: 江苏大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-06-16
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种车联网环境下用于联邦学习的批量聚合方法,其特征在于:包括以下步骤:S1、系统初始化

由训练任务发起者LEA在联邦学习前根据双线性配对关系,生成对应的生成器g1,g2,并选择生成随机数s1,s2和h,μ,v,将s1,s2作为LEA主私钥,将(g1,g2,μ,v,h,Γ)作为LEA公钥,Γ=γg2,γ∈Zq;对路侧单元RSU进在行初始化,每个RSU选择若干随机数作为加密私钥,并计算其公钥para′=(κ1,κ2,pk1,pk2,pk3);对车辆进行初始化,参与联邦学习的车辆选择一‑1个随机数xi∈Zq作为自身私钥,并计算得到对应公钥Ai,Ai=(xi+γ) g1,同时将RSU公钥和LEA中γ临时存入自身的车载单元OBU,最后所有车辆均将(Ai,xi)发送给LEA;i表示第i个车辆;

S2、车辆参与本地训练

每个参与联邦学习的车辆从路侧单元RSU处获取最新的全局模型并使用自身的数据集进行本地训练,当达到指定的轮数后,将训练好的本地模型的参数通过RSU的公钥para′进行加密,其次再通过零知识证明的方法对加密数据进行签名,最后将加密数据和签名一同发送给RSU,并等待RSU进一步指示,若收到RSU的停止命令,则要退出群组中止训练,若收到新的全局模型,则重复本地训练;

S3、RSU聚合模型

联邦学习开始之前,路侧单元RSU先使用默认参数,并初始化全局模型,全局模型根据不同的任务自动选择;其次将初始化后的全局模型进行广播,并等待收集车辆的加密数据和签名;

当所有车辆都已训练完毕,对收到的所有响应结果进行批量的验证签名是否有效,若签名有效则对其进行联邦聚合产生新的全局模型,并使用验证集数据验证其是否达标,若已达目标,则向车辆发送终止训练命令,若未达标,则所有车辆广播新的全局模型,进行新一轮训练。

2.根据权利要求1所述的车联网环境下用于联邦学习的批量聚合方法,其特征在于:所述步骤S1的详细步骤为:S1.1、LEA初始化:训练任务发起者LEA根据双线性配对关系 生成g1,g2作为生成器,同时生成随机数 以及s1,s2∈Zq,且满足s1μ=s2v=h,将s1,s2作为LEA主私钥,LEA随机选择γ∈Zq,计算Γ=γg2,最终得到群组公钥(g1,g2,μ,v,h,Γ);

S1.2、RSU初始化:RSU随机选择5个随机数sk1,sk2,sk3,sk4,sk5∈Zq作为数据加密私钥,然后通过两个随机数κ1,κ2∈Zq来计算pk1、pk2和pk3作为验证公钥,RSU最终公钥为(κ1,κ2,pk1,pk2,pk3);

pk1=sk1κ1+sk2κ2,pk2=sk3κ1+sk4κ2,pk3=sk5κ1;

S1.3、车辆初始化:每一个参与训练的车辆随机选取xi∈Zq作为私钥,其次从LEA处获得γ计算车辆自身公钥Ai,然后将获取的RSU公钥(κ1,κ2,pk1,pk2,pk3)和γ一同存入车辆的OBU中,最终每个车辆将(Ai,xi)通过安全信道上传给LEA。

3.根据权利要求2所述的车联网环境下用于联邦学习的批量聚合方法,其特征在于:所述步骤S2中车辆训练的具体过程为:S2.1、车辆训练

参与训练的车辆从RSU处接收全局模型ψ,若验证其签名正确,则接受ψ作为新的全局模t+1型,然后进行本地训练得出新的本地更新G ,t代表当前训练轮数;Gt+1代表t+1轮的本地模型;

S2.2、使用非对称密钥体系对参数加密

车辆先选择一个随机数ω∈Zp,然后使用RSU公钥计算Z1、Z2、Z3和EN{G},其中G代表新的t+1本地更新G ,Z1、Z2、Z3则是用于数据验证的随机参数;然后使用EN{G}覆盖原文,最终所得加密数据为Cipher=(Z1,Z2,EN{G},Z3);

H=Hash(Z1||Z2||En{G}),

κ1,κ2∈Zq;

S2.3、采用零知识证明体系对加密数据签名

车辆选择随机数a,b∈Zp,然后计算T1=aμ,T2=bv,T3=Ai+(a+b)h,得到其结果(T1,T2,T3),通过T3对Ai进行线性加密的密文;车辆再选择五个随机数ca,cb,cx,cα,cβ∈Zp,车辆基于Fiat‑Shamir启发式建立非交互式零知识证明进行签名计算,最终生成签名σ,σ为T1,T2,T3,C3, sa,sb,sx,sα,sβ,签名计算的过程为:

1).计算随机参数:C1=caμ,C2=cbv,C4=cxT1‑cαμ,C5=cxT2‑cβv,C1‑C5为线性运算中间变量,且C3使用的

是双线性配对;

2).计算证明: Tstamp为时间戳;

3) .计 算 验证 参数 :

S2.4、数据上传

经过步骤2.1‑2.3,每个车辆计算出自己的加密数据以及其对应的签名,生成上传数据Msg=(σ,Cipher,Tstamp)并上传给RSU,并等待RSU进一步指示,若收到RSU的停止命令,则要退出群组,并中止训练,若收到新的全局模型,则回到步骤S2.1重复训练。

4.根据权利要求3所述的车联网环境下用于联邦学习的批量聚合方法,其特征在于:所述步骤S3中模型聚合的具体过程为:S3.1、全局模型初始化

开始训练任务前,RSU根据训练任务目标生成对应全局模型,并使用默认参数对该全局模型初始化,即为全局模型分配随机的模型权重和偏置信息,当群组中有车辆参与联邦学习时,就对全局模型参数进行广播;

S3.2、梯度聚合

当RSU收到车辆的加密数据和对应签名后,先对其时间戳Tstam进行验证,若时间戳不是最新的,则忽略该训练数据;若时间戳为最新的,则对签名σ进行验证;

当签名σ验证有效时,RSU对数据还原:还原过程为:先计算H=Hash(Z1||Z2||En{G}),然后使用RSU私钥计算(sk1+sk3H)Z1+(sk2+sk4H)Z2,若计算结果与加密数据中Z3一致,则使用对数据进行还原;

当收到所有车辆的本地更新后,对全局模型的所有参数进行累加并取平均作为新的全局模型,使用该全局模型在验证集上进行验证,若满足要求,则向参与车辆发送终止训练命令,反之,则将ψ广播给所有车辆,进行下一轮的训练;累加并取平均的公式为Gi代表从 解密出的每个车辆的本地模型信息;Kt代

表车辆;|Kt|表示车辆的总数量;

S3.3、使用批量梯度聚合对所有车辆签名进行验证,验证过程为:

1 2 n

1).收集所有车辆的本地更新G,G,G,...,G;

2).验证每个本地更新的时间戳是否是最新;

3) .验证每个车辆的签名是否有效:选取随机数δi∈Zp,计算验证参数计

算 并将其与每个签名中的 比较,若

不相等则,直接拒绝该一批数据,若每一个签名的结果均相等则计算以下方程:并其结果仍然相等,则认定该一批数据的签名均是正确的,反之则直接抛弃这一批数据;

若所有签名有效,则计算每一条加密数据中的Hi=Hash(Z1,i,Z2,i,En{G}i),并使用RSU的私钥进行下列比较:若结果相等,可计算下列公式

得出这一批数据的总和,其次只需要将结果除以

该批数据的总数,即可得到新的全局模型ψ,同时使用该模型在验证集上进行验证,若满足要求,则向参与车辆发送终止训练命令,反之,则将ψ广播给所有车辆,进行下一轮的训练。

5.根据权利要求4所述的车联网环境下用于联邦学习的批量聚合方法,其特征在于:所述步骤S3.2中对签名σ进行验证的过程为:

1).计算验证参数:

2).判断签名是否有效:计算 并将其结

果与签名σ中的 比较是否相等,若相等,则继续比较 和签名中的C3是否相同,若 和C3相等,则认定当前签名有效,反之则认定改签名无效,抛弃该训练数据。