CN112073406B - 一种基于双线性映射可扩展分组多数据保护方法 - Google Patents

一种基于双线性映射可扩展分组多数据保护方法 Download PDF

Info

Publication number
CN112073406B
CN112073406B CN202010918309.4A CN202010918309A CN112073406B CN 112073406 B CN112073406 B CN 112073406B CN 202010918309 A CN202010918309 A CN 202010918309A CN 112073406 B CN112073406 B CN 112073406B
Authority
CN
China
Prior art keywords
meters
data
meter
key
electric
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010918309.4A
Other languages
English (en)
Other versions
CN112073406A (zh
Inventor
陈渝文
于海阳
杨震
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Technology
Original Assignee
Beijing University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing University of Technology filed Critical Beijing University of Technology
Priority to CN202010918309.4A priority Critical patent/CN112073406B/zh
Publication of CN112073406A publication Critical patent/CN112073406A/zh
Application granted granted Critical
Publication of CN112073406B publication Critical patent/CN112073406B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
    • Y04S40/20Information technology specific aspects, e.g. CAD, simulation, modelling, system security

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种基于双线性映射的可扩展分组多数据保护方法,用于解决窃听攻击和共谋攻击,保护用户用电隐私问题。首先将智能电表分成不同的组;聚合器以组为单位,利用组内其他电表为各个电表生成加密自己数据的一个密钥;同时为公共事业服务提供商
Figure DDA0002664164960000011
生成一个解密密钥;多数据聚合,用于公共事业服务商
Figure DDA0002664164960000012
接收并解密所有电表的用电量之和,包括:聚合每个电表的多组数据并加密,然后发送至聚合器;聚合器验证所有电表加密数据的合法性,并将接收的所有电表的合法加密数据之和发送至公共事业服务商;公共事业服务商
Figure DDA0002664164960000013
再次验证数据合法性,并利用解密密钥结算所有电表的数据总和。本发明有效的解决了隐私保护问题,还缓解了坏电表问题和扩展性问题。

Description

一种基于双线性映射可扩展分组多数据保护方法
技术领域
本发明属于物联网数据安全和隐私领域,具体设计智能电网的数据隐私保护方法。
背景技术
在智能电网中,智能电表被大量部署,使得电表和公共事业服务商之间的双向通信成为可能,双向通信也使得公共事业服务商能够向电表发送指令。电表可以向公共事业服务商汇报自己的实时数据,用电量、用水量、用气量等等。公共事业服务商可以动态的调节自己的供应量。同时,外部攻击者也能获取这些实时数据。根据Barbosa(2015)等人的研究,“细粒度的电力使用数据”自然而然的包含着哪个电器在哪个功率工作的信息。
通过分析相关设备的数据变化曲线,攻击者能够获取用户的行为,例如,用气量突然增长的时候,用户很可能在烹饪。此外,对于一个工厂来说,攻击者能够根据Hurt等人发明的NALM技术来获取某个特殊设备是否在工作。总的来说,保护用电隐私是有必要的。
人们提出了数据聚合来保护用户隐私,它能够阻止攻击者,包括外部攻击者和内部攻击者,获取用户的数据。同时,数据聚合使得公共事业服务商能够获取总的实时用电量,进而动态调节供给。
首先,同态加密被自然而然的引入来保护用户隐私,电表用公钥加密自己的数据然后将密文发送给聚合器,聚合器对密文求和发送给公共事业服务商,公共事业服务商能够解密密文进而获取总的用电数据。然而,如果公共事业服务商获取了某个用户的密文,他仍然能够解密而获取用户数据。为了解决这个问题,在一些方案中,引入了可信的第三方服务器来为电表生成密钥来加密自己的数据。这样,即使公共事业服务商获取了用户的密文,也没有办法解密进而获取用户数据。此外,我们发现现有的方案也遭受“双线性攻击”和“零攻击”。“双线性攻击”是当加密方案为椭圆曲线加密方案时,如果计算密文的双线性映射结果,仍然能够获取用户的数据。“零攻击”是指利用电表数据是零的特殊情况来解密用户的数据。本文方案解决了前两种方案不能克服的问题,同时也避免了“双线性攻击”和“零攻击”。
发明内容
为了现有技术的不足,解决窃听攻击和共谋攻击,在本方案中,电表被分成不同的小组。每组电表建立密钥来加密数据。本文方案是一个可扩展性的多数据分组聚合。
以下部分介绍本方案的适用结构以及本方案的隐私对抗模型。
A.系统结构
系统中主要有三类实体:公共事业服务商
Figure GDA0003828810170000021
聚合器Aj,和智能电表,如图1所示。智能电表汇报自己的实时数据mi给聚合器Aj,Aj得到所有数据的和∑mi,然后将∑mi发送给公共事业服务商
Figure GDA0003828810170000022
Figure GDA0003828810170000023
就可以根据总的用电量∑mi来调整自己的供给量。
为了在这个过程中保护电表的数据。智能电表被分成了不同的组,同一个组的电表一起建立密钥来加密他们的数据。即使是公共事业服务商
Figure GDA00038288101700000215
也没有办法获取电表的数据。
图2描述了电表如何和其他电表建立密钥。电表被分成了不同的组,每组
Figure GDA0003828810170000024
Figure GDA0003828810170000025
个电表,
Figure GDA0003828810170000026
k为自然数,k≥3。电表Mi和虚线方框内的其他电表Mi-s,...Mi-1,Mi+1,...,Mi+s,一起建立密钥Rsi,(Mi-s的下标应该是
Figure GDA0003828810170000027
为了简便起见,我们用(i-s)代替了
Figure GDA0003828810170000028
)。Mi的实时数据用Rsi加密。公共事业服务商
Figure GDA0003828810170000029
和组内电表建立密钥
Figure GDA00038288101700000210
Figure GDA00038288101700000211
每组电表M1,...,Mk密钥的和是
Figure GDA00038288101700000212
由于
Figure GDA00038288101700000213
当对所有电表的数据求和时,密钥会相互抵消。公共事业服务商
Figure GDA00038288101700000214
可以得到数据总和,除了电表Mi外,没人知道它的数据mi
B.隐私对抗模型
除了外部攻击者之外,我们主要考虑三种可能的内部攻击者:智能电表,聚合器,公共事业服务商。在注册阶段,我们认为所有的注册信息都是在安全可信的信道上发送的。所有的实体都是诚实但好奇的,没有外部攻击者。同时,在数据聚合阶段,我们认为聚合器,公共事业服务商属于内部攻击者。同时,在和电表建立密钥的2s个电表当中,至少有一个是可信的。
本发明的创新点为:
1)首先,分析了其他方案,发现其中有一些遭受“双线性攻击”和“零攻击”,通过这些攻击,公共事业服务商可以获取用户的数据,而本文的方案可以避免这两种类型的攻击。
2)其次,在传统方案中,需要可信第三方或者公共事业服务商为电表生成密钥来加密数据,这意味着电表的密钥对公共事业服务商来说是透明的。在本发明中,电表生成自己的密钥来加密数据,没有其他人能了解用户的密钥。此外电表可以通过更新密钥来实现动态加入或者动态离开,向系统中增加电表或者从系统中删除电表都是容易的,动态加入和动态离开的效率也提高了。
3)再次,在本方案中,智能电表可以根据需要选择合适的加密强度,可以选择和不同数目的其他电表建立密钥来达到不同强度的加密方式。
有益效果
发明成功解决了现有方案所面临的密钥隐私问题,窃听攻击和共谋攻击。同时也解决了一些方案不能解决的“双线性攻击”和“零攻击”。此外本方案还能够缓解坏电表问题和扩展性问题。
附图说明
图1、系统结构示意图
图2、分组示意图
图3、每个电表汇报l={1,2,3,4,5,6,7}时的通信开销示意图
其中,每个电表汇报l={1,2,3,4,5,6,7}种数据时,纵轴代表通信开销,单位是bit
具体实施方式
I.系统模型
本文用到的符号在表-I中。
Figure GDA0003828810170000031
表示所有的电表,一共有t组电表。
Figure GDA0003828810170000032
表示第i组电表,
Figure GDA0003828810170000033
表示
Figure GDA0003828810170000034
中电表的数目,
Figure GDA0003828810170000035
表示最后一组电表。
Figure GDA0003828810170000036
表示系统中所有电表的数目。
表-I.本文中用的符号
Figure GDA0003828810170000037
II.本文方案
A.系统初始化阶段
初始化阶段公共事业服务提供商
Figure GDA0003828810170000038
生成系统参数,同时生成自己的密钥对。公共事业服务商
Figure GDA0003828810170000039
选择一个阶为n的椭圆曲线,并且
Figure GDA00038288101700000310
l为自然数,本方案中取值为1到7。令g、P为生成元,e:G1×G1→G2为双线性映射。
Figure GDA00038288101700000311
选取一个随机正整数
Figure GDA00038288101700000312
作为私钥,相应的公钥是Ru=du·P。
Figure GDA00038288101700000313
选取一系列群G2的生成元
Figure GDA00038288101700000314
l个生成元确保智能电表可以汇报l种数据,如果一个电表要汇报第l种数据,那么他就要选择第l个生成元。参数G、g、P、e:G1×G1→G2需要发送给系统中所有实体,也就是所有的智能电表和聚合器。收到参数之后,电表和聚合器会生成自己的密钥对。每个电表Mi选取一个随机正整数
Figure GDA0003828810170000041
作为私钥,相应的公钥就是Ri=di·P。同样的,聚合器Aj的私钥是dj,公钥是Rj=dj·P。
B.注册阶段,用于为各个电表生成加密自己数据的一个密钥,同时为共事业服务提供商
Figure GDA0003828810170000042
生成一个解密密钥,具体为:
Aj将所有电表分为t组,其中
Figure GDA0003828810170000043
为第i组电表;
Aj存储每组电表的{idi,Ri}到一个有序表中,其中,idi为第i个电表Mi的编号,Ri为第i个电表Mi的公钥;
Aj为每个电表Mi计算
Figure GDA0003828810170000044
(Ri-s的下标应该是
Figure GDA0003828810170000045
为了简便起见,我们用(i-s)代替了
Figure GDA0003828810170000046
Aj发送{Rci}给电表Mi,Mi计算Rsi=di·Rci作为私钥来加密数据;
Aj计算每组中所有电表的公钥和
Figure GDA0003828810170000047
并将所有t组的公钥和
Figure GDA0003828810170000048
发送给
Figure GDA0003828810170000049
Figure GDA00038288101700000410
Figure GDA00038288101700000411
根据收到的加密电表数据,利用Rsu解密所有电表的用电总量,其中解密电表数据的密钥是:
Figure GDA00038288101700000412
注册阶段主要为各个电表生成加密自己数据的一个密钥,同时为共事业服务提供商
Figure GDA00038288101700000413
生成一个解密密钥。表-II描述了电表Mi的注册过程。在电表的注册过程,Mi发送{idi,Ri}给聚合器Aj。当Aj收到所有电表的注册信息之后,为Mi准备以下信息。
1.Aj将电表分组,每组
Figure GDA00038288101700000414
Figure GDA00038288101700000415
个电表,
Figure GDA00038288101700000416
k是一个自然数,k≥3。
2.Aj存储每组电表的{idi,Ri}到一个有序表中,存储电表的密钥,利于后面电表的动态加入和动态离开。
3.Aj为电表Mi计算
Figure GDA00038288101700000417
(Ri-s的下标应该是
Figure GDA00038288101700000418
为了简便起见,我们用(i-s)代替了
Figure GDA00038288101700000419
)。
4.Aj发送{Rci}给电表Mi
Mi计算Rsi=di·Rci作为私钥来加密数据。Aj发送
Figure GDA00038288101700000420
Figure GDA00038288101700000421
Figure GDA00038288101700000422
用来解密电表数据的密钥是:
Figure GDA00038288101700000423
表-II.电表的注册
Figure GDA00038288101700000424
C.多数据聚合
Mi通过以下方式汇报l种数据mi1,mi2,...mil
(1)Mi获取当前时间戳Ti=Di||seqi,Di是当前日期,seqi是一个序列号,从1开始,每次增加1,电表每天汇报一定量的数据,第二天seqi会被重置为1。
(2)Mi生成gki=e(H(Ti),Rsi)。
(3)Mi获取自己的数据mi1,mi2,...mil,根据定义,如果电表Mi要汇报第l种数据,那么他就要选择第l个生成元gl
(4)Mi计算
Figure GDA0003828810170000051
(5)Mi得到数据的密文ci=gki·gdi
(6)Mi计算签名σi=(di+h(ci,idi,Ti))-1·P。
(7)Mi发送{idi,ci,σi,Ti}给聚合器Aj
当Aj从Mi收到{idi,ci,σi,Ti}之后。Aj逐一检查签名σi的正确性。
1.如果e(σi,Ri+h(ci,idi,Ti)·P)=g2成立,证明消息来自于一个合法的智能电表,信息被接收。当Aj从所有电表收到消息之后,Aj计算所有数据密文ci的和,定义
Figure GDA0003828810170000052
Figure GDA0003828810170000053
中所有ci的和。
1.Aj计算
Figure GDA0003828810170000054
2.Aj生成签名σj=(dj+h(cj,idj,Ti))-1·P。
3.Aj发送{idj,cj,σj,Ti}给
Figure GDA0003828810170000055
收到{idj,cj,σj,Ti},
Figure GDA0003828810170000056
检查消息的签名,如果签名是正确的,
Figure GDA0003828810170000057
就可以获取电表的数据。
1.
Figure GDA0003828810170000058
检查等式e(σj,Rj+h(cj,idj,Ti)·P)=g2,如果等式成立,证明消息来自于一个合法的智能电表,消息会被接收。
2.
Figure GDA0003828810170000059
计算此轮数据汇报的解密密钥gu=e(H(Ti),Rsu)。
3.
Figure GDA00038288101700000510
解密cj得到cu=gu·cj
得到cu之后,
Figure GDA00038288101700000511
可以通过算法1来获取每种数据之和sum1,sum2,...,suml。PolKangroo代表Pollard′s kangaroo求离散对数问题的方法。表-III描述了数据聚合过程。
表-III.数据聚合过程
Figure GDA0003828810170000061
算法1.数据获取方法
输入:
Figure GDA0003828810170000062
cu
输出:sum1,sum2,...,suml
Figure GDA0003828810170000063
D.动态加入
1.假设有
Figure GDA0003828810170000064
个新电表
Figure GDA0003828810170000065
要加入
Figure GDA0003828810170000066
电表会加入到最后一组的最后部分,动态加入后,因为电表加密强度s内的电表发生了变化,所以要进行相应更新,具体包括新电表
Figure GDA0003828810170000067
Figure GDA0003828810170000068
数据加密密钥的更新,新电表Mr1之前s个电表的数据加密密钥的更新,新电表
Figure GDA0003828810170000069
之后s个电表的数据加密密钥的更新,以及公共事业服务提供商
Figure GDA00038288101700000610
生成的解密密钥的更新;
所述第k个新电表Mrk的数据加密密钥的更新方法为:首先计算新电表Mrk的密钥
Figure GDA00038288101700000611
Figure GDA00038288101700000612
其中,
Figure GDA00038288101700000613
表示新电表Mrk之前的s个电表的公钥之和,
Figure GDA00038288101700000614
表示新电表Mrk之后的s个电表的公钥之和;然后计算新电表Mrk的加密数据的密钥Rsk为,具体公式为:Rsk=drk·Rck,其中,drk表示新电表Mrk的私钥。
具体的执行过程如下:
(1)
Figure GDA00038288101700000615
的公钥为
Figure GDA00038288101700000616
私钥为
Figure GDA00038288101700000617
将他们的id和公钥发给Aj
(2)对于新电表Mrk,Aj计算新电表的加密密钥
Figure GDA00038288101700000618
然后计算Mrk加密数据的密钥Rsk=drk·Rck
以下举例说明,有1个新电表Mr1加入有6个电表的组内,此时组内扩展为7个电表,Mr1作为第7个电表,组内电表是环形关系,加密强度s设为3,所以Mr1的数据加密密钥是由Mr1前面的3个电表,以及后3个电表共同决定,即4、5、6号电表,以及1、2、3号电表共同决定。
所述新电表Mr1之前s个电表的数据加密密钥的更新,新电表
Figure GDA0003828810170000071
之后s个电表的数据加密密钥的更新,具体为:
若Mi属于新电表Mr1之前的s个电表,或者新电表
Figure GDA0003828810170000072
之后的s个电表,
首先计算动态加入后的Mi对应的R′ci
Figure GDA0003828810170000073
其中,
Figure GDA0003828810170000074
表示新电表加入之后,Mi前s个电表的公钥之和,
Figure GDA0003828810170000075
表示新电表加入之后,Mi后s个电表的公钥之和,然后计算数据加密密钥R′si,R′si=di·R′ci,di表示Mi的私钥。
所述公共事业服务提供商
Figure GDA00038288101700000720
更新后的解密密钥R′su,具体计算如下:
Figure GDA0003828810170000076
Figure GDA0003828810170000077
其中,du表示公共事业服务提供商
Figure GDA0003828810170000078
的私钥,
Figure GDA0003828810170000079
表示动态加入前系统中所有电表的公钥的和,∑Rrk表示
Figure GDA00038288101700000710
个新电表公钥和。具体执行过程为:对于
Figure GDA00038288101700000711
Aj计算∑Rrk,且将∑Rrk发给
Figure GDA00038288101700000712
Figure GDA00038288101700000713
更新Rsu为R′su
电表和聚合器更新完密钥之后,多数据聚合阶段就可以正常执行,以下步骤和多数据聚合阶段相同,此处省略。
E.动态离开
Figure GDA00038288101700000714
个电表
Figure GDA00038288101700000715
需要从组
Figure GDA00038288101700000716
中移除的时候,为了使系统的剩余部分可以正常运行,需要执行以下步骤。
对于组内剩余的电表,仅更新被删除电表的加密强度范围之内的电表Mi的数据加密密码,具体为:计算Mi的R′ci
Figure GDA00038288101700000717
然后计算Mi的数据加密密码R′si,R′si=di·R′ci,其中,
Figure GDA00038288101700000718
表示删除电表之后的Mi之前的s个电表的公钥和,
Figure GDA00038288101700000719
表示删除电表之后的Mi之后的s个电表的公钥和。比如,组内有9个电表,删除4,5号电表,此时剩余1、2、3、6、7、8、9号电表,假设加密强度s=3,则剩余电表中,4号电表加密强度范围之内的电表为1、2、3、6、7号电表(5号电表也在被移除行列,故此处不再考虑5号电表),5号电表加密强度范围之内的电表为2、3、6、7、8号电表(4号电表也在被移除行列,故此处不再考虑4号电表),故,4号电表加密强度范围之内的电表以及5号电表加密强度范围之内的电表即为需要更新的电表,即1、2、3、6、7、8号电表。
对于公用事业服务商
Figure GDA0003828810170000081
Aj发送∑Rrk
Figure GDA0003828810170000082
Figure GDA0003828810170000083
更新Rsu为R′su
Figure GDA0003828810170000084
∑Rrk是删除的
Figure GDA0003828810170000085
个电表公钥的和,
Figure GDA0003828810170000086
表示更新前系统中所有电表的公钥的和。
电表和聚合器更新完密钥之后,多数据聚合阶段就可以正常执行,以下步骤和多数据聚合阶段相同,此处省略。
F.电表替换,包括新电表M′i数据加密密钥R′si的计算,新电表M′i之后的第1,...,s个电表和M′i之前的第1,...,s个电表的数据加密密钥的计算,以及公共事业服务提供商
Figure GDA0003828810170000087
的解密密钥
Figure GDA0003828810170000088
的计算;
所述新电表M′i数据加密密钥R′si的计算即用新电表M′i的公钥、私钥代替被更新的电表Mi的公钥、私钥,具体步骤如下:
如果组
Figure GDA0003828810170000089
中的电表Mi将会被替换为M′i,那么
1.M′i私钥为
Figure GDA00038288101700000810
相应的公钥为R′i=d′i·P。
2.M′i发送{id′i,R′i}至聚合器Aj
当Aj收到{id′i,R′i},Aj执行以下步骤:
1.Aj找出Mi的身份idi和公钥Ri
2.Aj保存M′i的身份id′i和公钥R′i,所有关于Mi的信息将会被替换成M′i的信息。
3.Aj计算
Figure GDA00038288101700000811
4.Aj发送{R′ci}给M′i
当M′i收到{R′ci},M′i计算R′si=d′i·R′ci作为新电表M′i加密数据的密钥。
所述新电表M′i之后的第1,...,s个电表的数据加密密钥的计算,其中,第j个电表的数据加密密钥R′sj计算公式如下:
R′sj=dj·R′cj
R′cj=Rcj+(Ri-R′i)
其中,Ri表示原电表Mi的公钥,R′i表示新电表M′i的公钥,Rcj表示更新前原电表Mi之后的第j个电表的密钥,dj表示原电表Mi之后的第j个电表的私钥;
所述新电表M′i之前的第1,...,s个电表的数据加密密钥的计算,其中,第j个电表的数据加密密钥R′sj计算公式如下:
R′sj=dj·R′cj
R′cj=Rcj+(R′i-Ri)
其中,Ri表示原电表Mi的公钥,R′i表示新电表M′i的公钥,Rcj表示更新前原电表Mi之前的第j个电表的密钥,dj表示原电表Mi之前的第j个电表的私钥。具体步骤为:对于Mj,如果i∈[j+1,j+s],Aj会发送(Ri-R′i)给Mj,Mj更新自己的密钥为R′cj=Rcj+(Ri-R′i)。对于电表Mj,如果i∈[j-1,j-s],Aj会发送(R′i-Ri)给Mj,Mj更新自己的密钥R′cj=Rcj+(R′i-Ri)。
所述公共事业服务提供商
Figure GDA00038288101700000915
的解密密钥R′su的计算,即用新电表M′i的公钥代替原电表Mi的公钥,更新公共事业服务提供商
Figure GDA00038288101700000916
生成的解密密钥R′su。具体步骤为:Aj会发送(R′i-Ri)给
Figure GDA0003828810170000091
Figure GDA0003828810170000092
更新自己的密钥
Figure GDA0003828810170000093
然后再计算
Figure GDA0003828810170000094
至此,密钥更新过程完成了。电表和聚合器更新完密钥之后,多数据聚合阶段就可以正常执行,以下步骤和多数据聚合阶段相同。
表-IIII.密钥更新过程
Figure GDA0003828810170000095
G.正确性证明
等式e(σi,Ri+h(ci,idi,Ti)·P)=g2能被证明,也就意味着本文的签名方案是正确的。
Figure GDA0003828810170000096
我们通过数学归纳法来证明方案的正确性。首先,
Figure GDA0003828810170000097
可以被证明。
Figure GDA0003828810170000098
由于
Figure GDA0003828810170000099
的变化并不影响等式的成立。为了证明
Figure GDA00038288101700000910
Figure GDA00038288101700000911
我们仅需证明
Figure GDA00038288101700000912
当s=1,
Figure GDA00038288101700000913
可以被证明:
Figure GDA00038288101700000914
Figure GDA0003828810170000101
当s=k,假设
Figure GDA0003828810170000102
仍然成立,令
Figure GDA0003828810170000103
Figure GDA0003828810170000104
那么Ak=0。
当s=k+1,
Figure GDA0003828810170000105
仍然成立:
Figure GDA0003828810170000106
至此,我们可以得出结论:
Figure GDA0003828810170000107
Figure GDA0003828810170000108
Figure GDA0003828810170000109
Figure GDA00038288101700001010
组内所有电表ci的和:
Figure GDA00038288101700001011
至此,方案的正确性被证明:
Figure GDA00038288101700001012
Figure GDA0003828810170000111
III.不同安全性对比
表IX列出了不同方案的安全性对比,当与Boudia[1]、Li[2]、Liu[3]和Chen[4]相对比的时候,所提的方案与对比方案相比有优势,本文方案成功解决了第一类方案所面临的密钥隐私问题,窃听攻击和共谋攻击。同时也解决了一些方案不能解决的“双线性攻击”和“零攻击”。
A.私钥隐私
Li[2]的方案中,服务器为电表生成密钥来加密电表的数据,也就说服务器知道电表的加密密钥,电表没有密钥隐私。在本文方案中,电表自己生成私钥,所以电表具备私钥隐私。
B.窃听攻击和共谋攻击
Boudia[1]的方案中,电表的数据用服务器的公钥加密,当服务器获取加密密文之后,能够解密电表的数据,也就是说Boudia的方案面临着窃听攻击。此外,如果聚合器把电表的密文发送给服务器,服务器也能够获取用户的数据,也就是说Boudia[1]的方案中,攻击者可以发动共谋攻击。
C.双线性攻击
在Boudia[1]和Liu[3]的方案中,电表的数据用服务器的公钥加密。然而,当用双线性映射到密文之上,攻击者能够获取电表的数据,我们把这个操作称为“双线性攻击”。例如在Boudia[1]的方案中,如果攻击者
Figure GDA0003828810170000112
得到了Y1,f1,cij=(rij1G,rij1Y1+Mij1),
Figure GDA0003828810170000113
能够通过以下方式获取电表的数据:
1.
Figure GDA0003828810170000114
获取A=e(rij1Y1+Mij1+f1G,G)。
2.
Figure GDA0003828810170000115
获取B=e(rij1G,Y1)。
3.
Figure GDA0003828810170000116
获取g=e(G,G)。
4.
Figure GDA0003828810170000117
用Pollard′s kangaroo求离散对数问题的方法来获取电表数据:dij1=logg(A-B)。
在Liu[3]的方案中,当攻击者
Figure GDA0003828810170000118
窃听通信信道并且获取
Figure GDA0003828810170000119
Figure GDA00038288101700001110
能获取电表的数据:
1.
Figure GDA00038288101700001111
收集所有电表的公钥得到
Figure GDA00038288101700001112
2.
Figure GDA0003828810170000121
获取
Figure GDA0003828810170000122
3.
Figure GDA0003828810170000123
获取
Figure GDA0003828810170000124
4.
Figure GDA0003828810170000125
获取g=e(G1,G1)。
5.
Figure GDA0003828810170000126
用Pollard′s kangaroo获取电表数据:dij1=logg(A-B)。
D.零攻击
智能电网中,电表的数据可能是0,比如午夜或者房子主人全家旅行的时候。Li[2]的方案中,如果在某个时刻,设备的数据为0,那么的服务器能够通过以下方式获取设备的数据:
1.设备的数据被加密为:
Figure GDA0003828810170000127
πij是服务器分配的加密密钥,f,g,x G的生成元,群G的阶为N=pq,h=xq
2.在时刻tij,设备数据mij=0被加密为:
Figure GDA0003828810170000128
服务器使用私钥p能得到
Figure GDA0003828810170000129
3.在tik,设备数据mik被加密为
Figure GDA00038288101700001210
4.服务器能得到此时的数据:
Figure GDA00038288101700001211
Figure GDA00038288101700001212
即使不存在设备数据是0的时刻,服务器仍然能够获取两个数据的差值:
Figure GDA00038288101700001213
Figure GDA00038288101700001214
我们称这种攻击方式为“零攻击”。
E.操作中心攻击
Liu[3]的方案中,一个好奇心强的DCU能获取电表数据:
1.在他们方案中第5步,DCU发送
Figure GDA00038288101700001215
给所有电表。
2.当电表收到
Figure GDA00038288101700001216
计算
Figure GDA00038288101700001217
发送Di给DCU。
3.当DCU收到所有Di后,DCU能够获得电表的数据
Figure GDA00038288101700001218
Figure GDA00038288101700001219
F.不安全的签名方案
Liu[3]使用的签名方案是不安全。假如攻击者
Figure GDA00038288101700001220
窃听通信信道并获得两个签名σi1=xiG2+xihi1G3,σi2=xiG2+xihi2G3
Figure GDA00038288101700001221
能用下面的方式获取xiG2或者xiG3
1.
Figure GDA00038288101700001222
能获取xiG3
xiG3=(hi1-hi2)-1(hi1-hi2)xiG3
=(hi1-hi2)-1(xihi1G3-xihi2G3)
=(hi1-hi2)-1(xiG2+xihi1G3-xiG2-xihi2G3)
=(hi1-hi2)-1(xiG2+xihi1G3-(xiG2+xihi2G3))
=(hi1-hi2)-1i1i2)
2.
Figure GDA0003828810170000131
能获取xiG2=σi1-xihi1G3
当获取xiG2和xiG3后,
Figure GDA0003828810170000132
能伪造信息
Figure GDA0003828810170000133
1.
Figure GDA0003828810170000134
选择随机数ri′并获取
Figure GDA0003828810170000135
2.
Figure GDA0003828810170000136
生成数据m′i并获取
Figure GDA0003828810170000137
3.
Figure GDA0003828810170000138
生成签名σ′i=xiG2+h′ixiG3,并且
Figure GDA0003828810170000139
T′si是时间戳。
4.
Figure GDA00038288101700001310
得到一个伪造信息
Figure GDA00038288101700001311
G.批量验证问题
Li[2]和Liu[3]使用了批处理来验证签名,如果攻击者将签名σi1,σi2改为σ′i1=(σi1t)和σ′i2=(σi2t),σt是一个随机数,签名的和
Figure GDA00038288101700001312
没有变,公式
Figure GDA00038288101700001313
仍然成立。同样的,在Liu[3]的方案中,公式
Figure GDA00038288101700001314
也成立,消息的验证者没有办法发现消息是否被更改了。在表-XII显示为批量验证问题。
H.私钥丢失问题
在Boudia[1]的方案中,签名的一部分是
Figure GDA00038288101700001315
如果攻击者意外获得了rij2,因为H(D),zij和r都是公开数据,那么攻击者能够获取用户的私钥aij=(zijrij2-H(D))r-1
I.动态加入/动态离开
Chen[4]的方案和本文方案支持动态加入和动态离开。其他方案并不支持动态加入和动态离开。
J.坏电表影响
Boudia[1]的方案中,当一个电表坏了,剩余电表可以正常工作。在Li[2],Liu(2019)[3]和Chen[4]的方案中,当一个电表坏了,公共事业服务商
Figure GDA00038288101700001316
不能获取
Figure GDA00038288101700001317
个电表的数据。在本文方案中,电表被分成不同的组,如果某组有一个坏电表,只有这组的
Figure GDA00038288101700001318
个电表受影响,其他组不受影响。
K.动态密钥强度
在我们的方案中,电表可以根据需要选择合适的加密强度,当s电大时,加密强度变大,而当s电小时,加密强度降低。而其他的方案中,并不支持电表选择合适的加密强度。
表-IXX安全特性对比
Figure GDA0003828810170000141
IV.性能对比
首先我们对比了不同方案的计算效率;其次,我们对比了不同方案通信效率。
A.计算效率
假设有
Figure GDA0003828810170000142
个电表,一个聚合器,和一个公共事业服务商。Gbp代表双线性映射操作,GTexp是G2中的元素指数运算,GTmul代表G2中的乘法运算,Gmul代表G1中的元素乘法运算,Gadd代表G1中的加法操作,HG代表哈希为G1中元素,Hb代表哈希为大整数操作。
首先,分析了注册阶段电表的计算开销。Boudia[1]的方案需要
Figure GDA0003828810170000143
来建立密钥。Li[2]的方案中,生成签名需要
Figure GDA0003828810170000144
Figure GDA0003828810170000145
为了验证这些签名,需要
Figure GDA0003828810170000146
Figure GDA0003828810170000147
计算开销是
Figure GDA0003828810170000148
Liu[3]的方案中,操作中心为电表生成证书需要
Figure GDA0003828810170000149
Figure GDA00038288101700001410
验证这些签名时电表需要
Figure GDA00038288101700001411
计算群密钥需要
Figure GDA00038288101700001412
总开销是
Figure GDA00038288101700001413
Chen[4]的方案需要
Figure GDA00038288101700001414
Figure GDA00038288101700001415
为了计算
Figure GDA00038288101700001416
第一个电表需要
Figure GDA00038288101700001417
对于剩下的电表需要2Gadd操作来计算Rci,因为Rci=Rc(i-1)+Ri+Ri-1
对于本文方案,当s=1,需要
Figure GDA00038288101700001418
Figure GDA00038288101700001419
操作。当s≥2,获得
Figure GDA00038288101700001420
Figure GDA00038288101700001421
第一个电表需要2sGadd,剩余的电表需要4Gadd来计算Rci,因为Rci=Rc(i-1)+Ri-1-Ri-s-1+Ri-Ri+s。总计算量是
Figure GDA00038288101700001422
表-V列出了对比结果。根据JPBC基准,Gmul的计算开销比Gadd要高。当s=1,本文方案计算开销是最低的,当s>1,本文方案是第二高效的,因为电表仅需要一次Gmul操作来获得加密私钥,在所有方案中是最低的。
表V.电表的计算开销
Figure GDA0003828810170000151
第二,Boudia[1],Chen[4]和本文方案中,电表一次可以汇报l种数据。我们对比了三种方案中电表在数据聚集阶段的计算开销。Boudia[1]的方案需要2(l+1)Gmul,lGadd和1Hb。Chen[4]的方案需要1Gbp,lGTexp,lGTmul,1Gmul和2HG。本文方案需要1Gbp,lGexp,lGTmul,1Gmul,1HG和1Hb。结果在表-VI中。根据JPBC基准,Gmul的计算开销比Gadd高,Gmul的计算开销比Gbp要高。本文方案比其他几个方案的计算开销都要低。
表VI.汇报L种数据时电表的计算开销
Figure GDA0003828810170000152
第三,我们分析了汇报一种数据时电表的计算开销。Li[2]的方案需要4Gmul,2Gadd和1HG。在Liu[3]的方案中,第一轮,一个电表需要5Gmul,2Gadd和1Hb,第二轮,一个电表需要3Gmul,1Gadd和1Hb。设l=1,我们可以得到Boudia[1],Chen[4]和本文方案的计算开销。结果列在表-VII中。本文方案是最高效的,更适合于计算资源有限的智能电表。
表VII.汇报1种数据时电表的计算开销
Figure GDA0003828810170000153
第四,表-VIII展示了聚合器批量验证方式时的计算开销。Boudia[1]的方案需要
Figure GDA0003828810170000154
Figure GDA0003828810170000155
Figure GDA0003828810170000156
Li[2]的方案需要
Figure GDA0003828810170000157
Figure GDA0003828810170000158
Liu[3]的方案中,聚合器需要3Gbp,1GTmul
Figure GDA0003828810170000159
Figure GDA00038288101700001510
Chen[4]的方案需要
Figure GDA00038288101700001511
Figure GDA00038288101700001512
本文的方案需要
Figure GDA00038288101700001513
Figure GDA00038288101700001514
Figure GDA00038288101700001515
表VIII.批量验证需要的计算开销
Figure GDA0003828810170000161
B.通信效率
q是261bit,曲线的阶是256-bit,群G1或者G2中的元素是522bit,
Figure GDA0003828810170000162
是256bit。一个身份信息或者时间戳是64bit。假设有
Figure GDA0003828810170000163
个电表。表-IX展示了电表汇报一种数据时的通信开销。
Boudia[1]的方案中,电表汇报{Cij,IDij,TS,Sij},Cij=(rij1·G,rij1·Y1+Mij1),rij1·G和(rij1·Y1+Mij)是群G1中522-bit的元素,Sij=(rij2·G,zij),rij2·G是群G1中522-bit的元素,zij是一个256-bit的阶的余数。TS是一个64-bit的时间戳,IDij是一个64-bit的身份信息。开销是:(522×3+256+64+64)=1950bit。聚合器会发送一个1950bit消息{Cj,IDj,TS,Sj}。总开销是:
Figure GDA00038288101700001621
Figure GDA00038288101700001622
Li[2]的方案中,一个设备发送消息
Figure GDA0003828810170000164
Figure GDA0003828810170000165
是一个64-bit的身份信息,Cij和σij是群G1中522-bit的元素,tij是一个64-bit的时间戳。计算开销是
Figure GDA0003828810170000166
ESi会发送一个1172bit消息
Figure GDA0003828810170000167
总开销是:
Figure GDA0003828810170000168
Liu[3]的方案中,第一轮,电表要发送
Figure GDA0003828810170000169
idi是一个64-bit的身份信息,
Figure GDA00038288101700001610
σi是群G1中522-bit的元素,Tsi是一个64-bit的时间戳,计算开销是
Figure GDA00038288101700001611
Figure GDA00038288101700001612
聚合器发送PDCU={IDDCU,Ca,Cb,TsDCU,σDCU}给操作中心,计算开销是(64+522×3+64)=1694bit。第二轮,电表发送
Figure GDA00038288101700001613
给操作中心,开销是
Figure GDA00038288101700001614
Figure GDA00038288101700001615
总开销是:
Figure GDA00038288101700001616
Chen[4]的方案中,电表发送消息{idi,ci,Si,ti},idi是一个64-bit的身份信息,ci是G2中一个522-bit的元素,Si是群G1中一个522-bit的签名,ti是一个64-bit的时间戳,开销是:
Figure GDA00038288101700001617
聚合器会发送一个1172bit消息{idj,cj,Sj,ti}。总开销是:
Figure GDA00038288101700001618
本文方案中,电表发送{idi,ci,σi,Ti}。idi是一个64-bit的身份信息,ci是一个群G2中522-bit的元素,σi是群G1中一个522-bit的签名,Ti是一个64-bit的时间戳。开销是
Figure GDA00038288101700001619
聚合器会发送一个1172bit的消息{idj,cj,σj,Ti}。总开销是:
Figure GDA00038288101700001620
表IX.数据聚合阶段的通信效率
Figure GDA0003828810170000171
Boudia[1],Chen[4],和本文的方案中,电表可以汇报l种数据。并且,电表到聚合器和聚合器到公共事业服务商
Figure GDA0003828810170000172
的通信开销是一样的。为了简便起见,我们分析了电表的通信开销,如图-3所示,当l增加时,本文方案的计算开销并没有增加,开销是(64+522+522+64)=1172bit,因为l种数据都被聚合到了G2中一个元素上。
Boudia[1]的方案中,电表汇报{Cij,IDij,TS,Sij},Cij=(rij1·G,rij1·Y1+Mij1,...,rijl·Y1+Mijl),rij1·G和(rij1·Y1+Mij1,...,rijl·Y1+Mijl)都是G1中522-bit的元素,Sij=(rij2·G,zij),rij2·G是群G1中522-bit的元素,zij是一个256-bit阶的余数。TS是一个64-bit的时间戳,IDij是一个64-bit身份信息。计算开销是(522×(l+2)+256+64+64)=522l+1428bit。
Chen[4]的方案中,电表发送消息{idi,ci,Si,ti},idi是一个64-bit身份信息,ci={ci1,...,cil}是522-bit G2中的元素,Si是一个522-bit的G1中的签名,ti是一个64-bit的时间戳。计算开销是(64+522l+522+64)=522l+650bit。
Figure GDA0003828810170000173

