CN112202544B - 一种基于Paillier同态加密算法的智能电网数据安全聚合方法 - Google Patents

一种基于Paillier同态加密算法的智能电网数据安全聚合方法 Download PDF

Info

Publication number
CN112202544B
CN112202544B CN202011083569.0A CN202011083569A CN112202544B CN 112202544 B CN112202544 B CN 112202544B CN 202011083569 A CN202011083569 A CN 202011083569A CN 112202544 B CN112202544 B CN 112202544B
Authority
CN
China
Prior art keywords
data
power grid
cloud computing
management center
user side
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
CN202011083569.0A
Other languages
English (en)
Other versions
CN112202544A (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.)
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing University of Posts and Telecommunications
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 Nanjing University of Posts and Telecommunications filed Critical Nanjing University of Posts and Telecommunications
Priority to CN202011083569.0A priority Critical patent/CN112202544B/zh
Publication of CN112202544A publication Critical patent/CN112202544A/zh
Application granted granted Critical
Publication of CN112202544B publication Critical patent/CN112202544B/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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC

Landscapes

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

Abstract

本发明公开了一种基于Paillier同态加密算法的智能电网数据安全聚合方法,包括:步骤S1、系统参数初始化;步骤S2、电网管理中心向用户端做出授权行为;步骤S3、用户端向云计算中心认证身份是否合法,若用户端身份合法,则用户端向云计算中心上传第一数据;步骤S4、第一数据储存于云计算中心并且经过处理成第一聚合密文数据;步骤S5、电网管理中心接受第一聚合密文数据,并且验证第一聚合密文数据的有效性;若第一聚合密文数据有效,则电网管理中心获得第一数据;本发明充分利用哈希运算消息认证码(HMAC)和Paillier同态加密算法,有效的保护电网用户隐私和防止云计算中心恶意篡改用户数据。

Description

