FPDA: Fault-Tolerant and Privacy-Enhanced Data Aggregation Scheme in Fog-Assisted Smart Grid | IEEE Journals & Magazine | IEEE Xplore
FPDA:雾辅助智能电网中的容错和隐私增强数据聚合方案
于2022年4月发布在IEEE物联网期刊。
一.引言
智能电网这个词在许多地方出现了,如图中所示,它实际上是要把传感,计算,通信,控制以及其他技术贯穿于整个电网中,形成双向的互相反馈的电力流和信息流。目的是为了提高电力系统的经济效益,安全性和稳定性。
通过周期性地采集耗电数据,管理人员可以更好地改善智能电网性能,如进行负载预报,窃电检测,故障维修和设备管理等工作。
但是设备采集的精细用户耗电数据,会严重威胁用户的隐私。如图所示,通过住宅耗电数据,可以很容易地推断用户的日常生活;或者通过电动汽车充放电的数据推断出用户的社交活动和经济状况,会威胁到用户的生命健康和财产安全。综上,这些耗电数据必须得到保护。
那么应当如何兼顾数据的隐私性和功能性?
对于这类数据,当前最常用的方法是隐私保护数据聚合(PPDA)。
智能电表将数据加密后发送给网关或者其他负责聚合的成员,由其聚合后发送给控制中心,控制中心对其进行解密,并获得聚合结果。而为了保护个体数据不被控制中心解密,常用的方法是向其添加盲化因子,聚合过程中盲化因子会被抵消。
但目前使用盲化因子技术的PPDA存在以下几个问题:
有智能电表出错时 无法成功聚合 原因为盲化因子需要组内的所有智能电表提供密文,才能成功抵消。
为了解决这个问题,现有的工作采取了各种措施,但都有或多或少的缺陷。
1.分组进行数据聚合,删除包含故障电表的组,会丢失大量数据。
2.平衡盲化因子,要求所有用户重新提交密文
3.需要可信第三方在线辅助
4.每次故障后需要重新分配密钥份额
为此,本文提出一个支持错误容忍的雾辅助隐私保护数据聚合方案,相比之前的方案还有以下改进。
除了故障电表外,无数据缺失;
只需要节点与部分电表进行交互,降低计算和通信成本。
成功聚合后,密钥份额依然可用;
不需要可信第三方的实时参与。
二.预备知识
首先回顾一下,FESDA方案,使用Paillier同态加密,本方案是在其基础上进行改进的
系统由四种实体组成:
1)受信任的权威TA:其职责是启动Paillier密码系统,并分别为CC和SMs派生私钥;
2)智能电表:每个用户都配备一个SM,收集其耗电数据并在加密后定期将其报告给FN;
3)雾节点:它们负责聚合并将结果转发给CC;
4)控制中心:它使用其解密密钥执行解密。
准备阶段:
1.TA运行Paillier密码系统以获取公钥Kpub =(N; g =(N + 1))和私钥Kpri =(λ;μ)。
λ是p-1和q-1的最小公倍数 μ由于g的选择 解密过程不需要用到
2.它随机选择xi ∈ Z∗N作为SMi的私钥,发送给SMi
3.然后计算x0以满足x0 + n i=1 xi ≡ 0 mod λ。通过安全通道,TA将x0发送给CC。最后,TA计算Ti = H(TS)N·xi mod N2(i = 1, 2,..., n)并将它们转发给CC,其中TS是每个报告周期的时间戳,H是SHA-256散列函数。注意TA需要为在住宅区域的每个SMi在每一个时间段Ts生成Ti。
普通的聚合过程:
加密阶段:
SMi进行加密 :mi为明文信息,ci为密文
聚合阶段:
雾节点计算
解密阶段:
C为添加了盲化因子的聚合密文,需要先消除。
由先前条件可知x0 + i=1,n xi ≡ 0 mod λ 可以解出:
V=
因为g=n+1 根据二项定理
容错聚合:
FN聚合正常用户的密文,并标注缺失用户集合U*
CC根据缺失用户集U* 找到对应的等价密文Ti 并聚合等价密文 然后将其与普通聚合密文相乘,并消除盲化因子。
分析普通密文和等价密文的结构可知, 二者只相差加密部分,盲化因子部分仍可以相乘然后被x0抵消。
可以看出FESDA方案实现了不需要在故障后重新分配密钥的过程,因为CC未公布故障电表的份额,且容错聚合部分不需要额外交互,但经过本文证明,其存在被恶意CC攻击并侵犯个体用户隐私的漏洞。
攻击步骤 :
1. 当其被ui传输给FN时 CC拦截密文ci
2.由于ui在失联用户集中,TA会发送Ti给CC 由于离散对数难题CC无法从Ti中恢复xi。
假如恶意TA计算模n2下Ti的乘法逆元 再与ci相乘就可以抵消盲化因子 从而解得明文
本文给出了模n2下Ti的乘法逆元存在的证明。
三.系统架构
下面是本文FPDA方案的构造
其系统模型以及所假定的攻击者模型与FESDA相同,FNs和CC是诚实但好奇的。此外,SMs是诚实且防篡改的。
在密钥生成过程中,除了发送给SM本身之外,每个私钥会被随机分成两个部分。第一部分交给CC,而不是FESDA中总私钥派生的一次性值。第二部分分成多个份额,分布给不同的SMs。
四.协议构造
而分配份额部分,本文使用了主密钥安全可重用的阈值秘密共享方案
1.设置:P为选择的大素数,p和q是P-1的两个大质数因子 g是GF(P)中阶数为N的生成元,N=pq,g是GF(P)中阶数为N的生成元
2.分享份额:分享方将主密钥S分割,将份额yi发送给参与者
随机选择k-1个系数,构建一个次数为k-1的多项式,令a0为S
yi=f(xi) xi为参与者序号
将份额yi发送给参与者
3.重建:
与普通的阈值秘密共享方案相比,收集者从k或更多用户获得盲化后的份额 r为对时间戳求哈希
由g是阶数为 N的 GF(P)的生成元,
方案细节:
1.系统设置:
根据安全参数k 选择大素数p q使其长度为k N=pq g=N+1 P = α · N + 1
α是一个小整数
Kpub = (N, g, α, H) Kpri = (λ, μ)
2.实体注册:
SM CC在TA中注册 选择xi为SMi的私钥 计算x0 =
为CC私钥 对于私钥xi 拆分成两部分 满足xi=xi1+xi2 从同一住宅区随机选择n*个用户 ,通过使用扩展shamir阈值秘密共享,将xi2分成n份xi2j j=(1,n)发送给对应的uj
将配对的(ui,Ui)发送给FN 也就是某个电表它的第二部分私钥是被哪个集合保管。
对于每个用户ui和对应时间序列Tk TA计算
发送给FN
3.报告阶段:
SM计算
4.聚合阶段:
FN同样标记失联用户集U* 如果其不为空 则对于其中的每个ui,根据之前的配对(ui,Ui),向拥有失联用户第二密钥份额的电表集合发送请求。
收到请求后,uj需要确认SMi故障后,返回
收集到前k个份额后 FN计算:
聚合密文
发送C和丢失用户集合U*给CC
5.解密阶段:
如果U非空 计算否则
1) 第二部分等效密文的重建:
2) 聚合密文的解密:
五.安全性分析
正确性:成功恢复概率:
假设SMs的故障概率独立且相同,为β。只要有k个或更多的SMs在线且愿意诚实提供相应的份额,第二个部分等效密文就可以正确重建
六.总结
计算成本以每个SM加密、FN聚合和CC解密所需的时间来衡量。如果所有用户都成功提交,本方案与FEDSA完全相同。因此,它们的计算成本是完全一致的。该图显示了整体数据聚合的计算时间。在不同数量的SMs下提供了加密、聚合和解密的时间消耗。实验结果显示,聚合时间与SMs的数量成正比,而解密时间和每个SM的平均加密时间波动较小。
可以在表中看到详细的通信成本和存储成本。大多数处理用户故障的计算和通信开销发生在一个雾计算网络中,而SMs计算和通信成本较低,符合其资源受限的特性。
假设SMs的故障概率是独立且相同分布的,它们被假设为1%,2%,5%和10%。对于不同的阈值(13,20)和(3,5),本文计算了所有SMs生成其份额所用的时间,FN执行秘密重建和聚合所用的时间,以及CC解密不同数量的SMs下的聚合结果所用的时间。图5显示,总的计算成本随着增加更多的SMs而大致线性增长。阈值和更高的故障概率越大 处理用户故障就需要越多的时间。
最后本文将其方案与几个相关的容错方案[1]、[4]、[9]–[12]在表中的一些重要特性进行比较。
F1指的是方案是否需要在线TA。
F2表示聚合结果是否与正常用户的消耗之和完全相等。
F3指的是方案是否对个别用户的数据进行隐私保护。
F4表示当用户失败时方案是否需要与TA进行交互。
F5表示SMs的消息在传输过程中是否未经授权被更改或修改。
F6表示密文是否确实来自所声明的实体。使用身份验证或签名等技术实现,和FESDA方案相同。
F7和F8分别表示是否会检测到FDI攻击和重放攻击。
F9表示为处理当前用户故障提供的信息是否会影响先前密文的保密性。
F10和F11是采取什么措施以及由谁执行。
本方案不需要更新份额的情况下构建等效密文,由雾节点和有限数量的电表执行。
F12和F13是所选方案的主要优点和缺点。
FPDA可以重建一个等效密文,以恢复系统免受用户故障的影响,而且无需更新份额或中央TA的帮助。此外,计算和通信仅涉及FN和有限数量的用户。因此更加高效和实际。