Claims (6)

1.一种基于双线性映射可扩展分组多数据保护方法,适用于由三类实体构成的系统结构,具体包括公共事业服务提供商
Figure FDA0003853763310000011
聚合器Aj,和智能电表,智能电表汇报自己的实时数据给聚合器Aj,Aj得到所有数据的和,然后发送给公共事业服务提供商
Figure FDA0003853763310000012
Figure FDA0003853763310000013
根据总的用电量来调整自己的供给量;其特征在于包括以下步骤:
(1)将智能电表分成不同的组,组内电表依次排序,且形成环形关系;
(2)聚合器Aj以组为单位,利用组内其他电表为各个电表生成加密自己数据的一个密钥,其中第i个电表Mi的数据加密密钥由其前后s个电表的公钥共同构成,s称为加密强度;同时聚合器Aj为公共事业服务提供商u生成一个解密密钥;
(3)多数据聚合,用于公共事业服务提供商u接收并解密所有电表的用电量之和,包括:
(3.1)聚合每个电表的多组数据并加密,然后发送至聚合器Aj
(3.2)聚合器Aj验证所有电表加密数据的合法性,并将接收的所有电表的合法加密数据之和发送至公共事业服务提供商
Figure FDA0003853763310000014
(3.3)公共事业服务提供商
Figure FDA0003853763310000015
再次验证数据合法性,并利用解密密钥结算所有电表的数据总和;
所述的步骤(3.1),以一个分组内的一个电表为例具体包括以下内容:
Mi为第i个电表,通过以下方式汇报l组数据mi1,mi2,...mil
(1)Mi获取当前时间戳Ti=Di||seqi,Di是当前日期,seqi是一个序列号,从1开始,每次增加1,电表每天汇报一定量的数据mil,第二天seqi会被重置为1;
(2)Mi生成gki=e(H(Ti),Rsi)
(3)Mi获取自己的数据mi1,mi2,…mil;根据定义,如果电表Mi要汇报第l组数据,那么他就要选择第l个生成元gl
(4)Mi计算
Figure FDA0003853763310000016
(5)Mi得到l组数据的密文ci=gki·gdi
(6)Mi计算签名σi=(di+h(ci,idi,Ti))-1·P,其中,P为生成元;
(7)Mi发送{idi,ci,σi,Ti}给聚合器Aj
所述的步骤(3.2)具体包括以下内容:
(3.2.1)当Aj从Mi收到{idi,ci,σi,Ti}之后,Aj检查签名σi的正确性,如果e(σi,Ri+h(ci,idi,Ti)·P)=g2成立,证明消息来自于一个合法的智能电表,信息被接收,否则,要求数据重发;其中e:G1×G1→G2,e是一个双线性映射,Ri为第i个电表Mi的公钥,g2为群G2的生成元;
(3.2.2)当Aj从所有电表收到消息之后,Aj计算所有数据密文ci的和cj
Figure FDA0003853763310000021
其中
Figure FDA0003853763310000022
为第i组电表
Figure FDA0003853763310000023
中所有ci的和,
Figure FDA00038537633100000211
表示系统中电表总数;
(3.2.3)Aj生成签名σj=(dj+h(cj,idj,Ti))-1·P;其中,dj表示聚合器Aj的私钥,idj表示聚合器Aj的编号;
(3.2.5)Aj发送{idj,cj,σj,Ti}给
Figure FDA0003853763310000024
所述的步骤(3.3)具体包括以下内容:
收到{idj,cj,σj,Ti},
Figure FDA0003853763310000025
检查消息的签名,即
Figure FDA0003853763310000026
检查等式e(σj,Rj+h(cj,idj,Ti)·P)=g2,如果等式成立,证明消息来自于一个合法的智能电表,
Figure FDA0003853763310000027
计算此轮数据汇报的解密密钥gu=e(H(Ti),Rsu),
Figure FDA0003853763310000028
解密cj得到cu=gu·cj;如果等式不成立,要求数据重发;
||表示连接符,e是一个双线性映射,H()是将输入映射到群G1中的一个元素,h()是将输入映射成一个整数,并且对群G1的阶求余。
2.根据权利要求1所述的一种基于双线性映射可扩展分组多数据保护方法,其特征在于:步骤(2)中电表加密自己数据的密钥Rsi生成方法为:
(1)聚合器Aj存储每组电表的{idi,Ri}到一个有序表中,其中,idi为第i个电表Mi的编号,Ri为第i个电表Mi的公钥;
(2)Aj利用组内其他电表的公钥以及公共事业服务提供商
Figure FDA0003853763310000029
的公钥为每个电表计算密钥,组内第i个电表Mi的密钥Rci的计算公式为:
Figure FDA00038537633100000210
Figure FDA0003853763310000031
其中
Figure FDA0003853763310000032
表示组内第i个电表之前的s个电表的公钥之和,
Figure FDA0003853763310000033
表示组内第i个电表之后的s个电表的公钥之和,Ru表示公共事业服务提供商
Figure FDA0003853763310000034
的公钥;
(3)Aj发送{Rci}给电表Mi,Mi计算Rsi=di·Rci作为私钥来加密数据,其中di表示第i个电表Mi的私钥。
3.根据权利要求1所述的一种基于双线性映射可扩展分组多数据保护方法,其特征在于:步骤(2)中的公共事业服务提供商
Figure FDA00038537633100000312
生成的解密密钥生成方法为:
Aj首先计算每组中所有电表的公钥和,然后进一步计算所有t组的公钥和
Figure FDA0003853763310000035
最后得到解密电表数据的密钥Rsu,具体公式如下:
Figure FDA0003853763310000036
Figure FDA0003853763310000037
其中,du表示公共事业服务提供商
Figure FDA0003853763310000038
的私钥,
Figure FDA0003853763310000039
表示第i组电表,
Figure FDA00038537633100000310
表示第i组电表中所有电表的公钥和,t表示共有t组电表。
4.根据权利要求1或2或3所述的一种基于双线性映射可扩展分组多数据保护方法,其特征在于:步骤(1)中的电表可以替换,替换后要进行相应更新,具体指计算新电表M′i数据加密密钥R′si,新电表M′i之前及之后的第1,…,s个电表的数据加密密钥R′sj,以及公共事业服务提供商
Figure FDA00038537633100000311
生成的替换后的解密密钥R′su
其中,所述新电表M′i数据加密密钥R′si的计算,即用新电表M′i的公钥、私钥代替原电表Mi的公钥、私钥;
所述新电表M′i之后的第1,…,s个电表的数据加密密钥的计算,具体的,新电表M′i之后的第j个电表的数据加密密钥R′sj计算公式如下:
R′sj=dj·R′cj
R′cj=Rcj+(Ri-R′i)
其中,Ri表示原电表Mi的公钥,R′i表示新电表M′i的公钥,Rcj表示更新前原电表Mi之后的第j个电表的密钥,dj表示原电表Mi之后的第j个电表的私钥;
所述公共事业服务提供商
Figure FDA0003853763310000041
的解密密钥
Figure FDA0003853763310000042
的计算,即用新电表M′i的公钥代替原电表Mi的公钥,具体为:首先计算公共事业服务提供商
Figure FDA0003853763310000043
生成的密钥
Figure FDA0003853763310000044
公式为:
Figure FDA0003853763310000045
然后计算解密密钥
Figure FDA0003853763310000046
5.根据权利要求1或2或3所述的一种基于双线性映射可扩展分组多数据保护方法,其特征在于:步骤(1)中的电表动态加入,动态加入后要进行相应更新,具体如下,
Figure FDA0003853763310000047
个新电表
Figure FDA0003853763310000048
动态加入,电表会加入到最后一组的最后部分,动态加入后进行相应更新,具体包括新电表
Figure FDA0003853763310000049
数据加密密钥的更新,新电表Mr1之前s个电表的数据加密密钥的更新,新电表
Figure FDA00038537633100000410
之后s个电表的数据加密密钥的更新,以及公共事业服务提供商
Figure FDA00038537633100000411
生成的解密密钥的更新;
第k个新电表Mrk的数据加密密钥的更新方法为:首先计算新电表Mrk的密钥
Figure FDA00038537633100000412
其中,
Figure FDA00038537633100000413
表示新电表Mrk之前的s个电表的公钥之和,
Figure FDA00038537633100000414
表示新电表Mrk之后的s个电表的公钥之和;然后计算新电表Mrk的数据加密密钥Rsk,具体公式为:Rsk=drk·Rck,其中,drk表示新电表Mrk的私钥;
所述新电表Mr1之前s个电表的数据加密密钥的更新,新电表
Figure FDA00038537633100000424
之后s个电表的数据加密密钥的更新,具体为:
Mi属于新电表Mr1之前的s个电表,或者新电表
Figure FDA00038537633100000425
之后s个电表,
首先计算动态加入电表后的Mi的密钥R′ci
Figure FDA00038537633100000415
其中,
Figure FDA00038537633100000416
表示新电表加入之后,Mi前s个电表的公钥之和,
Figure FDA00038537633100000417
表示新电表加入之后,Mi后s个电表的公钥之和;然后计算动态加入电表后的Mi的数据加密密钥R′si,R′si=di·R′ci,di表示Mi的私钥;
所述公共事业服务提供商
Figure FDA00038537633100000418
更新后的解密密钥R′su,具体计算如下:
Figure FDA00038537633100000419
Figure FDA00038537633100000420
其中,du表示公共事业服务提供商
Figure FDA00038537633100000421
的私钥,
Figure FDA00038537633100000422
表示动态加入前系统中所有电表的公钥的和,∑Rrk表示
Figure FDA00038537633100000423
个新电表公钥和。
6.根据权利要求1或2或3所述的一种基于双线性映射可扩展分组多数据保护方法,其特征在于:步骤(1)中的电表动态删除,动态删除后要进行相应更新,具体如下,有
Figure FDA0003853763310000051
个电表
Figure FDA0003853763310000052
动态删除,对于组内剩余的电表,仅更新被删除电表的加密强度范围之内的电表Mi的数据加密密钥,具体为:计算Mi的R′ci
Figure FDA0003853763310000053
然后计算Mi的数据加密密钥R′si,R′si=di·R′ci,其中,
Figure FDA0003853763310000054
表示删除电表之后的Mi之前的s个电表的公钥和,
Figure FDA0003853763310000055
表示删除电表之后的Mi之后的s个电表的公钥和;
对于公用事业服务商
Figure FDA0003853763310000056
Figure FDA0003853763310000057
更新Rsu为R′su,具体为:
Figure FDA0003853763310000058
Figure FDA0003853763310000059
∑Rrk是删除的
Figure FDA00038537633100000510
个电表公钥的和,
Figure FDA00038537633100000511
表示更新前系统中所有电表的公钥的和。
CN202010918309.4A 2020-09-03 2020-09-03 一种基于双线性映射可扩展分组多数据保护方法 Active CN112073406B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010918309.4A CN112073406B (zh) 2020-09-03 2020-09-03 一种基于双线性映射可扩展分组多数据保护方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010918309.4A CN112073406B (zh) 2020-09-03 2020-09-03 一种基于双线性映射可扩展分组多数据保护方法

