CN116232759A - 一种雾-区块链协助的智能电网聚合认证方法 - Google Patents

一种雾-区块链协助的智能电网聚合认证方法 Download PDF

Info

Publication number
CN116232759A
CN116232759A CN202310441086.0A CN202310441086A CN116232759A CN 116232759 A CN116232759 A CN 116232759A CN 202310441086 A CN202310441086 A CN 202310441086A CN 116232759 A CN116232759 A CN 116232759A
Authority
CN
China
Prior art keywords
key
blockchain
participant
identity
node
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.)
Pending
Application number
CN202310441086.0A
Other languages
English (en)
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.)
Southeast University
Original Assignee
Southeast University
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 Southeast University filed Critical Southeast University
Priority to CN202310441086.0A priority Critical patent/CN116232759A/zh
Publication of CN116232759A publication Critical patent/CN116232759A/zh
Pending legal-status Critical Current

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/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • 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
    • 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
    • H04L63/0442Network 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 wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Lock And Its Accessories (AREA)

Abstract

本发明公开了一种雾‑区块链协助的智能电网聚合认证方法,首先密钥生成中心初始化生成系统公私钥对;参与者自生成身份密钥对,然后将身份公钥发送给密钥生成中心;密钥生成中心为参与者生成签密密钥对,并发送给参与者,参与者运行密钥验证,验证通过则接受密钥,雾节点根据区块链中的信息通过广播签名对一组电表发起数据收集;电表根据区块链中电表的信息对广播信息进行验证,验证成功则将此电表的公钥信息存储在本地列表;电表将采集的数据进行签密,雾节点对密文进行聚合和解签密;雾节点向控制中心和云存储中心发起密钥协商,随后通过协商的密钥进行批量数据传输;当参与者出现违法行为,密钥生成中心可以向区块链申请对违法者信息的删除。

Description