一种基于Paillier同态加密算法的智能电网数据安全聚合 方法
技术领域
本发明提出一种基于Paillier同态加密算法的智能电网数据安全聚合方法,属于信息加密领域。
背景技术
随着物联网与云计算技术的发展,数据呈现爆发式增长趋势。而数据中往往包含大量个人隐私等重要信息,例如在智能电网中,如果个人用电信息暴露,攻击者就可以通过该信息判断住户是否在家,进而实施一些违法行为。所以在这样的大数据时代,隐私保护问题就显得尤为重要。
为了解决这一问题,本发明引入了Paillier同态加密算法。Paillier同态加密算法是一种加法同态加密算法,可在密文状态下对数据进行聚合计算,通过一次解密便可以得到明文数据的累加值,这一性质使得Paillier同态加密算法在物联网时代得到广泛的应用。在智能电网中,某一区域的用户在同一时段利用Paillier同态加密算法加密自己的用电量并发送给电网管理者,电网管理者在密文状态下对数据进行聚合计算,计算出的聚合密文通过一次解密便可以得到该区域在这一时段的用电总量,进而调节分时电价和指导用户用电习惯。然而,随着云计算技术的发展,越来越多的隐私数据被存放在计算和储存能力更高的云计算中心,造成了聚合计算和数据解密的分离,即聚合计算方和电网管理中心不是同一个实体的情况。在本发明中,聚合计算方为云计算中心。这样一来,在对数据进行计算和储存时,云计算中心可能主动或者被动地伪造单个或多个数据来恶意篡改聚合密文,导致电网管理中心解密后不能得到正确的聚合明文,因此在用户上传的数据中加入电网管理中心可验证的消息十分必要。
针对上述问题,为了保护电网用户隐私和防止云计算中心恶意篡改用户数据,应保证云计算中心不能够访问用户数据的具体内容,且存在恶意篡改操作时电网管理中心解密聚合密文后能够立刻发现并溯回。
发明内容
本发明目的在于保护电网用户隐私和防止云计算中心恶意篡改用户数据,保证云计算中心不能够访问用户数据的具体内容,且存在恶意篡改操作时电网管理中心解密聚合密文后能够立刻发现并溯回;本发明公开了一种基于Paillier同态加密算法的智能电网数据安全聚合方法,具体包括如下步骤:
步骤S1、系统参数初始化,用户端、云计算中心和电网管理端生成各自的公私钥对;
步骤S2、电网管理中心向用户端做出授权行为;
步骤S3、用户端向云计算中心认证身份是否合法,若用户端身份合法,则用户端向云计算中心上传第一数据;所述第一数据包括:密文数据、密文数据的签名和用户列表,所述用户列表包括:用户端的公钥和时间戳;
步骤S4、所述第一数据储存于云计算中心,所述密文数据经过云计算中心的聚合计算形成第一聚合密文数据,所述第一聚合密文数据被发送到电网管理中心;
步骤S5、电网管理中心接受第一聚合密文数据,并且验证第一聚合密文数据的有效性;若第一聚合密文数据有效,则电网管理中心获得第一数据;若第一聚合密文数据无效,则进行步骤S6;
步骤S6、电网管理中心向云计算中心发出请求,请求云计算中心将所述第一聚合密文数据按照不同的划分域,划分成多个第二聚合密文数据,电网管理中心通过验证所述多个第二聚合密文数据来定位出错的第二聚合密文数据。
进一步的,所述步骤步骤S1还包括如下子步骤:
步骤S101、在PKI中,给定安全参数
Figure BDA0002719544970000021
首先通过
Figure BDA0002719544970000022
生成
Figure BDA0002719544970000023
其中
Figure BDA0002719544970000024
为素数阶p的双线性群对,双线性映射为
Figure BDA0002719544970000025
P是
Figure BDA0002719544970000026
的一个生成元;
步骤S102、用户端选择一个随机数
Figure BDA0002719544970000027
作为它的私钥并计算它的公钥Xi=xiP,
Figure BDA00027195449700000216
其中
Figure BDA00027195449700000217
为智能电网用户端的集合;
电网管理中心选择一个随机数
Figure BDA0002719544970000028
作为它的私钥并计算它的公钥Y=yP;
云计算中心选择一个随机数
Figure BDA0002719544970000029
作为它的私钥并计算它的公钥Z=zP;
步骤S103、计算Paillier密码系统的公钥
Figure BDA00027195449700000210
和对应的私钥(λ,μ),其中p1和q1是两个足够大的素数并满足
Figure BDA00027195449700000218
λ=lcm(p1-1,q1-1),μ=(L(gλmod n2))-1mod n;
假设用户总量
Figure BDA00027195449700000219
并且有2种类型的数据
Figure BDA00027195449700000211
需要在Paillier密码系统中进行加密;
其中
Figure BDA00027195449700000212
是用户端的用电数据,
Figure BDA00027195449700000213
是消息验证码,且
Figure BDA00027195449700000214
的值始终小于一个足够大的素数d,并且|f|<256;
步骤S104、选择安全的密码散列函数和称加密算法(E,D);所述安全的密码散列函数包括:H、H1和HMACk
其中
Figure BDA00027195449700000215
所述加密算法(E,D)为AES,密钥长度为256bits;发布系统公开参数,表达式如下所示:
Figure BDA0002719544970000031
步骤S105、将Paillier密码系统的私钥(λ,μ)通过安全通道发送给电网管理中心。
进一步的,其特征在于,所述步骤步骤S2还包括如下子步骤:
步骤S201、所述电网管理中心为用户端创建合同,所述合同包括用户端的相关信息,相关信息包括:用户端的家庭住址信息、所在小区信息以及用户端的公钥;
步骤S202、电网管理中心利用椭圆曲线签名算法为合同生成对应的第一签名;
步骤S203、电网管理中心将合同以及第一签名发送给用户端。
进一步的,所述步骤步骤S3还包括如下子步骤:
步骤S301、用户端向云计算中心发送合同和第一签名;
步骤S302、云计算中心利用基于双线性对的批验证算法验证合同和第一签名是否有效;若第一签名无效,则第一签名对应的用户端的身份不合法,云计算中心找出合同中的无效项,并且拒绝无效项;若第一签名有效,则第一签名对应的用户端的身份合法,
步骤S304、每隔一段时间,电网管理中心选择两个满足特定条件的素数a1,a2,并计算(g1,g2),其中
Figure BDA0002719544970000032
i=1,2,加密后发送给用户端;用户端解密得到(g1,g2),将其作为Paillier密码系统公钥的一部分;
用户端利用Paillier同态加密算法加密明文数据得到密文数据;所述明文数据包括:用户端的用电量和第一消息认证码;所述第一消息认证码通过第一共享密钥计算得出,所述第一共享密钥为用户端和云计算中心之间的共享秘钥,所述第一共享密钥由用户端通过Diffie-Hellman算法计算得出;
步骤S305、用户端利用椭圆曲线签名算法为所述密文数据进行第二签名,并且将第一数据上传至云计算中心。
进一步的,所述步骤步骤S4还包括如下子步骤:
步骤S401、所述云计算中心接受所述第一数据,所述云计算中心检查用户端的公钥是否成功认证,若成功认证,云计算中心验证第二签名是否有效;若有效,云计算中心储存所述第一数据;
步骤S402、云计算中心对验证后的密文数据进行聚合操作,生成第一聚合密文数据,所述聚合操作为对验证后的密文数据进行模乘运算;
步骤S403、云计算中心利用椭圆曲线签名算法对所述第一聚合密文数据以及用户列表进行第三签名。
进一步的,所述步骤步骤S5还包括如下子步骤:
步骤S501、电网管理中心接收第一聚合密文数据、用户列表和第三签名,并且验证第三签名是否有效,若有效,电网管理中心继续验证用户列表中的每一个用户端的公钥,若用户端的公钥均为已授权公钥,电网管理中心则利用用户端的公钥和时间戳通过Diffie-Hellman算法计算电网管理中心与用户端之间的共享密钥,所述共享密钥为第二共享密钥,然后使用第二共享密钥计算第二消息认证码,最后对第二消息认证码进行求和,得出第二消息认证码的和;
步骤S502、电网管理中心利用Paillier同态加密算法的私钥解密签名后的第一聚合密文数据并恢复出明文数据;
步骤S503、电网管理中心验证第一消息认证码和第二消息认证码的和是否一致,若一致,则第一聚合密文数据完整,电网管理中心成功获得明文数据;若不一致继续执行步骤S6。
进一步的,所述步骤步骤S6还包括如下子步骤:
步骤S601、电网管理中心将用户列表划分为多个划分域;然后向云计算中心提出请求;请求云计算中心向电网管理中心上传第二聚合密文数据;所述第二聚合密文数据为将第一聚合密文数据参照多个划分域划分而成;
步骤S602、电网管理中心通过不断验证第二聚合密文数据相对应的第一消息认证码的和与第二消息认证码的和是否一致,来缩小错误数据范围并最终定位错误的第二聚合密文数据;
步骤S602、电网管理中心从云计算中心提取错误的第二聚合密文数据,然后验证对应的签名是否有效,若有效,则用户端上传了错误的数据。如无效,则第二聚合密文数据被恶意篡改。
进一步的,在所述步骤S2中:
所述合同为COnti,第一签名为σi,第一签名的表达式为:
σi=yH(Conti);
Figure BDA0002719544970000044
Figure BDA0002719544970000045
电网管理中心将(contii)发给用户端。
进一步的,在所述步骤S3中,利用基于双线性对的批验证算法验证合同和第一签名是否有效,具体为:
云计算中心选择随机数
Figure BDA0002719544970000041
其中
Figure BDA0002719544970000046
之后验证以下公式是否成立:
Figure BDA0002719544970000047
若公式成立,则合同和第一签名有效,反之无效;
所述特定条件为:
||1|,|a2|≥κ1,并且
Figure BDA0002719544970000042
所述加密的具体操作为:
计算:
ki=H1(yXi,ti)
Figure BDA0002719544970000043
其中ti为时间戳,电网管理中心将(Gi,ti)发送给发送给用户端;
所述第一共享密钥为:
ki=H1(xiY,ti)
所述用户端解密得到(g1,g2)的具体操作为:
用户端使用第一共享密钥解密Gi得到(g1,g2);
所述用户端利用Paillier同态加密算法加密明文数据得到密文数据的具体操作为:
用户端选择一个随机数
Figure BDA0002719544970000051
并计算密文数据Ci,t
Figure BDA0002719544970000052
其中ti为时间戳,di1为用户端的用电量,
Figure BDA0002719544970000053
所述第二签名为:
Figure BDA0002719544970000054
所述第一数据为:
Figure BDA0002719544970000055
其中
Figure BDA00027195449700000511
进一步的,在所述步骤S4中,所述云计算中心验证第二签名是否有效的具体操作为:
云计算中心选择随机数
Figure BDA0002719544970000056
Figure BDA00027195449700000512
验证以下公式是否成立:
Figure BDA0002719544970000057
如果公式不成立,则说明第二签名无效;
所述为对验证后的密文数据进行模乘运算具体为:
Figure BDA00027195449700000513
所述第三签名为:
Figure BDA0002719544970000058
进一步的,在所述步骤S5中,所述验证第三签名是否有效的具体操作为:
验证以下公式是否成立:
Figure BDA0002719544970000059
若成立,则第三签名有效,若不成立,则第三签名无效;
所述电网管理中心则利用用户端的公钥和时间戳通过Diffie-Hellman算法计算电网管理中心与用户端之间的共享密钥的具体操作为:
利用
Figure BDA00027195449700000514
计算:
ki=H1(yXi,ti)
Figure BDA00027195449700000510
其中
Figure BDA00027195449700000515
所述电网管理中心恢复出明文数据的具体操作为:
电网管理中心利用(λ,μ)解密第一聚合密文数据Ct得到明文数据:
Figure BDA0002719544970000061
Figure BDA0002719544970000065
其中j=1,2,则Mt=a1D1+a2D2 mod n
其中D1为最终的明文数据,D2为用户的第二消息认证码的和;
所述电网管理中心验证第一消息认证码和第二消息认证码的和是否一致的具体操作为:
电网管理中心验证以下公式是否成立:
Figure BDA0002719544970000062
若成立,则第一聚合密文数据完整,电网管理中心成功获得该时段电网用户的用电总量,若不成立,继续执行步骤S6。
进一步的,在所述步骤S6中,所述电网管理中心通过不断验证第二聚合密文数据相对应的第一消息认证码的和与第二消息认证码的和是否一致的具体操作为:
通过解密、计算和验证
Figure BDA0002719544970000063
所述验证验证对应的签名是否有效的具体操作为:
验证
Figure BDA0002719544970000064
是否成立,若成立,则用户端上传了错误的数据,若不成立,则数据被恶意篡改。
本发明的有益效果是:
1、本发明充分利用密钥相关的哈希运算消息认证码(HMAC),通过将消息认证码添加到明文数据中进行加密,在解密时验证消息认证码的有效性,从而能够有效地防止篡改;
2、本发明通过引入Paillier同态加密算法,有效的保护电网用户隐私,保证了云计算中心无法访问用户数据的具体内容。
附图说明
图1为本发明实施例1中公开技术方案的流程图。
图2为本发明实施例1中各方参与实体信息交互的逻辑框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明采用的Paillier密码系统可以实现同态性,在隐私保护方面中得到了广泛的应用。具体来说,加密系统由密钥生成、加密和解密三种算法组成。
密钥生成:给定安全参数
Figure BDA0002719544970000078
首先选定两个足够大的素数p1和q1,其中
Figure BDA0002719544970000071
然后,计算n=p1q1和λ=lcm(p1-1,q1-1)。
定义一个函数L(u)=(u-1)/n并选择一个生成元
Figure BDA0002719544970000072
然后计算μ=(L(gλmodn2))-1 mod n。由此,便得到了公钥pk=(n,g)和对应的私钥sk=(λ,μ)。
加密:给定一个消息
Figure BDA0002719544970000073
选择一个随机数
Figure BDA0002719544970000074
然后计算密文:
c=E(m)=gm·rn mod n2
其加性同态为:
Figure BDA0002719544970000075
解密:给定密文
Figure BDA0002719544970000076
则对应的明文可以恢复为:
Figure BDA0002719544970000077
值得注意的是,对于选择明文攻击,Paillier密码系统被证明是安全的。
实施例1
参加图1和图2,本实施例1提供一种基于Paillier同态加密算法的智能电网数据安全聚合方法,具有高安全强度和防篡改的优点,需要进行说明的是本方法参与实体如下:
电网管理中心:智能电网的管理终端,为电网用户提供电力保障,负责统计用户的用电数据,根据用电数据制定合理的分时电价并指导用户用电习惯。它是聚合数据的拥有者,拥有Paillier同态加密算法的私钥,可以在收到密文数据时验证密文的有效性。
云计算中心:具有庞大的存储空间和计算资源来维护用户的数据,负责储存和聚合电网用户上传的用电密文数据。在聚合计算的过程中,可能主动或者被动地伪造单个或多个数据来恶意篡改聚合密文,导致电网管理中心解密后不能得到正确的聚合明文。此外,它对用户的数据十分好奇,可能通过交易这些隐私数据来牟利。
用户端:用户端也即是电网用户,电网用户是智能电网的使用者,默认装有智能电表,通过电网管理中心的授权后,智能电表会定时向云计算中心上传这一时段用电量的密文数据。在本实施例中,用户端、电网用户和智能电表默认为同一实体。
本方法的具体过程为:
步骤S1、初始化系统参数,参与方生成各自的公私钥对。具体步骤如下:
在PKI中,给定安全参数
Figure BDA0002719544970000081
首先通过
Figure BDA0002719544970000082
生成
Figure BDA0002719544970000083
其中
Figure BDA0002719544970000084
为素数阶p的双线性群对,双线性映射为e:
Figure BDA0002719544970000085
P是
Figure BDA0002719544970000086
的一个生成元。
电网用户选择一个随机数
Figure BDA0002719544970000087
作为它的私钥并计算它的公钥Xi=xiP,
Figure BDA00027195449700000821
其中
Figure BDA00027195449700000822
为电网用户集合。
电网管理中心选择一个随机数
Figure BDA0002719544970000088
作为它的私钥并计算它的公钥Y=yP。
云计算中心选择一个随机数
Figure BDA0002719544970000089
作为它的私钥并计算它的公钥Z=zP。
计算Paillier密码系统的公钥
Figure BDA00027195449700000810
和对应的私钥(λ,μ),其中p1和q1是两个足够大的素数并满足
Figure BDA00027195449700000811
λ=lcm(p1-1,q1-1),μ=(L(gλmodn2))-1 mod n。假设用户总量
Figure BDA00027195449700000823
且有2种类型的数据
Figure BDA00027195449700000812
需要在Paillier密码系统中进行加密,其中
Figure BDA00027195449700000813
是电网用户用电数据,
Figure BDA00027195449700000814
是消息验证码,且
Figure BDA00027195449700000815
的值始终小于一个足够大的素数d,|d|<256。
选择三个安全的密码散列函数H、H1和HMACk,其中H:
Figure BDA00027195449700000816
Figure BDA00027195449700000817
以及一个对称加密算法(E,D),本发明中为AES(密钥长度为256bits)。
最后,发布系统公开参数:
Figure BDA00027195449700000818
并将(λ,μ)通过安全通道发送给电网管理中心。
步骤S2、电网管理中心向电网用户授权并协商对称密钥,具体步骤如下:
在电网管理中心和电网用户之间创建合同Conti,该合同包含了电网用户的相关信息,例如家庭住址、所在小区等。此外,Conti中还包含有电网用户的公钥Xi
电网管理中心为Conti生成签名σi:σi=yH(Conti)。
电网管理中心将(Coutii)发送给电网用户。
步骤S3、电网用户向云计算中心认证合法身份,并上传数据,具体步骤如下:
电网用户向云计算中心发送(Contii),其中Conti包含电网用户的公钥。
在一段时间内,云计算中心接收到很多的(Contii),其中
Figure BDA00027195449700000824
Figure BDA00027195449700000825
云计算中心选择随机数
Figure BDA00027195449700000819
其中
Figure BDA00027195449700000826
之后验证以下公式是否成立:
Figure BDA00027195449700000820
如果成立,云计算中心成功认证电网用户身份;否则云计算中心找出其中无效项并拒绝它们。
每隔一段时间,电网管理中心选择两个数a1,a2,其中a1,a2是满足|a1|,|a2|≥κ1的素数,且
Figure BDA0002719544970000091
计算(g1,g2),其中
Figure BDA0002719544970000092
i=1,2,然后计算:
ki=H1(yXi,ti)
Figure BDA0002719544970000093
其中ti为时间戳。之后,电网管理中心将(Gi,ti)发送给对应的电网用户。
电网用户接收到电网管理中心发来的(Gi,ti)后,会先计算共享密钥ki=H1(xiY,ti),然后使用共享密钥解密Gi得到(g1,g2)。然后选择一个随机数
Figure BDA0002719544970000094
并计算数据密文Ci,t
Figure BDA0002719544970000095
其中ti为时间戳,di1为电网用户的用电量,
Figure BDA0002719544970000096
电网用户为Ci,t计算签名:
Figure BDA0002719544970000097
最后,用户将
Figure BDA0002719544970000098
发送给云计算中心。
步骤S4、云计算中心存储用户上传的密文数据,计算并向电网管理中心发送聚合密文数据,具体步骤如下:
在一段时间内,云计算中心接收到很多的
Figure BDA0002719544970000099
其中
Figure BDA00027195449700000916
对于每一个
Figure BDA00027195449700000917
云计算中心检查Xi之前是否成功认证,如果是,云计算中心选择随机数
Figure BDA00027195449700000910
Figure BDA00027195449700000918
验证以下公式是否成立:
Figure BDA00027195449700000911
如果公式不成立,云计算中心找出其中的无效项并拒绝。
云计算中心对验证后的密文数据按以下公式进行聚合:
Figure BDA00027195449700000919
云计算中心为Ct计算签名:
Figure BDA00027195449700000912
最后,云计算中心将
Figure BDA00027195449700000913
发送给电网管理中心。
步骤S5、电网管理中心解密密文数据并验证数据有效性。具体步骤如下:
电网管理中心接收到
Figure BDA00027195449700000914
首先检查验证以下公式是否成立:
Figure BDA00027195449700000915
如果不成立,电网管理中心拒绝该聚合密文。
对于
Figure BDA00027195449700000920
中的每一个Xi,电网管理中心验证其是否为已授权公钥,且ti为有效的时间戳,如果是则利用
Figure BDA0002719544970000108
计算:
ki=H1(yXi,ti)
Figure BDA0002719544970000101
其中
Figure BDA0002719544970000109
电网管理中心利用(λ,μ)解密Ct得到:
Figure BDA0002719544970000102
Figure BDA00027195449700001010
其中j=1,2。则Mt=a1D1+a2D2 mod n,计算:
D1=(Mt mod a2)/a1
D2=(Mt-(Mt mod a2))/a2
其中D1为最终的聚合明文结果,D2为用户的消息验证码的累加值。然后,电网管理中心验证以下公式是否成立:
Figure BDA0002719544970000103
如果成立,则聚合密文完整,电网管理中心成功获得该时段电网用户的用电总量;否则,继续执行步骤步骤S6。
步骤S6、电网管理中心通过向云计算中心请求不同的聚合密文来定位出错数据。具体步骤如下:
电网管理中心通过划分
Figure BDA00027195449700001011
不断地向云计算中心请求聚合密文,通过解密、计算和验证
Figure BDA0002719544970000104
来缩小错误数据范围并最终定位错误数据。
电网管理中心提取错误数据密文
Figure BDA0002719544970000105
验证
Figure BDA0002719544970000106
Figure BDA0002719544970000107
是否成立,若成立,则用户上传了错误的数据。如不成立,则数据被恶意篡改。

Claims (7)

1.一种基于Paillier同态加密算法的智能电网数据安全聚合方法,其特征在于,包括如下步骤:
步骤S1、系统参数初始化,用户端、云计算中心和电网管理中心生成各自的公私钥对;
步骤S2、电网管理中心向用户端做出授权行为;
步骤S3、用户端向云计算中心认证身份是否合法,若用户端身份合法,则用户端向云计算中心上传第一数据;所述第一数据包括:密文数据、密文数据的签名和用户列表,所述用户列表包括:用户端的公钥和时间戳;
步骤S4、所述第一数据储存于云计算中心,所述密文数据经过云计算中心的聚合计算形成第一聚合密文数据,所述第一聚合密文数据被发送到电网管理中心;
步骤S5、电网管理中心接受第一聚合密文数据,并且验证第一聚合密文数据的有效性;若第一聚合密文数据有效,则电网管理中心获得第一数据;若第一聚合密文数据无效,则进行步骤S6;
步骤S6、电网管理中心向云计算中心发出请求,请求云计算中心将所述第一聚合密文数据按照不同的划分域,划分成多个第二聚合密文数据,电网管理中心通过验证所述多个第二聚合密文数据来定位出错的第二聚合密文数据。
2.根据权利要求1所述的一种基于Paillier同态加密算法的智能电网数据安全聚合方法,其特征在于,所述步骤S1还包括如下子步骤:
步骤S101、在PKI中,给定安全参数
Figure FDA0003633653810000011
首先通过
Figure FDA0003633653810000012
生成
Figure FDA0003633653810000013
其中
Figure FDA0003633653810000014
为素数阶p的双线性群对,双线性映射为e:
Figure FDA0003633653810000015
P是
Figure FDA0003633653810000016
的一个生成元;
步骤S102、用户端选择一个随机数
Figure FDA0003633653810000017
作为它的私钥并计算它的公钥Xi=xiP,
Figure FDA0003633653810000018
其中
Figure FDA0003633653810000019
为智能电网用户端的集合;
电网管理中心选择一个随机数
Figure FDA00036336538100000110
作为它的私钥并计算它的公钥Y=yP;
云计算中心选择一个随机数
Figure FDA00036336538100000111
作为它的私钥并计算它的公钥Z=zP;
步骤S103、计算Paillier密码系统的公钥
Figure FDA00036336538100000112
和对应的私钥(λ,μ),其中p1和q1是两个足够大的素数并满足
Figure FDA00036336538100000113
Figure FDA00036336538100000114
λ=lcm(p1-1,q1-1),μ=(L(gλmod n2))-1mod n;
假设用户总量
Figure FDA00036336538100000115
并且有2种类型的数据
Figure FDA00036336538100000116
需要在Paillier密码系统中进行加密;
其中
Figure FDA00036336538100000117
是用户端的用电数据,
Figure FDA00036336538100000118
是消息验证码,且
Figure FDA00036336538100000119
的值始终小于一个足够大的素数d,并且|d|<256;
步骤S104、选择安全的密码散列函数和称加密算法(E,D);所述安全的密码散列函数包括:H、H1和HMACk
其中H:
Figure FDA0003633653810000021
H1:{0,1}*→{0,1}|256|,HMACk:
Figure FDA0003633653810000022
所述加密算法(E,D)为AES,密钥长度为256bits;发布系统公开参数,表达式如下所示:
Figure FDA0003633653810000023
步骤S105、将Paillier密码系统的私钥(λ,μ)通过安全通道发送给电网管理中心。
3.根据权利要求2所述的一种基于Paillier同态加密算法的智能电网数据安全聚合方法,其特征在于,所述步骤S2还包括如下子步骤:
步骤S201、所述电网管理中心为用户端创建合同,所述合同包括用户端的相关信息,相关信息包括:用户端的家庭住址信息、所在小区信息以及用户端的公钥;
步骤S202、电网管理中心利用椭圆曲线签名算法为合同生成对应的第一签名;
步骤S203、电网管理中心将合同以及第一签名发送给用户端。
4.根据权利要求3所述的一种基于Paillier同态加密算法的智能电网数据安全聚合方法,其特征在于,所述步骤S3还包括如下子步骤:
步骤S301、用户端向云计算中心发送合同和第一签名;
步骤S302、云计算中心利用基于双线性对的批验证算法验证合同和第一签名是否有效;若第一签名无效,则第一签名对应的用户端的身份不合法,云计算中心找出合同中的无效项,并且拒绝无效项;若第一签名有效,则第一签名对应的用户端的身份合法;
步骤S304、每隔一段时间,电网管理中心选择两个满足特定条件的素数a1,a2,并计算(g1,g2),其中
Figure FDA0003633653810000024
加密后发送给用户端;用户端解密得到(g1,g2),将其作为Paillier密码系统公钥的一部分;
用户端利用Paillier同态加密算法加密明文数据得到密文数据;所述明文数据包括:用户端的用电量和第一消息认证码;所述第一消息认证码通过第一共享密钥计算得出,所述第一共享密钥为用户端和云计算中心之间的共享密钥,所述第一共享密钥由用户端通过Diffie-Hellman算法计算得出;
步骤S305、用户端利用椭圆曲线签名算法为所述密文数据进行第二签名,并且将第一数据上传至云计算中心。
5.根据权利要求4所述的一种基于Paillier同态加密算法的智能电网数据安全聚合方法,其特征在于,所述步骤S4还包括如下子步骤:
步骤S401、所述云计算中心接受所述第一数据,所述云计算中心检查用户端的公钥是否成功认证,若成功认证,云计算中心验证第二签名是否有效;若有效,云计算中心储存所述第一数据;
步骤S402、云计算中心对验证后的密文数据进行聚合操作,生成第一聚合密文数据,所述聚合操作为对验证后的密文数据进行模乘运算;
步骤S403、云计算中心利用椭圆曲线签名算法对所述第一聚合密文数据以及用户列表进行第三签名。
6.根据权利要求5所述的一种基于Paillier同态加密算法的智能电网数据安全聚合方法,其特征在于,所述步骤S5还包括如下子步骤:
步骤S501、电网管理中心接收第一聚合密文数据、用户列表和第三签名,并且验证第三签名是否有效,若有效,电网管理中心继续验证用户列表中的每一个用户端的公钥,若用户端的公钥均为已授权公钥,电网管理中心则利用用户端的公钥和时间戳通过Diffie-Hellman算法计算电网管理中心与用户端之间的共享密钥,所述共享密钥为第二共享密钥,然后使用第二共享密钥计算第二消息认证码,最后对第二消息认证码进行求和,得出第二消息认证码的和;
步骤S502、电网管理中心利用Paillier同态加密算法的私钥解密签名后的第一聚合密文数据并恢复出明文数据;
步骤S503、电网管理中心验证第一消息认证码和第二消息认证码的和是否一致,若一致,则第一聚合密文数据完整,电网管理中心成功获得明文数据;若不一致继续执行步骤S6。
7.根据权利要求6所述的一种基于Paillier同态加密算法的智能电网数据安全聚合方法,其特征在于,所述步骤S6还包括如下子步骤:
步骤S601、电网管理中心将用户列表划分为多个划分域;然后向云计算中心提出请求;请求云计算中心向电网管理中心上传第二聚合密文数据;所述第二聚合密文数据为将第一聚合密文数据参照多个划分域划分而成;
步骤S602、电网管理中心通过不断验证第二聚合密文数据相对应的第一消息认证码的和与第二消息认证码的和是否一致,来缩小错误数据范围并最终定位错误的第二聚合密文数据;
步骤S602、电网管理中心从云计算中心提取错误的第二聚合密文数据,然后验证对应的签名是否有效,若有效,则用户端上传了错误的数据,如无效,则第二聚合密文数据被恶意篡改。
CN202011083569.0A 2020-10-12 2020-10-12 一种基于Paillier同态加密算法的智能电网数据安全聚合方法 Active CN112202544B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011083569.0A CN112202544B (zh) 2020-10-12 2020-10-12 一种基于Paillier同态加密算法的智能电网数据安全聚合方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011083569.0A CN112202544B (zh) 2020-10-12 2020-10-12 一种基于Paillier同态加密算法的智能电网数据安全聚合方法

Publications (2)

Publication Number Publication Date
CN112202544A CN112202544A (zh) 2021-01-08
CN112202544B true CN112202544B (zh) 2022-06-21

Family

ID=74013466

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011083569.0A Active CN112202544B (zh) 2020-10-12 2020-10-12 一种基于Paillier同态加密算法的智能电网数据安全聚合方法

Country Status (1)

Country Link
CN (1) CN112202544B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113114451B (zh) * 2021-03-04 2023-04-07 西安交通大学 基于同态加密的企业云erp系统数据统计分析方法和系统
CN112769542B (zh) * 2021-04-12 2021-06-11 富算科技(上海)有限公司 基于椭圆曲线的乘法三元组生成方法、装置、设备及介质
CN113472770A (zh) * 2021-06-28 2021-10-01 深圳供电局有限公司 一种适用于电网大数据的安全外包计算架构
CN113783683B (zh) * 2021-11-12 2022-03-08 晨越建设项目管理集团股份有限公司 基于传感器网络的云平台隐私保护可验证数据聚合方法
CN115801222B (zh) * 2023-01-13 2023-05-23 佰聆数据股份有限公司 基于同态加密通信数据的电力用户真实性校验系统及方法
CN117041275A (zh) * 2023-08-09 2023-11-10 云海链控股股份有限公司 一种数据托管方法、系统、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110138538A (zh) * 2019-05-09 2019-08-16 南京邮电大学 基于雾计算的智能电网安全与隐私保护数据聚合方法
CN111294366A (zh) * 2020-05-13 2020-06-16 西南石油大学 智能电网中抗密钥泄露的加密数据聚合的统计分析方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110138538A (zh) * 2019-05-09 2019-08-16 南京邮电大学 基于雾计算的智能电网安全与隐私保护数据聚合方法
CN111294366A (zh) * 2020-05-13 2020-06-16 西南石油大学 智能电网中抗密钥泄露的加密数据聚合的统计分析方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
A Privacy-Preserving and Verifiable Federated Learning Scheme;X. Zhang;《ICC 2020 - 2020 IEEE International Conference on Communications (ICC), 2020, pp. 1-6, doi: 10.1109/ICC40277.2020.9148628.》;20200721;全文 *
基于同态加密的智能电表数据聚合方案;矫真等;《信息技术》;20200521(第05期);全文 *
雾辅助的轻量级隐私保护数据多级聚合研究;杨丽等;《小型微型计算机系统》;20200529(第06期);全文 *