Publications (2)

Publication Number Publication Date
CN112073406A CN112073406A (zh) 2020-12-11
CN112073406B true CN112073406B (zh) 2023-01-13

Family

ID=73665746

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010918309.4A Active CN112073406B (zh) 2020-09-03 2020-09-03 一种基于双线性映射可扩展分组多数据保护方法

Country Status (1)

Country Link
CN (1) CN112073406B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115118448B (zh) * 2022-04-21 2023-09-01 腾讯科技(深圳)有限公司 数据处理方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104320393A (zh) * 2014-10-24 2015-01-28 西安电子科技大学 重加密可控的高效属性基代理重加密方法
CN110460570A (zh) * 2019-07-03 2019-11-15 湖南匡安网络技术有限公司 一种具有前向安全性的智能电网数据加密方法和解密方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4764447B2 (ja) * 2008-03-19 2011-09-07 株式会社東芝 グループ署名システム、装置及びプログラム
CN106452748A (zh) * 2016-10-18 2017-02-22 西安电子科技大学 基于多用户的外包数据库审计方法
CN111131148B (zh) * 2019-11-11 2022-03-22 重庆邮电大学 一种面向智能电网的可保护隐私数据聚合方法及系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104320393A (zh) * 2014-10-24 2015-01-28 西安电子科技大学 重加密可控的高效属性基代理重加密方法
CN110460570A (zh) * 2019-07-03 2019-11-15 湖南匡安网络技术有限公司 一种具有前向安全性的智能电网数据加密方法和解密方法