一种雾-区块链协助的智能电网聚合认证方法
技术领域
本发明属于信息安全技术领域,具体涉及一种雾-区块链协助的智能电网聚合认证方法。
背景技术
考虑到智能电网设备的异构性,电网数据的收集和聚合包含两个部分:从智能电表收集大量小/短数据,以及将聚合的大量数据传输到存储中心/处理中心。在没有雾辅助的情况下,众多终端设备在网络上直接与云服务器交互会导致沉重的通信开销和高延迟(低服务质量),因此一些雾辅助数据共享模型被提出。然而,大多数已有模型只考虑雾节点如何验证分布式和分散的智能电表,而忽略了雾收集器本身带来的潜在安全风险。此外,大多数方案仅使用雾节点作为数据收集器而没有充分利用本地数据处理,这不仅浪费资源,而且没有从根本上减轻云服务器的负担。
工业界和学术界一致认为,智能电网系统的安全高度依赖于认证技术。对于短数据传输,公钥加密(例如聚合签密)方案实现了安全和高效的数据传输。然而,由于公钥加密的复杂性和密文开销,它不适合传输大量聚合数据。认证密钥协商这一密码学原语被提议来解决这一问题,通过生成对称加密的会话密钥以便一次安全传输大量数据。充分调研得出一个结论,为设备异构和通信模式复杂的智能电网设计一个混合的数据收集框架,以实现最佳效率并提供高质量的服务是十分有研究价值的。
安全密钥管理(例如升级和撤销)是安全身份验证的基石。依赖公钥基础设施(public key infrastructure,PKI)或集中式服务器(例如,密钥生成中心,KGC)进行密钥管理可能会导致安全漏洞,例如,服务器中存储的数据在受到攻击时可能会被篡改和删除。区块链正越来越多地试图取代传统的集中式服务器来管理设备密钥,因为它具有分布、透明度和防篡改等优点。首先,用户可以在执行身份验证之前通过请求区块链(一个分布式系统)快速获得所需的公钥信息。第二,智能合约中的任何操作,例如写入、更新和查询,都需要在执行前通过共识。这一特性使区块链适合于数据完整性保护和审计。然而,在将区块链与智能电网结合时,必须考虑隐私的权衡问题。
综上所述,为智能电网的异构数据收集设计一个高效和安全的身份认证和雾协助方案具有挑战性和现实价值。
发明内容
为解决上述问题,本发明考虑到智能电网场景中的三层设备的资源异构,设计了一个雾-区块链协助的智能电网聚合认证方法。该方法采用无证书聚合认证实现底层电表和雾节点的相互认证,同时使用密钥协商完成雾节点和上层服务器的批量数据共享。此外,在分布式区块链的协助下,完成对所有参与者的身份管理和对电表数据的完整性审计。
首先密钥生成中心初始化生成系统公私钥对;参与者(电表、雾节点、云存储中心、控制中心)自生成身份密钥对,然后将身份公钥发送给密钥生成中心;密钥生成中心为参与者生成签密密钥对,并发送给参与者,同时存储在区块链中;参与者运行密钥验证,验证通过则接受密钥,否则向区块链发给裁决请求;雾节点根据区块链中的信息通过广播签名对一组电表发起数据收集;电表根据区块链中电表的信息对广播信息进行验证,验证成功则将此电表的公钥信息存储在本地列表;电表将采集的数据进行签密,此步骤分为预签密和完整签密两部分,随后将密文发送给对应雾节点,同时将明文和密文的哈希值存储在区块链中;雾节点对密文进行聚合和解签密;雾节点向控制中心和云存储中心发起密钥协商,随后通过协商的密钥进行批量数据传输;当参与者出现违法行为,密钥生成中心可以向区块链申请对违法者信息的删除;当数据可能被篡改时,任何参与者可以向区块链申请完整性审计。
为了实现上述目的,本发明采取的技术方案是:雾-区块链协助的智能电网聚合认证方法,包括如下步骤:
S1,系统初始化:密钥生成中心初始化生成系统公私钥,公开系统公钥,保密系统私钥;所述系统公钥MPK和系统私钥MSK的表达式如下:
MPK=(G,GT,p,e,P,Ppub,P′pub,SymEβ,SymDβ,H1,H 1,H2,H3,H4)
MSK=(α,β,γ)
其中,G和GT为阶数是大素数p的乘法群,P为G的生成元,(Ppub=αP,P′pub=γP)是两个根据MSK计算的元素;e:G×G→GT为对称双线性映射;H1,H 1,H2,H3,H4为抗碰撞哈希函数;(SymEβ,SymDβ)是使用密钥β的对称加密和解密算法;(α,β,γ)为从群
Figure BDA0004193986600000041
(模p的整数群)中随机选取的随机值;
S2,参与者自生成身份密钥对:参与者包括电表、雾节点、云存储中心、控制中心四类,每个参与者自己生成一对身份公私钥,并将身份公钥发送给密钥生成中心,身份私钥秘密保存;所述身份密钥对(PKid,1,SKid,1)的表达式为:
PKid,1=xidP,
Figure BDA0004193986600000042
其中,xid为从
Figure BDA0004193986600000043
中随机选择的元素;
S3,完整密钥生成:密钥生成中心根据身份公钥为参与者生成完整密钥对,包括假名Pseudid、第二公钥PKid,2、第二私钥SKid,2和验证密钥VKid;其中,公钥存储在区块链中,其余秘密返回给参与者;若参与者为智能电表,所述完整密钥(Pseudid,PKid,2,SKid,2,VKid)的表达式为:
Pseudid=SymEβ(ID||PKid,1||T),PKid,2=vidP,SKid,2
=vid+αH1(ID||PKid,1||T)mod p,VKid
=SKid,2P+vidPKid,1
其中,T是密钥有效期;vid是从
Figure BDA0004193986600000044
中随机选择的元素;
若参与者是其他三类,密钥生成中心在生成以上密钥基础上,还要生成第三私钥SKid,3,其中SKid,3的表达式为:
SKid,3=γH3(ID||PKid,1||T);
S4,密钥验证:参与者接收到完整密钥对后,进行验证。首先将私钥SKid分解为(SKid,1,SKid,2,SKid,3),将PKid分解为(PKid,1,PKid,2),然后带入验证公式,若等式成立,则接收所有密钥;否则向区块链发起裁决请求;若参与者为智能电表,所述验证公式的表达式为:
SKid,2P=PKid,2+H1(ID||PKid,1||T)Ppub,VKid
=SKid,2P+xidPKid,2
如果参与者是其他三类,其还需要验证以下公式:
SKid,3P=H3(ID||PKid,1||T)P′pub
S5,广播签名:雾节点签名一条消息MSGs得到签名
Figure BDA0004193986600000051
并将签名和其身份广播给一组智能电表;所述签名/>
Figure BDA0004193986600000052
的表达式为:
Ri=riP,σi=h(SKfi,1+SKfi,2)+ri(mod p);
其中,MSGs是一个定长字符串消息,ri是从
Figure BDA0004193986600000053
中随机选择的元素;h=H′1(IDfi||Ri||PKid,1||PKid,2||T||MSGs)是一个哈希值;
S6,签名验证:收到广播签名后,智能电表根据身份从区块链中读取公钥,带入以下公式判断此雾节点的合法性;所述公式的表达式为:
σiP=h′(PKfi,1+H1(IDfi||PKfi,1||T)Ppub+PKfi,2)+Ri
其中,h′=H′1(IDfi||Ri||PKid,1||PKid,2||T||MSGs);
S7,签密:智能电表IDj签密数据得到密文,然后将密文和其假名发送给相应的雾节点;此步骤分为预签密和完整签密两个步骤;
S71,预签密:确定响应雾节点后,智能电表可以执行预签密生成半密文,所述半密文PCTj=(uj,Uj,Kj,hj,1)的公式为:
Figure BDA0004193986600000061
Uj=ujP,
Kj=uj(PKfi,1+H1(IDfi||PKfi,1||T)Ppub+PKfi,2,
hj,1=H2(IDfi||PKfi,1||PKfi,2||Uj||Kj);
其中,uj是是从
Figure BDA0004193986600000062
中随机选择的元素;
S72,完整签密:智能电表对采集的数据文件Fj,t进行完整签密,然后将完整密文和其假名发送给相应雾节点;所述完整密文CTj=(Pseudsmj,Uj,Cjjf,t)的公式为:
Uj=ujP,
Figure BDA0004193986600000063
σj=hj,2(SKsmj,1+SKsmj,2)+uj(mod p);
其中,Pseudsmj是电表的假名,θf,t是聚合标识符,hj,2=H4(Cj||Uj||θf,t||T);
S8,签名聚合:雾节点接收到一批密文后,对其中的签名进行聚合得到聚合密文,聚合密文的哈希值存储在区块链中;所述聚合密文的表达式如下:
CT=({Pseudsmj,Uj,Cj},σ=Σσjf,t);
其中,σ为聚合后的签名;
S9,解签密:雾节点对收集的密文进行解签密得到一组明文文件{Fj,t},然后在本地对文件进行压缩;压缩后文件的哈希值存储在区块链中;所述解签密的公式分为签名验证和解密两部分,其中签名验证公式的表达式为:
σP=Σ(hj ,2(PKsmj,1+H1(Pseudsmi||PKsmi,1||T)Ppub+PKsmj,2))
+ΣUj,
其中,hj ,2=H4(Cj||Uj||θf,t||T)。
解密公式的表达式为:
Figure BDA0004193986600000071
S10,密钥协商:雾节点与服务器(控制中心或云存储中心)进行密钥协商,通过签名预分享两个值A,B∈G,签名验证成功后接受这两个值,随后使用协商的密钥进行批量文件传输;雾节点端的协商密钥的表达式为:
Qs=H3(IDs||PKs,1||T),Seed=e(aQs,Pp ub)e(SKfi,3,B),
SnK=KDFseed(A||B||IDf||IDs||aB)
其中,IDs是控制中心或云存储中心的身份,IDf是雾节点的身份,PKs,1是其公钥,T是密钥有效期,
Figure BDA0004193986600000072
是雾节点自选的值,A=aP,SKfi,3是雾节点的私钥,B=bP∈G是控制中心或云存储中心预分享给雾节点的值,KDF是一个密钥衍生函数;
服务器端的协商密钥的表达式为:
Qf=H3(IDf||PKf,1||T),Seed=e(bQf,Pp ub)e(SKs,3,A),
SnK=KDFseed(A||B||IDf||IDs||bA),
其中,IDf是雾节点的身份,IDs是控制中心或云存储中心的身份,PKf,1是其公钥,T是密钥有效期,
Figure BDA0004193986600000073
是服务器自选的值,B=bP,SKs,3是服务器的私钥,A=aP∈G是雾节点预分享给服务器的值;
S11,设备撤销:当参与者出现违法行为,密钥生成中心可以向区块链申请对违法者信息的删除。若参与者的公钥不能在区块链中查询到,则无法进行身份验证;
S12,数据完整性审计:当数据可能被篡改时,任何参与者可以向区块链申请完整性审计。区块链根据存储在分类账中的哈希值对数据完整性进行审计,找出数据篡改的责任人。
为了实现上述目的,本发明还采取的技术方案是:雾-区块链协助的智能电网聚合认证产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述方法的步骤。
与现有技术相比,本发明的技术优势在于:
(1)本发明为智能电网设计一个分层的数据共享框架,由智能电表、雾节点、服务器层(控制中心或云服务器)和区块链组成。区块链取代了传统的PKI来管理密钥,雾节点通过与智能电表的相互认证来收集和本地处理(聚合验证)数据。
(2)发明设计了一种雾-区块链辅助的无证书聚合签密方案(CLASC),用于智能电表和雾节点之间的相互认证。此外,为了保护隐私和减少开销,还采用了假名技术和在线/离线技术。
(3)本发明采用认证密钥协议技术实现了雾节点和服务器之间的批量数据传输。值得一提的是,控制中心通常从云获取数据,但对于紧急情况和低延迟服务,云可选择直接与雾节点通信以获得数据。
(4)使用联盟区块链存储设备(电表仪表和雾节点)的身份信息和密文的哈希值,以管理(包括撤销和更新)设备并实现完整性审核。
附图说明
图1是本发明方法的系统框架图;
图2是本发明方法的流程步骤图。
具体实施方式
下面结合附图和具体实施方式,进一步阐明本发明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。需要说明的是,下面描述中使用的词语“前”、“后”、“左”、“右”、“上”和“下”指的是附图中的方向,词语“内”和“外”分别指的是朝向或远离特定部件几何中心的方向。
下面结合附图和具体实施方式,进一步阐明本发明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。
实施例1
本方案中的符号及其定义如表1所示:
表1
Figure BDA0004193986600000091
/>
Figure BDA0004193986600000101
如图1所示,本发明提出的雾-区块链协助的智能电网聚合认证方法,包括四个参与者:
(1)密钥生成中心(KGC):是负责系统初始化和密钥生成的可信服务器。此外,它与区块链合作管理密钥。
(2)智能电表(SM):是物联网终端设备,配备了安全组件来存储密钥和假名。
(3)云存储服务器(CSS):是用于存储智能电网历史数据的中央服务器。
(4)区块链(BC):是一个许可的分布式账本系统。在我们的方案中,设备和服务器基于存储在区块链中的两种类型的数据执行身份验证和完整性审计。
(5)控制中心(CC):是一组资源丰富的服务器。为了简单起见,我们将CC视为一个参与者,通过与CSS和BC的沟通来负责集中式数据处理。
(6)雾节点(FNs):是物联网边缘服务器(例如基站),其拥有比终端设备更多的资源。在我们的方案中,雾节点用于收集和聚合数据、本地处理数据(验证和解签密)以及与服务器通信。
图2展示了整个方案的数据交互过程,雾-区块链协助的智能电网聚合认证方法,具体实施步骤描述如下:
步骤S1:系统初始化。输入为一个安全参数κ,密钥生成中心执行以下步骤:
(1.1)选择两个阶为p的乘法循环群G,GT和一个双线性配对e:G×G→GT。P是群G的生成元。
(1.2)选择五个抗碰撞哈希函数:
Figure BDA0004193986600000111
Figure BDA0004193986600000112
{0,1}*→{0,1}l,H3:{0,1}*→G,/>
Figure BDA0004193986600000113
(1.3)选择一个密钥衍生函数KDF和一对使用密钥β的对称加密解密算法(SymEβ,SymDβ)。
(1.4)随机选择一个元素α,β,
Figure BDA0004193986600000114
计算Ppub=αP,P′pub=γP。
(1.5)公开系统公钥,保密私钥。所述系统公钥MPK和系统私钥MSK的表达式如下:
MPK=(G,GT,p,e,P,Ppub,P′pub,SymEβ,SymDβ,H1,H′1,H2,H3,H4)
MSK=(α,β,γ)
步骤S2:参与者自生成身份密钥对。参与者包括电表、雾节点、云存储中心、控制中心四类,每个参与者自己生成一对身份公私钥。包含以下步骤:
(2.1)参与者从群
Figure BDA0004193986600000121
中随机选取随机值xid设为身份私钥。
(2.2)计算身份公钥PKid,1=xidP。
(2.3)将身份公钥发送给密钥生成中心,身份私钥秘密保存。
步骤S3:完整密钥生成。密钥生成中心根据身份公钥为参与者生成完整密钥对,包括假名Pseudid、第二公钥PKid,2、第二私钥SKid,2和验证密钥。包含如下步骤:
(3.1)若参与者为智能电表:密钥生成中心参与者身份ID和身份公钥计算假名Pseudid=SymEβ(ID||PKid,1||T)。
(3.2)从群
Figure BDA0004193986600000122
中随机选取随机值vid计算第二公钥PKid,2=vidP,第二私钥SKid,2=vid+αH1(ID||PKid,1||T)mod p,和验证密钥VKid=SKid,2P+vidPKid,1。其中,T是密钥有效期。
(3.3)若参与者是其他三类,密钥生成中心在生成以上密钥基础上,还要生成第三私钥SKid,3=γH3(ID||PKid,1||T)。
(3.4)公钥存储在区块链中,其余密钥秘密返回给参与者。
步骤S4:密钥验证。参与者接收到完整密钥对后,进行验证。包含如下步骤:
(4.1)将私钥SKid分解为(SKid,1,SKid,2,SKid,3),将PKid分解为(PKid,1,PKid,2)。
(4.2)带入验证公式。若参与者为智能电表,所述验证公式的表达式为:
SKid,2P=PKid,2+H1(ID||PKid,1||T)Ppub,VKid
=SKid,2P+xidPKid,2
如果参与者是其他三类,其还需要验证以下公式:
SKid,3P=H3(ID||PKid,1||T)Ppub
(4.3)若等式成立,则接收所有密钥;否则向区块链发起裁决请求。
步骤S5:广播签名。雾节点签名一条消息MSGs得到签名φ。包含如下步骤:
(5.1)从群
Figure BDA0004193986600000131
中随机选取随机值ri,计算Ri=riP,h=
H1(IDfi||Ri||PKid,1||PKid,2||T||MSGs)。
(5.2)计算签名σi=h(SKfi,1+SKfi,2)+ri(mod p)。
(5.3)输出签名φ=(MSGs,Rii)。
步骤S6:签名验证:收到广播签名后,智能电表进行身份验证。包含如下步骤:
(6.1)根据雾节点身份从区块链中读取公钥。
(6.2)计算h=H1 (IDfi||Ri||PKid,1||PKid,2||T||MSGs),判断以下等式是否成立:
σiP=h(PKfi,1+H1(IDfi||PKfi,1||T)Ppub+PKfi,2)+Ri
(6.3)若成立,将此雾节点的公钥加入本地可信列表。否则忽略此消息。
步骤S7:签密:智能电表IDj签密数据得到密文。包含如下步骤:
(7.1)预签密:确定响应雾节点后,智能电表可以执行预签密生成半密文。
(7.1.1)从群
Figure BDA0004193986600000132
中随机选取随机值uj,计算Uj=ujP。
(7.1.2)计算Kj=uj(PKfi,1+H1(IDfi||PKfi,1||T)Ppub+PKfi,2和hj,1=H2(IDfi||PKfi,1||PKfi,2||Uj||Kj)。
(7.1.3)输出半密文PCTj=(uj,Uj,Kj,hj,1)。
(7.2)完整签密:智能电表对采集的数据文件Fj,t进行完整签密。
(7.2.1)使用对称加密计算
Figure BDA0004193986600000141
(7.2.2)选择时间戳T,计算hj,2=H4(Cj||Uj||θf,t||T)和σj=hj,2(SKsmj,1+SKsmj,2)+uj(mod p)。
(7.2.3)将密文CTj=(Pseudsmj,Uj,Cjjf,t)和其假名发送给相应的雾节点。
步骤S8:签名聚合。雾节点接收到一批密文后,对其中的签名进行聚合。此阶段包含以下步骤:
(8.1)计算聚合签名σ=Σσj
(8.2)输出聚合密文CT=({Pseudsmj,Uj,Cj},σ=Σσjf,t),同时将密文CT的哈希值存储在区块链中。
步骤S9:解签密。雾节点对收集的密文进行解签密。此阶段包含以下步骤:
(9.1)计算hj,2=H4(Cj||Uj||θf,t||T)。
(9.2)验证以下等式是否成立:
Figure BDA0004193986600000142
若等式不成立,拒绝接收密文消息。否则继续解密。
(9.3)
计算
Figure BDA0004193986600000151
(9.4)输出一组明文文件{Fj,t},并将文件的哈希值存储在区块链中。
步骤S10:密钥协商。雾节点与服务器(控制中心或云存储中心)进行密钥协商。此阶段包含以下步骤:
(10.1)雾节点从群
Figure BDA0004193986600000152
中随机选取随机值/>
Figure BDA0004193986600000153
计算A=aP。使用私钥对A签名,将签名发送给服务器发起密钥协商请求。
(10.2)服务器验证签名。若失败则忽略密钥协商请求。否则,从群
Figure BDA0004193986600000154
中随机选取随机值/>
Figure BDA0004193986600000155
计算B=bP。使用私钥对B签名,将签名发送给雾服务器。
(10.3)雾服务器验证签名,若通过则接收B。从区块链中读取服务器的身份和公钥,计算Qs=H3(IDs||PKs,1||T)和Seed=e(aQs,P′pub)e(SKfi,3,B)。计算协商密钥SnK=KDFseed(A||B||IDf||IDs||aB)。
(10.4)服务器端根据雾节点的身份和公钥计算Qf=H3(IDf||PKf,1||T)和Seed=e(bQf,P′pub)e(SKs,3,A)。计算协商密钥SnK=KDFseed(A||B||IDf||IDs||bA)。
步骤S11,设备撤销。当参与者出现违法行为,密钥生成中心可以向区块链申请对违法者信息的删除。若参与者的公钥不能在区块链中查询到,则无法进行身份验证;
步骤S12,数据完整性审计。当数据可能被篡改时,任何参与者可以向区块链申请完整性审计。区块链根据存储在分类账中的哈希值对数据完整性进行审计,找出数据篡改的责任人。
本实施例考虑到智能电网场景中的底层电表和雾节点间的多对一通信和雾节点和上层服务器的批量数据传输,设计了一个雾-区块链辅助的智能电表无证书聚合认证方法。该方法采用无证书聚合认证技术实现底层电表和雾节点间的双向认证,保证了数据源头的可靠性和安全性。同时,采用密钥协商技术实现雾节点和上层服务器的批量数据传输,减轻系统整体的通信开销。此外,此发明使用区块链维护不可篡改的用户列表,实现高效的用户撤销。进一步,设备将数据的哈希值存在区块链中,用于后续的完整性审计。
本发明方案所公开的技术手段不仅限于上述实施方式所公开的技术手段,还包括由以上技术特征任意组合所组成的技术方案。

Claims (3)

1.一种雾-区块链协助的智能电网聚合认证方法,其特征在于:包括如下步骤:
S1,系统初始化:密钥生成中心初始化生成系统公私钥,公开系统公钥,保密系统私钥;所述系统公钥MPK和系统私钥MSK的表达式如下:
MPK=(G,GT,p,e,P,Ppub,P′pub,SymEβ,SymDβ,H1,H′1,H2,H3,H4)
MSK=(α,β,γ)
其中,G和GT为阶数是大素数p的乘法群,P为G的生成元,(Ppub=αP,P′pub=γP)是两个根据MSK计算的元素;e:G×G→GT为对称双线性映射;H1,H′1,H2,H3,H4为抗碰撞哈希函数;(SymEβ,SymDβ)是使用密钥β的对称加密和解密算法;(α,β,γ)为从群
Figure FDA0004193986590000011
(模p的整数群)中随机选取的随机值;
S2,参与者自生成身份密钥对:参与者包括电表、雾节点、云存储中心、控制中心四类,每个参与者自己生成一对身份公私钥,并将身份公钥发送给密钥生成中心,身份私钥秘密保存;所述身份密钥对(PKid,1,SKid,1)的表达式为:
PKid,1=xidP,
Figure FDA0004193986590000012
其中,xid为从
Figure FDA0004193986590000013
中随机选择的元素;
S3,完整密钥生成:密钥生成中心根据身份公钥为参与者生成完整密钥对,包括假名Pseudid、第二公钥PKid,2、第二私钥SKid,2和验证密钥VKid;其中,公钥存储在区块链中,其余秘密返回给参与者;若参与者为智能电表,所述完整密钥(Pseudid,PKid,2,SKid,2,VKid)的表达式为:
Pseudid=SymEβ(ID||PKid,1||T),PKid,2=vidP,SKid,2
=vid+αH1(ID||PKid,1||T)mod p,VKid=SKid,2P+vidPKid,1
其中,T是密钥有效期;vid是从
Figure FDA0004193986590000014
中随机选择的元素;
若参与者是其他三类,密钥生成中心在生成以上密钥基础上,还要生成第三私钥SKid,3,其中SKid,3的表达式为:
SKid,3=γH3(ID||PKid,1||T);
S4,密钥验证:参与者接收到完整密钥对后,进行验证。首先将私钥SKid分解为(SKid,1,SKid,2,SKid,3),将PKid分解为(PKid,1,PKid,2),然后带入验证公式,若等式成立,则接收所有密钥;否则向区块链发起裁决请求;若参与者为智能电表,所述验证公式的表达式为:
SKid,2P=PKid,2+H1(ID||PKid,1||T)Ppub,VKid=SKid,2P+xidPKid,2
如果参与者是其他三类,其还需要验证以下公式:
SKid,3P=H3(ID||PKid,1||T)Pp ub
S5,广播签名:雾节点签名一条消息MSGs得到签名
Figure FDA0004193986590000021
并将签名和其身份广播给一组智能电表;所述签名/>
Figure FDA0004193986590000022
的表达式为:
Ri=riP,σi=h(SKfi,1+SKfi,2)+ri(mod p);
其中,MSGs是一个定长字符串消息,ri是从
Figure FDA0004193986590000023
中随机选择的元素;h=H 1(IDfi||Ri||PKid,1||PKid,2||T||MSGs)是一个哈希值;
S6,签名验证:收到广播签名后,智能电表根据身份从区块链中读取公钥,带入以下公式判断此雾节点的合法性;所述公式的表达式为:
σiP=h(PKfi,1+H1(IDfi||PKfi,1||T)Ppub+PKfi,2)+Ri
其中,h=H 1(IDfi||Ri||PKid,1||PKid,2||T||MSGs);
S8,签名聚合:雾节点接收到一批密文后,对其中的签名进行聚合得到聚合密文,聚合密文的哈希值存储在区块链中;所述聚合密文的表达式如下:
CT=({Pseudsmj,Uj,Cj},σ=Σσjf,t);
其中,σ为聚合后的签名;
S9,解签密:雾节点对收集的密文进行解签密得到一组明文文件{Fj,t},然后在本地对文件进行压缩;压缩后文件的哈希值存储在区块链中;所述解签密的公式分为签名验证和解密两部分,其中签名验证公式的表达式为:
σP=Σ(hj ,2(PKsmj,1+H1(Pseudsmi||PKsmi,1||T)Ppub+PKsmj,2))+ΣUj,
其中,hj ,2=H4(Cj||Uj||θf,t||T)。
解密公式的表达式为:
Kj =(SKfi,1+SKfi,2)Uj,hj ,1=H2(IDfi||PKfi,1||PKfi,2||Uj||Kj),Fj,t=Cj⊕hj,1
S10,密钥协商:雾节点与服务器(控制中心或云存储中心)进行密钥协商,通过签名预分享两个值A,B∈G,签名验证成功后接受这两个值,随后使用协商的密钥进行批量文件传输;雾节点端的协商密钥的表达式为:
Qs=H3(IDs||PKs,1||T),Seed=e(aQs,Pp ub)e(SKfi,3,B),
SnK=KDFseed(A||B||IDf||IDs||aB)
其中,IDs是控制中心或云存储中心的身份,IDf是雾节点的身份,PKs,1是其公钥,T是密钥有效期,
Figure FDA0004193986590000031
是雾节点自选的值,A=aP,SKfi,3是雾节点的私钥,B=bP∈G是控制中心或云存储中心预分享给雾节点的值,KDF是一个密钥衍生函数;
服务器端的协商密钥的表达式为:
Qf=H3(IDf||PKf,1||T),Seed=e(bQf,Pp ub)e(SKs,3,A),
SnK=KDFseed(A||B||IDf||IDs||bA),
其中,IDf是雾节点的身份,IDs是控制中心或云存储中心的身份,PKf,1是其公钥,T是密钥有效期,
Figure FDA0004193986590000032
是服务器自选的值,B=bP,SKs,3是服务器的私钥,A=aP∈G是雾节点预分享给服务器的值;
S11,设备撤销:当参与者出现违法行为,密钥生成中心可以向区块链申请对违法者信息的删除。若参与者的公钥不能在区块链中查询到,则无法进行身份验证;
S12,数据完整性审计:当数据可能被篡改时,任何参与者可以向区块链申请完整性审计。区块链根据存储在分类账中的哈希值对数据完整性进行审计,找出数据篡改的责任人。
2.根据权利要求1所述的一种雾-区块链协助的智能电网聚合认证方法,其特征在于:步骤S7分为预签密和完整签密两个步骤;
S71,预签密:确定响应雾节点后,智能电表可以执行预签密生成半密文,所述半密文PCTj=(uj,Uj,Kj,hj,1)的公式为:
Figure FDA0004193986590000041
Uj=ujP,Kj=uj(PKfi,1+H1(IDfi||PKfi,1||T)Ppub+PKfi,2,
hj,1=H2(IDfi||PKfi,1||PKfi,2||Uj||Kj);
其中,uj是是从
Figure FDA0004193986590000042
中随机选择的元素;
S72,完整签密:智能电表对采集的数据文件Fj,t进行完整签密,然后将完整密文和其假名发送给相应雾节点;所述完整密文CTj=(Pseudsmj,Uj,Cjjf,t)的公式为:
Uj=ujP,Cj=Fj,t⊕hj,1j=hj,2(SKsmj,1+SKsmj,2)+uj(mod p);
其中,Pseudsmj是电表的假名,θf,t是聚合标识符,hj,2=H4(Cj||Uj||θf,t||T)。
3.一种雾-区块链协助的智能电网聚合认证产品,包括计算机程序,其特征在于:所述计算机程序被处理器执行时实现如上述任一种所述方法的步骤。
CN202310441086.0A 2023-04-23 2023-04-23 一种雾-区块链协助的智能电网聚合认证方法 Pending CN116232759A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310441086.0A CN116232759A (zh) 2023-04-23 2023-04-23 一种雾-区块链协助的智能电网聚合认证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310441086.0A CN116232759A (zh) 2023-04-23 2023-04-23 一种雾-区块链协助的智能电网聚合认证方法

Publications (1)

Publication Number Publication Date
CN116232759A true CN116232759A (zh) 2023-06-06

Family

ID=86569712

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310441086.0A Pending CN116232759A (zh) 2023-04-23 2023-04-23 一种雾-区块链协助的智能电网聚合认证方法

Country Status (1)

Country Link
CN (1) CN116232759A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117879837A (zh) * 2024-03-11 2024-04-12 贵州师范大学 一种具有恒定长度的聚合签名方法、系统、设备及介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117879837A (zh) * 2024-03-11 2024-04-12 贵州师范大学 一种具有恒定长度的聚合签名方法、系统、设备及介质
CN117879837B (zh) * 2024-03-11 2024-05-07 贵州师范大学 一种具有恒定长度的聚合签名方法、系统、设备及介质

Similar Documents

Publication Publication Date Title
CN111953705B (zh) 物联网身份认证方法、装置及电力物联网身份认证系统
CN108989053B (zh) 一种基于椭圆曲线的无证书公钥密码体制实现方法
CN108111301B (zh) 基于后量子密钥交换实现ssh协议的方法及其系统
CN108173639B (zh) 一种基于sm9签名算法的两方合作签名方法
CN105959269B (zh) 一种基于身份的可认证动态群组密钥协商方法
JP6670395B2 (ja) 身元情報ベース鍵素材及び証明書の配布のためのシステム及び方法
CN102318258B (zh) 基于身份的认证密钥协商协议
JP4527358B2 (ja) 鍵供託を使用しない、認証された個別暗号システム
CN107659395B (zh) 一种多服务器环境下基于身份的分布式认证方法及系统
CN107437993A (zh) 一种基于无证书两方认证密钥协商方法和装置
CN110120939B (zh) 一种基于异构系统的可否认认证的加密方法和系统
CN106341232B (zh) 一种基于口令的匿名实体鉴别方法
CN110489982B (zh) 一种具有前向安全性的智能电网数据聚合和加密方法
CN110113150B (zh) 基于无证书环境的可否认认证的加密方法和系统
CN112104453B (zh) 一种基于数字证书的抗量子计算数字签名系统及签名方法
CN113704736A (zh) 基于ibc体系的电力物联网设备轻量级接入认证方法及系统
CN114398602B (zh) 一种基于边缘计算的物联网终端身份认证方法
CN106713349B (zh) 一种能抵抗选择密文攻击的群组间代理重加密方法
CN111769937A (zh) 面向智能电网高级测量体系的两方认证密钥协商协议
CN113572603A (zh) 一种异构的用户认证和密钥协商方法
CN114710275A (zh) 物联网环境下基于区块链的跨域认证和密钥协商方法
CN110166444B (zh) 一种云环境下基于可信代理的异构跨域认证方法
CN116232759A (zh) 一种雾-区块链协助的智能电网聚合认证方法
CN116599659B (zh) 无证书身份认证与密钥协商方法以及系统
CN114124375A (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