Also Published As

Publication number Publication date
CN112202544A (zh) 2021-01-08

Similar Documents

Publication Publication Date Title
CN112202544B (zh) 一种基于Paillier同态加密算法的智能电网数据安全聚合方法
CN108683493B (zh) 一种智能电网中提供隐私保护的数据聚合方法
WO2021042685A1 (zh) 一种区块链的交易方法、装置及系统
Liao et al. A password authentication scheme over insecure networks
JP4527358B2 (ja) 鍵供託を使用しない、認証された個別暗号システム
CN104270249B (zh) 一种从无证书环境到基于身份环境的签密方法
US11870891B2 (en) Certificateless public key encryption using pairings
CN104301108B (zh) 一种从基于身份环境到无证书环境的签密方法
Wang et al. An efficient privacy‐preserving aggregation and billing protocol for smart grid
Zhang et al. An energy-efficient authentication scheme based on Chebyshev chaotic map for smart grid environments
CN109936456B (zh) 基于私钥池的抗量子计算数字签名方法和系统
CN110519226B (zh) 基于非对称密钥池和隐式证书的量子通信服务端保密通信方法和系统
CN105610773A (zh) 一种电能表远程抄表的通讯加密方法
Xiong et al. Scalable and forward secure network attestation with privacy-preserving in cloud-assisted internet of things
Sadhukhan et al. Cryptanalysis of an elliptic curve cryptography based lightweight authentication scheme for smart grid communication
CN115473623A (zh) 一种智能电网中多维用户数据安全聚合的方法
CN114095162A (zh) 一种无证书用电信息采集系统连接验证方法及装置
WO2016193731A1 (en) Authentication methods, systems, devices, servers and computer program products
Boyd et al. Authentication and key transport using public key cryptography
CN110740034B (zh) 基于联盟链的qkd网络认证密钥生成方法及系统
CN110048852B (zh) 基于非对称密钥池的量子通信服务站数字签密方法和系统
CN109902483B (zh) 基于多个密钥池的抗量子计算代理数字签名方法和系统
CN109687978B (zh) 基于私钥池和Elgamal的抗量子计算代理数字签名方法和系统
Nkurunziza et al. ECAAP‐SG: Efficient certificateless anonymous authentication protocol for SG
CN109787772B (zh) 基于对称密钥池的抗量子计算签密方法和系统

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