Also Published As

Publication number Publication date
CN112073406A (zh) 2020-12-11

Similar Documents

Publication Publication Date Title
CN111294366B (zh) 智能电网中抗密钥泄露的加密数据聚合的统计分析方法
CN111131148B (zh) 一种面向智能电网的可保护隐私数据聚合方法及系统
Ni et al. Balancing security and efficiency for smart metering against misbehaving collectors
CN108683493B (zh) 一种智能电网中提供隐私保护的数据聚合方法
Mahimkar et al. SecureDAV: A secure data aggregation and verification protocol for sensor networks
Lindell A simpler construction of CCA2-secure public-key encryption under general assumptions
JP5307191B2 (ja) 無線通信機器とサーバとの間でのデータの安全なトランザクションのためのシステムおよび方法
CN110120868B (zh) 一种基于区块链技术的智能电网安全数据聚合方法及系统
CN110830236B (zh) 基于全域哈希的身份基加密方法
CN105245326B (zh) 一种基于组合密码的智能电网安全通信方法
CN110086599B (zh) 基于同态变色龙哈希函数的哈希计算方法及签密方法
CN112637227A (zh) 面向智能电网的多维多子集抗差分攻击的数据聚合方法
CN105610773A (zh) 一种电能表远程抄表的通讯加密方法
CN113098681B (zh) 云存储中口令增强且可更新的盲化密钥管理方法
Wu et al. A lightweight SM2-based security authentication scheme for smart grids
CN110012443A (zh) 一种全同态的数据加密聚合方法及其系统
CN113162773A (zh) 一种可证安全的异构盲签密方法
CN114553883B (zh) 基于区块链的云边端协同数据采集与隐私保护方法和系统
CN117560143A (zh) 一种支持隐私保护的智能电网多维数据自适应高效聚合方法、系统、设备及介质
Zhang et al. Key-leakage resilient encrypted data aggregation with lightweight verification in fog-assisted smart grids
CN115484033A (zh) 基于国密算法的pmu电力系统通信方法
Niu et al. Lossy data aggregation integrity scheme in wireless sensor networks
CN112073406B (zh) 一种基于双线性映射可扩展分组多数据保护方法
CN110943845A (zh) 一种轻量级两方协同产生sm9签名的方法及介质
Tan et al. Chameleon: A blind double trapdoor hash function for securing AMI data aggregation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant