Loading [MathJax]/jax/output/SVG/jax.js
Research article

Blockchain-based multi-authority revocable data sharing scheme in smart grid


  • In view of the problems of inefficient data encryption, non-support of malicious user revocation and data integrity checking in current smart grid data sharing schemes, this paper proposes a blockchain-based multi-authority revocable data sharing scheme in the smart grid. Using online/offline encryption technology with hybrid encryption technology enhances the encryption performance for the data owner. The use of user binary tree technology enables the traceability and revocability of malicious users. The introduction of multiple attribute authorization authorities eliminates the threat of collusive attacks that exist in traditional data-sharing schemes. In addition, the semi-honest problem of third-party servers is solved by uploading data verification credentials to the blockchain. The security analysis results show that the scheme can resist selective plaintext attacks and collusion attacks. The performance analysis results show that the proposed scheme has lower computational overhead and better functionality than similar schemes, which is suitable for secure data sharing in smart grids.

    Citation: Xiao-Dong Yang, Ze-Fan Liao, Bin Shu, Ai-Jia Chen. Blockchain-based multi-authority revocable data sharing scheme in smart grid[J]. Mathematical Biosciences and Engineering, 2023, 20(7): 11957-11977. doi: 10.3934/mbe.2023531

    Related Papers:

    [1] Yang Zhao, Xin Xie, Xing Zhang, Yi Ding . A revocable storage CP-ABE scheme with constant ciphertext length in cloud storage. Mathematical Biosciences and Engineering, 2019, 16(5): 4229-4249. doi: 10.3934/mbe.2019211
    [2] Jiayuan Zhang, Rongxin Guo, Yifan Shi, Wanting Tang . An anti-impersonation attack electronic health record sharing scheme based on proxy re-encryption and blockchain. Mathematical Biosciences and Engineering, 2024, 21(6): 6167-6189. doi: 10.3934/mbe.2024271
    [3] Han-Yu Lin, Tung-Tso Tsai, Hong-Ru Wu, Miao-Si Ku . Secure access control using updateable attribute keys. Mathematical Biosciences and Engineering, 2022, 19(11): 11367-11379. doi: 10.3934/mbe.2022529
    [4] Xiao Dong Yang, Wen Jia Wang, Bin Shu, Mei Juan Li, Rui Xia Liu, Cai Fen Wang . Multi-message multi-receiver signcryption scheme based on blockchain. Mathematical Biosciences and Engineering, 2023, 20(10): 18146-18172. doi: 10.3934/mbe.2023806
    [5] Shufen Niu, Wei Liu, Sen Yan, Qi Liu . Message sharing scheme based on edge computing in IoV. Mathematical Biosciences and Engineering, 2023, 20(12): 20809-20827. doi: 10.3934/mbe.2023921
    [6] Lihong Guo, Weilei Gao, Ye Cao, Xu Lai . Research on medical data security sharing scheme based on homomorphic encryption. Mathematical Biosciences and Engineering, 2023, 20(2): 2261-2279. doi: 10.3934/mbe.2023106
    [7] Ching-Chun Chang, Chang-Tsun Li . Algebraic secret sharing using privacy homomorphisms for IoT-based healthcare systems. Mathematical Biosciences and Engineering, 2019, 16(5): 3367-3381. doi: 10.3934/mbe.2019168
    [8] Yanmei Jiang, Mingsheng Liu, Jianhua Li, Jingyi Zhang . Reinforced MCTS for non-intrusive online load identification based on cognitive green computing in smart grid. Mathematical Biosciences and Engineering, 2022, 19(11): 11595-11627. doi: 10.3934/mbe.2022540
    [9] Yuanfei Tu, Jing Wang, Geng Yang, Ben Liu . An efficient attribute-based access control system with break-glass capability for cloud-assisted industrial control system. Mathematical Biosciences and Engineering, 2021, 18(4): 3559-3577. doi: 10.3934/mbe.2021179
    [10] Dawei Li, Enzhun Zhang, Ming Lei, Chunxiao Song . Zero trust in edge computing environment: a blockchain based practical scheme. Mathematical Biosciences and Engineering, 2022, 19(4): 4196-4216. doi: 10.3934/mbe.2022194
  • In view of the problems of inefficient data encryption, non-support of malicious user revocation and data integrity checking in current smart grid data sharing schemes, this paper proposes a blockchain-based multi-authority revocable data sharing scheme in the smart grid. Using online/offline encryption technology with hybrid encryption technology enhances the encryption performance for the data owner. The use of user binary tree technology enables the traceability and revocability of malicious users. The introduction of multiple attribute authorization authorities eliminates the threat of collusive attacks that exist in traditional data-sharing schemes. In addition, the semi-honest problem of third-party servers is solved by uploading data verification credentials to the blockchain. The security analysis results show that the scheme can resist selective plaintext attacks and collusion attacks. The performance analysis results show that the proposed scheme has lower computational overhead and better functionality than similar schemes, which is suitable for secure data sharing in smart grids.



    The smart grid is a new type of modern electric grid, which integrates energy technology and grid infrastructure with a high degree of integration of sensing and measurement technology, information and communication technology, analysis and decision-making technology and automatic control technology. In addition, it integrates the computing system and communication network's virtual environment with the physical environment of the power system to form a complex system that enables real-time sensing, dynamic changes and seamless information communication [1]. Digital twin is a technology that digitizes physical objects in the real world, models and simulates the various components of the power grid system and helps power grid operators achieve a comprehensive understanding and control of the grid. By combining digital twin technology, the smart grid can achieve more efficient, secure, and reliable power system operations [2,3,4]. This system is characterized by its user-friendly interface, high economic efficiency, exceptional reliability, compatibility and timely information updates. Users can use this system to access real-time information about electricity prices, electricity usage and other related information, making it easier to plan their energy usage. At the same time, smart grid terminals can continuously collect information about users' electricity usage and transmit it to the power company in real-time, allowing for real-time pricing and load balancing to ensure the stable operation of the grid system [5,6]. However, large-scale data collection undoubtedly raises concerns about user privacy and security. During the data collection process, there is a risk of leakage or tampering of critical information, such as user personal identification information or the power company's business secrets, which could potentially result in immeasurable losses for both the users and the power company [7,8,9]. Therefore, in the smart grid, data encryption protection and user access control have become critical for ensuring secure data sharing.

    The ciphertext policy attribute-based encryption (CP-ABE) scheme associates user attributes with their encryption keys, allowing data owners to implement access control over their data while encrypting it, making it easier to achieve secure data sharing in the smart grid. Sahai et al. [10] first proposed the scheme of CP-ABE. Subsequently, data security sharing schemes based on CP-ABE and suitable for various real-life scenarios have been proposed one after another [11,12,13,14,15,16]. These schemes improve computational efficiency, security and attribute set size to varying degrees. However, these schemes do not consider user tracking and revocation, resistance to collusion attacks and how to achieve message integrity verification.

    In traditional ciphertext policy attribute-based encryption schemes, in addition to storing the ciphertext, the cloud server not only stores the ciphertext but also holds the access policy. Therefore, all users who obtain the ciphertext can also obtain the access policy. However, an adversary can exploit the details in the access policy to deduce and obtain some private data. To prevent private data leakage through access policy, Zhang et al. [17] proposed a scheme to protect private data by hiding attribute values in access policy. However, Zhang's scheme is constructed by the composite order group, so its computation is less efficient, which is not suitable for the smart grid environment. Hui et al. [18] proposed a scheme for hiding attribute values in prime order groups, which achieves privacy protection for users while reducing computational overhead.

    Moreover, some CP-ABE schemes are vulnerable to collusion attacks among users, in which users share their keys to obtain data. Therefore, tracing the malicious user who leaked the keys is also an important issue. Liu et al. [19,20] proposed a black-box and white-box tracking scheme to track malicious users. Only user tracking is insufficient for secure data sharing in the smart grid. An efficient user revocation mechanism is also necessary. Shi et al. [21,22,23,24] proposed different revocable CP-ABE schemes. Liu et al. [25] proposed a scheme that combines user tracking with revocation. Han et al. [26] further improved the scheme by incorporating privacy protection and enhancing computational efficiency. Then, Li et al. [27] proposed a traceable and revocable access control scheme which supports large attribute space, the decryption phase only requires constant-level bilinear pairing operations. Since a single attribute authority is not fully trusted and is not conducive to system expansion, Chase et al. [28] proposed a scheme for multiple attribute authorities. Later, De et al. [29] proposed a multi-authority CP-ABE scheme with higher encryption efficiency. Xiao et al. [30] proposed an access control scheme that incorporated revocation and multi-attribute authorities, but the scheme does not support user tracking. Sethi et al. [31] proposed a multi-authority scheme with revocable and traceable users. Datta et al. proposed a multi-authority scheme [32] based on asymmetric pairings; the scheme enhances security but is not efficient enough.

    Online/offline encryption technology [33] preprocesses time-consuming operations such as bilinear pairing offline and completes them at idle time, so that users can simply perform simple operations online to get the data they need. This technology transfers the main computational overhead to the cloud server, greatly reducing the communication overhead and the computational overhead on the user. Hybrid encryption technology is to encrypt the primary data using a symmetric encryption algorithm such as AES and encrypt the key of the symmetric encryption algorithm using attribute encryption. The computational efficiency is further improved because the symmetric encryption algorithm has less overhead.

    In real life, the cloud servers that store power grid data are semi-honest and curious, which poses potential risks to users' private data. With the development of blockchain-related technologies, the problem of semi-honest and curious third-party servers can be addressed using blockchain technology. Blockchain is a distributed ledger and database with the advantages of being tamper-proof, open and transparent [34]. The "transparency" feature of blockchain can solve the problem of information asymmetry between parties, enabling multiple entities to collaborate and trust and act in unison. The combination of blockchain and attribute-based encryption enhances the usability of encryption schemes.

    To realize the secure sharing of grid data within the smart grid, we propose a blockchain-based multi-authority revocable data sharing scheme in the smart grid. The contributions can be summarized as follows:

    1) The computational overhead of data owner and data user have been greatly reduced by introducing the online/offline encryption technology. The cloud server stores the conversion key to partially decrypt the ciphertext. Therefore, the data user requires a constant computation to decrypt the partially decrypted ciphertext. In addition, to reduce the communication overhead, we encrypt the grid data with symmetric encryption and encrypt the symmetric key with attribute-based encryption.

    2) Data integrity verification. Based on the tamper-proof feature of the blockchain, the data owner can generate message verification credentials and upload them to the blockchain. The data user can download the verification credentials to compare with the received data to verify if the data has been tampered with.

    3) User tracking and revocation. We introduce user binary tree and revocation list to manage users. The attribute authority can track a malicious user by the user's secret key, and then an attribute authority can add the user to the revocation list and update the ciphertext.

    4) Privacy protection. Based on the scheme proposed in [26], user identity privacy is protected by combining it with policy hiding mechanism. By hiding the attribute values in the access policy, the adversary cannot infer user information from the access policy.

    Let G and GT be two multiplicative cyclic groups of prime order p, and g be a generator of G. GT has an efficient bilinear map e:G×GGT that satisfies the following three features:

    1) Non-degeneracy: e(g,g)1.

    2) Computability: For any element M,NG, e(M,N) could be efficiently computed by a polynomial-time algorithm.

    3) Bilinearity: For any element M,NG and a,bZp, we can obtain e(Ma,Nb)=e(M,N)ab.

    Let P={P1,P2,...,Pn} denote the set of n users. The collection ˆA is monotone for B,C: if BˆA and BC, then CˆA. Let ˆA be a monotone nonempty subset of P, i.e., ˆA2{P1,P2,...,Pn}{}, and then call ˆA a monotone access structure. The sets in ˆA are called authorized sets, and the rest of the sets are called the unauthorized sets.

    Let U be the set of all users, RE be the revocation list and Ty be the user binary tree. Ty has the following features:

    1) Every leaf node is related to a user u. Consider that |U| denotes the number of users, and then there are 2|U|1 nodes in the Ty. Number these nodes by breadth-first traversal as 02|U|2.

    2) path(ζ) denotes the set of nodes on the path from the root node to the node ζ.

    3) cover(RE) denotes the minimal set of nodes for the users who are not included in the revocation list RE.

    According to the above features of user binary tree, if a user is not in the revocation list RE, then there exists a unique node satisfying ζi = path(ζu)cover(RE).

    Figure 1 is a simple example of user binary tree. If the revocation list RE is set to RE={u5,u7}={11,13}, then cover(RE)={1,12,14}. The path of u3 is path(u3)={0,1,4,9}. Therefore, the unique node ζi=cover(RE)path(u3)={1}.

    Figure 1.  User binary tree.

    Let A={A1,A2,...,An} be the set of all attribute names, and each attribute name AiA corresponds to a set of attribute values Ai={vali,1,vali,2,...,vali,ni}, where ni is the order of Ai. The access policy is denoted as T=(M,ρ,V) in a linear secret sharing scheme (LSSS), where M is a matrix that has l row size and n column size. ρ is a function that maps every row of M into an attribute name in A. V={vρ(i)}i[1,l] is the set of attribute values associated with (M,ρ). A LSSS includes the following two algorithms:

    1) Distribute: For secret value sZp, randomly select a vector f=(s,f2,...,fn)T, where f2,...,fnZp. Calculate λi=Mif, where Mi is the ith row of matrix M. λi is a share of s that corresponds to ρ(i).

    2) Reconstruct: Let SA be any authorized set, and I={i:ρ(i)S}{1,2,...,l}. Then, there exists a set of constants {ωiZp} satisfying iIωiMi=(1,0,...,0). We could reconstruct the secret s by calculating iIωiλi=s.

    Let S={Iu,S} be the set of user attributes and ¯T=(M,ρ) be the access policy that hides the set of attribute values. IuA is the set of user attribute names. S={si}iIu is the set of the user attribute values. For iI, where I={i:ρ(i)S}{1,2,...,l}, if i satisfies (M,ρ) and sρ(i)=vρ(i), then we say that S matches T.

    Definition 1. (q-BDHE assumption)

    Let G and GT be two multiplicative cyclic groups of prime order p and g be a generator of G. GT has an efficient bilinear map e:G×GGT. Randomly select t,fZp and compute vector J=(g,gt,gf,gf2,...,gfq,gfq+2,...,gf2q). Then, the qBDHE assumption is defined as follows: There is no polynomial-time algorithm that can distinguish between e(g,g)fq+1tGT and BGT by a non-negligible advantage ε.

    The system model consists of the following five entities:

    1) Data Owner (DO): DO collects grid data from users' houses and specifies an access policy to encrypt grid data, then generates verification credential and uploads it to the blockchain.

    2) Cloud Server (CS): CS stores the ciphertext and the verification credentials while generating the transformed ciphertext for DU. CS is semi-honest.

    3) Data User (DU): DU obtains ciphertext from CS. DU can decrypt ciphertext only if DU's attributes satisfy the access policy. There may be malicious users in DU.

    4) Attribute Authority (AA): AA generates public parameters and private keys. AA cannot access user secret keys or user identity information alone.

    5) Blockchain: Blockchain stores and transmits public parameters and verification credentials, preventing them from being tampered with.

    The system model is shown in Figure 2.

    Figure 2.  System model.

    The proposed scheme consists of nine algorithms, and we describe each algorithm as follows:

    1) Setup: AA generates public parameter PP and master key MSK, and then AA publishes public parameter PP to other entities.

    2) KeyGen: AA runs the algorithm and inputs user's attribute set S={Iu,S}; AA outputs user's secret key SK.

    3) CKeyGen: DU runs the algorithm. DU randomly chooses recover key HKu and then generates conversion key CKu according to HKu.

    4) Enc.offline: DO executes the algorithm. DO outputs intermediate ciphertext IT according to the public parameter PP.

    5) Enc.online: DO executes the algorithm. DO inputs grid data MSG, revocation list RE, public parameter PP and outputs ciphertext CT.

    6) Conversion: CS executes the algorithm. DU inputs ciphertext CT, conversion key CKu, public parameter PP. Then, CS outputs conversion ciphertext ^CT.

    7) Decrypt: DU executes the algorithm. DU inputs conversion ciphertext ^CT, secret key SK, recover key HKu, public parameter PP and outputs the decrypted and verified grid data MSG.

    8) Track: AA runs the algorithm. First, check if the secret key SK satisfies the required conditions for tracking. If SK is satisfied, the user identity is calculated based on the public parameter PP, the conversion ciphertext ^CT and the secret key SK. Eventually, AA gets the tracked user u and the updated revocation list RE.

    9) Update: AA and CS run this algorithm. AA inputs the updated revocation list RE, and CS outputs the updated ciphertext CT.

    The system flow chart is shown in Figure 3.

    Figure 3.  System flow chart.

    The indistinguishability under chosen-plaintext attack (IND-CPA) of the proposed scheme can be described as a security game between a challenger C and an adversary A. The procedures are as follows:

    Setup: A selects and submits an access policy T={M,ρ,V} and a user revocation list RE to C, where M is a matrix that has l row size and n column size. ρ is a function that maps every row of M into an attribute name in A. C runs Setup algorithm in Section 3.2 and generates public parameter, then sends public parameter to A.

    Phase 1: A asks C for the decryption key of attribute sets (u1,S1)(u2,S2)...(uq,Sq), where q means the number of users.

    If SiT and uiRE, which indicates the user's attribute sets satisfy the access policy, and the user is not listed in the revocation list, then abort.

    If SiT or uiRE, which indicates the user's attribute sets do not satisfy the access policy, or the user is listed in the revocation list, then C generates a decryption key and sends it to A.

    Challenge: A submits two messages m0 and m1 of the same length. Next, C randomly chooses ϖ{0,1}, then encrypts message mϖ under access policy T={M,ρ,V} and revocation list RE. Eventually, C sends ciphertext CT as a challenge to A.

    Phase 2: Phase 2 remains the same as the operation of Phase 1.

    Guess Phase: A outputs a guess ϖ about ϖ and wins the game if ϖ=ϖ. The advantage of A winning the security game can be described as: ε=|Pr[ϖ=ϖ]1/2|.

    Definition 2: In polynomial time, if the adversary A cannot win the above security game with non-negligible advantage, then the proposed scheme is indistinguishable under chosen-plaintext attacks.

    In this section, the attribute authorities generate the public parameter PP and the master key, then publish the public parameters to other entities.

    The scheme contains N attribute authorities {AA1,...,AAN}. Attribute authorities generate public parameter PP as follows:

    1) Attribute authority AA1 selects two multiplicative cyclic groups G and GT of prime order p. GT has an efficient bilinear pairing which can be described as e:G×GGT, and g is a generator of G. AA1 randomly selects m,nG. Ef and Df are symmetric encryption and decryption algorithms.

    2) AA1 selects collision-resistant hash functions H0():G{0,1}, H1():{0,1}{0,1}H1 and secure key generation function H.

    3) Each attribute authority randomly chooses kf,jG, then sends it over a secure channel to other attribute authorities (j{1,2,...,N}). Each attribute authority computes and gets the symmetric key kf=H(Nj=1kf,j) used to encrypt the user's identity.

    4) For each node in Ty, AA1 randomly selects δiZp to get {δi}2|U|2i=0 and calculates {ψi=gδi}2|U|2i=0. AA1 sends {δi}2|U|2i=0 over a secure channel to other attribute authorities. Each leaf node in Ty is associated with a user u and assigned a unique value vuZp.

    5) Each attribute authority randomly chooses αj,ajZp and calculates Yj=e(g,g)αj, gaj. Then, it sends Yj and gaj to other attribute authorities. After receiving Yj and gaj from other attribute authorities, each attribute authority calculates

    Y=Nj=1e(g,g)αj=e(g,g)Nj=1αj; (1)
    Nj=1gaj=gNj=1aj. (2)

    For ease of presentation, ˜A and A are used below to represent Nj=1αj and Nj=1aj.

    6) Attribute authorities publicize the system parameter PP={p,G,GT,e,g,m,n,Y,A,{ψi}2|U|2i=0, Ef,Df,H0(),H1(),H()} and upload PP to the blockchain. Each attribute authority saves its secret key MSKj={aj,αj,{δi}2|U|2i=0}.

    In this section, the attribute authorities generate the secret key SK for data users.

    S={Iu,S} is the set of user attributes, where IuA is the attribute name, and S={si}iIu is the set of attribute values. Attribute authorities generate the secret key SK as follows:

    1) Each attribute authority calculates Eid=Ef(kf,vu).

    2) Every attribute authority randomly selects rjZp, then calculates D1=gArj,D2=grj, D3=Eid, Kj=mrj and sends to other attribute authorities.

    3) Let ζu be the leaf node associated with the user u in the binary tree and the set of leaf nodes be path(ζu)={ζ0,ζ1...,ζu}. ζ0 is the root node. Each attribute authority calculates D0=grj/δζu and sends to other attribute authorities.

    After receiving components from other attribute authorities, each attribute authority calculates secret key as follows:

    ~D1=Nj=1gArj=gANj=1rj; (3)
    ~D2=Nj=1grj=gNj=1rj; (4)
    K=g˜AA+EidNj=1Kj=g˜AA+EidmNj=1rj; (5)
    ~Dθ=Nj=1gsirjn(A+Eid)rj=gsiNj=1rjn(A+Eid)Nj=1rj; (6)
    ~D0=Nj=1grjδζu=gNj=1rjδζu. (7)

    4) The secret key SK={~D0,~D1,~D2,D3,{δζ}ζpath(ζu),K,{~Dθ}θIs,S}. R is used below to represent Nj=1rj.

    In this section, the data user generates the recover key and the conversion key, then sends these keys to the cloud server.

    The data user randomly selects xuZp as recover key HKu and calculates the conversion key CKu as follows:

    L1=~D11/xu (8)
    L2=~D21/xu (9)
    L3=D3 (10)
    L4=K1/xu (11)

    The conversion key CKu={L1,L2,L3,L4,Lθ}.

    In this section, the data owner completes time-consuming operations such as bilinear pairing offline to reduce the communication overhead, while generating the symmetric key.

    The data owner sets access policy T=(M,ρ,V) and generates intermediate ciphertext as follows:

    1) Randomly select RuG and secret value sZp, and calculate symmetric key ku=H(Ru). Then, calculate C=Rue(g,g)˜As, C0=gs, C0=g˜As and {ψis}2|U|2i=0.

    2) For bth row Mb in the matrix M, randomly select zb,qb,tbZp, where b=1,2,...,l. The data owner calculates Cb,1=mzbnqb, Cb,2=gqbtbgzb and Cb,3=gqb.

    3) The intermediate ciphertext IT={s,C,C0,C0,Ru,ku,{ψis}2|U|2i=0,{zb,qb,tb,Cb,1,Cb,2, Cb,3}b=1,2,...,l}.

    In this section, the data owner encrypts the grid data using the symmetric key generated in Section 4.4 and then encrypts the symmetric key using the attribute-based encryption algorithm.

    The data owner executes the following processes to encrypt symmetry key and grid data:

    1) Calculate the verification credential Token=H1(H0(Ru)||MSG) and send it to the blockchain. Then use the symmetric key ku to encrypt grid data MSG and obtain grid data ciphertext CTM.

    2) Randomly select a vector κ=(s,f2,...,fn)T. For each row Mb in the matrix M, calculate zb=Mbκ.

    3) Calculate Cb,4=zbzb and Cb,5=qb(vρ(b)tb), and then get the minimal set cover(RE) through the binary tree Ty. Next, select the cipher component {Fi=ψis}icover(RE) according to cover(RE).

    4) The ciphertext CT={¯T,RE,CTM,C,C0,C0,{Cb,1,Cb,2,Cb,3,Cb,4,Cb,5}b1,2,...,l,{Fi}icover(RE)}, where ¯T is the access policy of hidden attribute values.

    In this section, the cloud server preprocesses the ciphertext data and sends the conversion ciphertext to the data user.

    The cloud server executes the following processes to generate conversion ciphertext ^CT:

    1) Check if user u is included in the revocation list RE. If the user is included in RE, it means the user is illegal, and then terminate the process. Otherwise, according to the attributes set uploaded by the user, get the set of rows Ir={b:ρ(b)S}{1,2,...,l} and the set of constants {ωbZp}bIr. When {zb} is valid, bIrωbzb=s.

    2) If the value of attribute sρ(b) in the user's secret key SK satisfies the value vρ(b) in the access policy, calculate as follows:

    Q1=e(L2L3L1,Cb,1mCb,4)e(L2,Cb,2gCb,4Cb,5)e(Lρ(i),Cb,3)     =e(g(A+Eid)R/xu,mzbnqb)e(gR/xu,gzbqbvρ(i))e(gsiR/xun(A+Eid)R/xu,gqb)     =e(g,m)(A+Eid)zbR/xue(g,g)zbR/xu (12)
    Q2=bIc(Q1)ωb     =e(g,m)(A+Eid)sR/xue(g,g)sR/xu (13)
    Q3=e(K,C0L3C0)      =e(g˜A/[(A+Eid)xu]mR/xu,g(A+Eid)s)      =e(g,g)s˜A/xue(g,m)(A+Eid)sR/xu (14)
    Ct=Q3Q2=e(g,g)s˜A/xue(g,g)sR/xu (15)

    3) The cloud server sends the conversion ciphertext ^CT={RE,Ct,C,{Fi}icover(RE)} to the user.

    In this section, the data user decrypts the conversion ciphertext and gets the symmetric key. Then the data user uses the symmetric decryption algorithm to get the grid data ciphertext and completes the data integrity verification using the verification credential downloaded from the blockchain.

    The data user u executes the algorithm to decrypt ciphertext as follows:

    1) If u is not included in the revocation list RE, then there exists a unique node ζi=path(ζu)cover(RE), where ζu is the leaf node associated with u.

    2) According to the node ζi and user's secret key {~D0,{δζ}ζpath(ζu)}, get δζu and δζi, and then calculate o=δζu/δζi.

    3) Calculate the components as follows:

    Q4=e(~D0,Fi)o=e(gR/δζu,(gδζi)s)δζu/δζi=e(g,g)Rs (16)
    Ru=C(Ct)xuQ4=Ce(g,g)˜As (17)

    4) The symmetric key ku=H0(Ru). Use ku to decrypt grid ciphertext, then obtain the grid data MSG=Df(ku,CT).

    5) Download the verification credential Token from the blockchain, and if the equation Token=H1(H0(Ru)||MSG) holds, then the grid data MSG is valid.

    In this section, the attribute authority checks the user's secret key SK and tracks the user with the binary tree. Then, the attribute authority adds the user to the revocation list RE and updates the revocation list.

    The attribute authority executes the algorithm to trace users as follows:

    1) Check whether the user's secret key SK satisfies the following conditions:

    a) D3Zp, ~D0,~D1,~D2,K,~DθG

    b) e(g,D1)=e(gA,D2)1

    c) e(K,gAgD3)=e(g,g)˜Ae(~D2D3~D1,m)1

    d) θIs,s.t. e(~Dθ,g)e(~D2D3~D1,n)=e(~D2.g)sθ1

    2) If the user secret key SK passes the above check, then calculate vu=Ds(kf,D3). Next, use vu to find the corresponding user u in the binary tree and add u to the revocation list. RE=RE{u} is the updated revocation list.

    In this section, the attribute authorities and the cloud server complete the ciphertext update after user revocation based on the updated nodes set cover(RE).

    The attribute authority and the cloud server execute the algorithm as follows together:

    1) Each attribute authority randomly selects φjZp and sends it to other attribute authorities. Then, each attribute authority calculates ˜φ=Nj=1φj and δ={˜φδi}2|U|2i=0 and sends ˜φ and δ to the cloud server.

    2) The cloud server obtains new nodes set cover(RE) from RE. For node ζicover(RE), there exist two cases when updating the ciphertext:

    a) For the revocation list RE before the update, there exists a node ζicover(RE) that makes ζi=ζi hold. Then, set Fi=Fi.

    b) For the revocation list RE before the update, there exists a node ζicover(RE) such that ζi is an ancestor of ζi. Suppose that path(ζi)=path(ζi){ζi+1,...,ζi}, let Pi=ψi and calculate iteratively as follows, where k=i+1,...,i:

    Pk+1=(Pk)ψk+1ψk=ψsk+1 (18)

    Next, set Fi=Pi.

    Eventually, the updated ciphertext is CT={¯T,RE,CTM,C,C0,C0,{Cb,1,Cb,2,Cb,3,Cb,4,Cb,5}b1,2,...,l,{Fi}icover(RE)}

    Theorem 1. The proposed scheme can resist the collusion attack by N1 attribute authorities if the discrete logarithm hardness assumption (Discrete Logarithm Problem, DLP) holds.

    Proof: Each attribute authority randomly selects ajZp and sends gaj to other attribute authorities. From the discrete logarithmic difficulty problem, it is difficult for an adversary to infer aj from gaj. Thus, even if there exist N2 attribute authorities in collusion with the adversary, there will still be a parameter that cannot be determined, and the adversary cannot guess valid gA. Then, the adversary cannot construct a valid master key. Therefore, the proposed scheme can resist the collusion attack by N1 attribute authorities.

    Theorem 2. The proposed scheme has indistinguishability under chosen-plaintext attack (IND-CPA) if qBDHE hardness assumption holds, where q>2|U|2.

    Proof: Assume an adversary A can break the proposed scheme with a non-negligible advantage ε, and then there exists a challenger C that can solve the qBDHE problem with the advantage ε/2. C executes algorithms as follows:

    Let G and GT be two multiplicative cyclic groups of prime order p and g be a generator of G. GT has an efficient bilinear map e:G×GGT. C randomly selects μ{0,1}. Give a vector J=(g,gt,gf,gf2,...,gfq,gfq+2,...,gf2q), and if μ=1, then C calculates Z=e(g,g)fq+1t. Otherwise, C randomly selects ZGT.

    Setup: A selects and submits an access policy T={M,ρ,V} and a user revocation list RE to C, where M is a matrix that has l row size and n column size. ρ is a function that maps every row of M into an attribute name in A. C randomly selects σ,aZp and sets e(g,g)α=e(g,g)σe(gt,gtq), then calculates ga, m=gf, n=gfq, where α=σ+tq+1.

    For the revocation list RE, C sets IRE={ζipath(u)|uRE} and randomly selects {diZp}i{0,2|U|1}. If ζiIRE, set ψi=gdigfi, and then δi=di+fi. Otherwise, set ψi=gdigfq, and then δi=di+fq.

    C sends the public parameter PP={p,G,GT,e,g,m,n,e(g,g)α,ga,{ψi}2|U|2i=0} to A.

    Phase 1: A submits user attribute sets u,S={Iu,S} to require corresponding secret keys. IuA is user's attribute name. S={si}iIu is user's attribute value set. For every attribute value sj in attribute space and i{1,2,...,l}, if sj=vρ(i), it means that sj satisfies the attribute value in the access policy, and set τj=sj+nh=1fhMj,h. Otherwise, set τj=sj. If uRE, then set δi=dζi+fq. If uRE, then for ζipath(u), there exists ζiIRE, and set δi=dζi+fζi. If ST, randomly select ιZp and calculate t=[fq1/(a+ι)](Mi,1/Mi,2)+[fq/(a+ι)]. Otherwise, randomly select vector b=(b1,b2,...,bn)Zp, where b1=1, and all i in ρ(i)Iu satisfy Mib=0. Then, randomly select r,ιZp and calculate t=(r+b1fq++bnfqn+1)/(a+ι).

    Challenge: A submits two messages m0 and m1 of the same length to C. C randomly selects ϖ{0,1} and computes C=mce(g,g)αt, C0=gt, C0=gαt. Next, C randomly selects k2,...,knZp and compute the vector h=(t,tf+k2,...,tfn1+kn). Then C computes as follows:

    Ci,1=nj=2(gfkj)Mi,jnj=1(gtfj)Mi,jgafq+i (19)
    Ci,2=(gvρ(i))afinj=2(gfjMi,j)afinj=2(gkj)Mi,jgafq+inj=2(gafq+i)Mi,j (20)
    Ci,3=gafi (21)

    For ζpath(u), due to ζIRE, C can obtain ψi=gdigfq and δi=di+fq. Finally,

    C sends the ciphertext CT={C,C0,C0,{Ci,1,Ci,2,Ci,3}i[1,l],{Fi}icover(RE)} to A.

    Phase 2: Phase 2 remains the same as the operation of Phase 1.

    Guess Phase: A outputs a guess ϖ about ϖ. If ϖ=ϖ, C outputs the guess μ=1 about μ, and then A obtains the normally generated ciphertext. The advantage that A obtains the normally generated ciphertext is ε=Pr[ϖ=ϖ|μ=1](1/2), and it means Pr[ϖ=ϖ|μ=1]=Pr[μ=μ|μ=1]. Therefore, the probability that C wins the game is Pr[μ=μ|μ=1] = ε+(1/2). Otherwise, C outputs the guess μ=0 about μ, A obtains a randomly selected element from GT, so that A cannot obtain any information from ϖ, Pr[ϖ=ϖ|μ=1] = 1/2. Then Pr[ϖϖ|μ=0]=Pr[μ=μ|μ=0] can be concluded. Thus, the probability that C wins the game is Pr[μ=μ|μ=0] = 1/2.

    Eventually, if C can solve the qBDHE problem, then the advantage of C can be described as follows:

    Pr[μ=μ] = Pr[μ=μ|μ=1]Pr[μ=1] + Pr[μ=μ|μ=0]Pr[μ=0] = (ε+12)12+1212=ε2 (22)

    In this section, we compare several existing schemes [26,27,29,30,31] with our scheme. Table 1 defines the symbols that appear below.

    Table 1.  The implication of symbols.
    Symbols Implications
    Ez Exponential operations on groups G,GT
    Pz Bilinear pairing operations
    Mz Multiplication operations in groups G,GT
    sp The number of attributes in the access policy
    sc The number of attributes in secret key that satisfy the access policy
    R The length of cover(RE)

     | Show Table
    DownLoad: CSV

    The hardware and software environments for implementing the experiment are as follows: A laptop equipped with 3.2GHz AMD Ryzen 7 6800H CPU and 8GB RAM was used, and the operating system is 64-bit Windows 11. We used JPBC 2.0.0 library for the experiment. The prime-order bilinear pairing is constructed on the 160-bit elliptic curve group, which is based on the curve y2=x3+x. Table 2 lists the runtime of the three cryptographic operations in the above environment. Table 3 compares the proposed scheme with previous ABE schemes in terms of the number of attribute authorities, verification, revocation, policy hiding, ability to encrypt offline, and whether blockchain technology is introduced. Table 4 shows the performance of the proposed scheme versus other schemes in the encryption and other phases. Figures 4 to 7 present the variation of the computation time as the user attribute space grows.

    Table 2.  Cryptographic operation runtime.
    Cryptographic operation Pz Ez Mz
    Time (ms) 8.1 6.2 0.002

     | Show Table
    DownLoad: CSV
    Table 3.  Functionality comparisons.
    Scheme Attribute Authority Verification Hidden policy Blockchain Revocation Outsource decryption
    [26] Single × × ×
    [27] Single × × × ×
    [29] Multiple × × × ×
    [30] Multiple × × ×
    [31] Multiple × × ×
    Ours Multiple

     | Show Table
    DownLoad: CSV
    Table 4.  Computational overhead comparison.
    Scheme Encryption Decryption Tracking CTUpdate
    Offline Online
    [26] - (sp+1)Mz+ (3+4sp+R)Ez (1+4sc)Pz+ (3+3sc)Mz+ (3+sc)Ez (6+sp)Pz+ (3+sp)Mz+ (3+sp)Ez REz
    [27] - (R+8+2sp)Mz 4Pz+ (scR+2)Ez (3sp)Pz+ spMz+ (3sp)Ez Pz+ (3+2R)Ez
    [29] (8sp+1)Ez (3sp+1)Mz Pz+3Mz+2Ez - -
    [30] - (sp+1)Ez scPz+ (2sc+1)Ez - -
    [31] - Pz+(3sp)Mz+ (5sp)Ez 4Pz+4Mz+2Ez (1+4sp)Pz+ (2+4sp)Mz+(1+3sp)Ez Pz+ (1+8sp)Mz+ (1+8sp)Ez
    Ours (5sp+2)Ez (2sp+R)Mz Pz+2Mz+2Ez (5+sp)Pz+ (3+sp)Mz+ (2+sp)Ez REz

     | Show Table
    DownLoad: CSV
    Figure 4.  Online encryption time.
    Figure 5.  Decryption time.
    Figure 6.  Tracking time.
    Figure 7.  CTUpdate time.

    Table 3 presents an analysis of various schemes. Specifically, the scheme [26] provides traceability, while the scheme presented in [27] adds policy hiding and revocation. However, both schemes rely on a single attribute authority and thus fail to resist collusion attacks from malicious users and attribute authorities. On the other hand, the scheme proposed in [29] adopts multiple attribute authorities to resist collusion attacks and employs online/offline encryption to enhance efficiency. While the schemes in [30,31] support flexible revocation, they suffer from high computational overhead. However, the above schemes lack support for integrity verification. In contrast, the proposed scheme integrates revocation, hidden policy, multiple attribute authorities and online/offline encryption. Additionally, the proposed scheme incorporates verification and blockchain technology to ensure data integrity.

    Table 4 shows the computational overhead of various schemes. From Table 4, we can observe that the encryption time of [27,29] and the proposed scheme is much less than other schemes. Furthermore, the proposed scheme attains a constant level of computational overhead in the decryption and update phase. In the tracking phase, both the proposed scheme and the other schemes contain a large number of complex operations, so the computational overhead is approximated.

    Figure 4 describes the change in online encryption time as the attribute space grows. We can find that the computation time for encryption grows linearly as the attribute space grows, and the encryption overhead is reduced because the proposed scheme uses online offline encryption to pre-process the data.

    Figure 5 illustrates the decryption time variation. The schemes [26,27,30] do not consider the case of large attribute space, and the computational overhead of these schemes increases rapidly as the attribute number grows. The scheme [29,31] and the proposed scheme outsource the complex calculations such as bilinear pairing to the cloud server. Therefore, the proposed scheme achieves constant-level decryption time.

    Figure 6 shows the tracking time of various schemes. Due to more bilinear pairing operations, the scheme [31] takes more time than other schemes. Even with the realization of data integrity verification at the same time, the tracking time of the proposed scheme remains at a low growth rate.

    Figure 7 shows the ciphertext update time. The ciphertext update times for the proposed scheme and the scheme [26] are only related to the number of revoked users. Therefore, the update time is much lower than other schemes. From the indicated results, the proposed scheme is more efficient and suitable for smart grid, while achieving the desired security goals. In summary, the experimental results are consistent with the above theoretical analysis in Table 4.

    To address the important issues in the existing CP-ABE schemes, such as the inability to resist collusion attacks, high computation overhead and lack of support for outsourced verification, this paper proposes a blockchain-based multi-authority revocable data sharing scheme. The proposed scheme can resist collusion attacks and realize access control with users' attribute sets. Moreover, the proposed scheme can trace malicious users and then revoke the user by using the binary tree. The proposed scheme introduces online/offline encryption and hybrid encryption, so that the computation overhead of the decryption phase is not affected by user attributes. Thus, the proposed scheme supports large attribute space and is more suitable for secure data sharing in multi-user smart grid. We also presented security proof to demonstrate that the proposed scheme is IND-CPA-secure under the hardness assumptions of qBDHE.

    The authors appreciate the editors and reviewers for their valuable comments and insightful suggestions. This work was supported by National Natural Science Foundation of China (No. 61662069), the China Postdoctoral Science Foundation (No. 2017M610817).

    All authors declare there is no conflict of interest.



    [1] Y. Tang, Q. Wang, M. Ni, Y. Liang, Analysis of cyber attacks in cyber physical power system, Autom. Electr. Power Syst., 40 (2016), 148–151. http://dx.doi.org/10.7500/AEPS20160123101 doi: 10.7500/AEPS20160123101
    [2] H. Gong, S. Cheng, Z. Chen, Q. Li, Data-enabled physics-informed machine learning for reduced-order modeling digital twin: application to nuclear reactor physics, Nucl. Sci. Eng., 196 (2022), 668–693. https://doi.org/10.1080/00295639.2021.2014752 doi: 10.1080/00295639.2021.2014752
    [3] P. T. Baboli, D. Babazadeh, D. R. K. Bowatte, Measurement-based modeling of smart grid dynamics: a digital twin approach, in 2020 10th Smart Grid Conference (SGC), Kashan, (2020), 1–6. https://doi.org/10.1109/SGC52076.2020.9335750
    [4] H. Gong, S. Cheng, Z. Chen, Q. Li, C. Quilodrán-Casas, D. Xiao, et al., An efficient digital twin based on machine learning SVD autoencoder and generalised latent assimilation for nuclear reactor physics, Ann. Nucl. Energy, 179 (2022), 109431. https://doi.org/10.1016/j.anucene.2022.109431 doi: 10.1016/j.anucene.2022.109431
    [5] J. Gao, Y. Xiao, J. Liu, W. Liang, C. L. P. Chen, A survey of communication/networking in smart grids, Future Gener. Comput. Syst., 28 (2012), 391–404. https://doi.org/10.1016/j.future.2011.04.014 doi: 10.1016/j.future.2011.04.014
    [6] B. Lu, Y. Ma, Research on communication system of advanced metering infrastructure for smart grid and its data security measures, Power Syst. Technol., 37 (2013), 2244–2249.
    [7] S. R. Rajagopalan, L. Sankar, S. Mohajer, H. V. Poor, Smart meter privacy: a utility-privacy: framework, in 2011 IEEE International Conference on Smart Grid Communications (SmartGridComm), (2011), 190–195. https://doi.org/10.1109/SmartGridComm.2011.6102315
    [8] H. Li, X. Liang, R. Lu, X. Lin, X. Shen, EDR: an efficient demand response scheme for achieving forward secrecy in smart grid, in 2012 IEEE Global Communications Conference (GLOBECOM), (2012), 929–934. https://doi.org/10.1109/GLOCOM.2012.6503232
    [9] L. Sankar, S. Kars, R. Tandon, H. V. Poor, Competitive privacy in the smart grid: an information-theoretic approach, in 2011 IEEE International Conference on Smart Grid Communications (SmartGridComm), (2011), 220–225. https://doi.org/10.1109/SmartGridComm.2011.6102322
    [10] A. Sahai, B. Waters, Fuzzy identity-based encryption, in Advances in Cryptology – EUROCRYPT 2005, Springer, Berlin, Heidelberg, (2005), 457–473. https://doi.org/10.1007/11426639_27
    [11] M. Joshi, K. Joshi, T. Finin, Attribute based encryption for secure access to cloud based EHR systems, in 2018 IEEE 11th International Conference on Cloud Computing (CLOUD), (2018), 932–935. https://doi.org/10.1109/CLOUD.2018.00139
    [12] Z. Liu, L. Jiang, X. Wang, S. M. Yiu, Practical attribute-based encryption: outsourcing decryption, attribute revocation and policy updating, J. Network Comput. Appl., 108 (2018), 112–123. https://doi.org/10.1016/j.jnca.2018.01.016 doi: 10.1016/j.jnca.2018.01.016
    [13] M. Cui, D. Han, J. Wang, An efficient and safe road condition monitoring authentication scheme based on fog computing, IEEE Internet Things J., 6 (2019), 9076–9084. https://doi.org/10.1109/JIOT.2019.2927497 doi: 10.1109/JIOT.2019.2927497
    [14] Y. Rouselakis, B. Waters, Practical constructions and new proof methods for large universe attribute-based encryption, in Proceedings of the 2013 ACM SIGSAC conference on Computer & communications security, Berlin, (2013), 463–474. https://doi.org/10.1145/2508859.2516672
    [15] W. Fan, L. Li, X. Chen, H. Jiang, Z. Li, K. C. Li, Deploying parallelized ciphertext policy attributed-based encryption in clouds, Int. J. Comput. Sci. Eng., 16 (2018), 321–333. https://doi.org/10.1504/IJCSE.2018.091784 doi: 10.1504/IJCSE.2018.091784
    [16] X. Li, K. Liang, Z. Liu, D. Wong, Attribute based encryption: traitor tracing, revocation and fully security on prime order groups, in Proceedings of the 7th International Conference on Cloud Computing and Services Science - CLOSER, (2017), 309–320. https://doi.org/10.5220/0006220203090320
    [17] Y. Zhang, D. Zheng, R. H. Deng, Security and privacy in smart health: efficient policy-hiding attribute-based access control, IEEE Internet Things J., 5 (2018), 2130–2145. https://doi.org/10.1109/JIOT.2018.2825289 doi: 10.1109/JIOT.2018.2825289
    [18] H. Cui, R. H. Deng, J. Lai, X. Yi, S. Nepal, An efficient and expressive ciphertext-policy attribute-based encryption scheme with partially hidden access structures, revisited, Comput. Networks, 133 (2018), 157–165. https://doi.org/10.1016/j.comnet.2018.01.034 doi: 10.1016/j.comnet.2018.01.034
    [19] Z. Liu, Z. Cao, D. S. Wong, Blackbox traceable CP-ABE: how to catch people leaking their keys by selling decryption devices on ebay, in Proceedings of the 2013 ACM SIGSAC conference on Computer & communications security, Berlin, (2018), 475–486. https://doi.org/10.1145/2508859.2516683
    [20] Z. Liu, X. Wang, L. Cui, Z. L. Jiang, C. Zhang, White-box traceable dynamic attribute-based encryption, in 2017 International Conference on Security, Pattern Analysis, and Cybernetics (SPAC), (2017), 526–530. https://doi.org/10.1109/SPAC.2017.8304334
    [21] Y. Shi, Q. Zheng, J. Liu, Z. Han, Directly revocable key-policy attribute-based encryption with verifiable ciphertext delegation, Inf. Sci., 295 (2015), 221–231. https://doi.org/10.1016/j.ins.2014.10.020 doi: 10.1016/j.ins.2014.10.020
    [22] V. H. Hoang, E. Lehtihet, Y. Ghamri-Doudane, Forward-secure data outsourcing based on revocable attribute-based encryption, in 2019 15th International Wireless Communications & Mobile Computing Conference (IWCMC), (2019), 1839–1846. https://doi.org/10.1109/IWCMC.2019.8766674
    [23] G. Xiang, B. Li, X. Fu, M. Xia, W. Ke, An attribute revocable CP-ABE scheme, 2019 Seventh International Conference on Advanced Cloud and Big Data (CBD), (2019), 198–203. https://doi.org/10.1109/CBD.2019.00044 doi: 10.1109/CBD.2019.00044
    [24] S. Wang, K. Guo, Y. Zhang, Traceable ciphertext-policy attribute-based encryption scheme with attribute level user revocation for cloud storage, PLoS One, 13 (2018), e0206952. https://doi.org/10.1371/journal.pone.0206952 doi: 10.1371/journal.pone.0206952
    [25] Z. Liu, S. Duan, P. Zhou, B. Wang, Traceable-then-revocable ciphertext-policy attribute-based encryption scheme, Future Gener. Comput. Syst., 93 (2019), 903–913. https://doi.org/10.1016/j.future.2017.09.045 doi: 10.1016/j.future.2017.09.045
    [26] D. Han, N. Pan, K. Li, A traceable and revocable ciphertext-policy attribute-based encryption scheme based on privacy protection, IEEE Trans. Dependable Secure Comput., 19 (2020), 316–327. https://doi.org/10.1109/TDSC.2020.2977646 doi: 10.1109/TDSC.2020.2977646
    [27] Q. Li, B. Xia, H. Huang, Y. Zhang, TRAC: traceable and revocable access control scheme for mHealth in 5G-enabled IIoT, IEEE Trans. Ind. Inf., 18 (2022), 3437–3448. https://doi.org/10.1109/TII.2021.3109090 doi: 10.1109/TII.2021.3109090
    [28] M. Chase, Multi-authority attribute based encryption, in Theory of Cryptography, Berlin, Heidelberg, (2007), 515–534. https://doi.org/10.1007/978-3-540-70936-7_28
    [29] S. J. De, S. Ruj, Decentralized access control on data in the cloud with fast encryption and outsourced decryption, in 2015 IEEE Global Communications Conference (GLOBECOM), (2015), 1–6. https://doi.org/10.1109/GLOCOM.2015.7417639
    [30] M. Xiao, Q. Huang, Y. Miao, S. Li, W. Susilo, Blockchain based multi-authority fine-grained access control system with flexible revocation, IEEE Trans. Serv. Comput., 15 (2021), 3143–3155. https://doi.org/10.1109/TSC.2021.3086023 doi: 10.1109/TSC.2021.3086023
    [31] K. Sethi, A. Pradhan, P. Bera, PMTER-ABE: a practical multi-authority CP-ABE with traceability, revocation and outsourcing decryption for secure access control in cloud systems, Cluster Comput., 24 (2021), 1525–1550. https://doi.org/10.1007/s10586-020-03202-2 doi: 10.1007/s10586-020-03202-2
    [32] P. Datta, I. Komargodski, B. Waters, Decentralized multi-authority ABE for NC 1 from BDH, J. Cryptology, 36 (2023), 6. https://doi.org/10.1007/s00145-023-09445-7 doi: 10.1007/s00145-023-09445-7
    [33] S. Hohenberger, B. Waters, Online/offline attribute-based encryption, in Public-Key Cryptography – PKC 2014, Buenos Aires, Argentina, (2014), 293–310. https://doi.org/10.1007/978-3-642-54631-0_17
    [34] A. Mughal, A. Joseph, Blockchain for cloud storage security: a review, in 2020 4th International Conference on Intelligent Computing and Control Systems (ICICCS), (2020), 1163–1169. https://doi.org/10.1109/ICICCS48265.2020.9120930
  • This article has been cited by:

    1. Kangqian Huang, Xin Hu, Rui Zhou, Dejun Xiang, Optimization and privacy protection of microgrid power trading system based on attribute encryption technology, 2024, 11, 2032-944X, 10.4108/ew.5431
    2. Jun Gu, Jing Shen, Tianle Li, Ying Jin, Zhao Yu, 2023, A Blockchain-Based Time-Sharing Trading Model for Microgrid Energy Storage, 979-8-3503-5773-8, 1387, 10.1109/IAECST60924.2023.10502679
    3. Ye Lu, Hao Wang, Xiaomei Jin, An Efficient Traceable and Revocable Access Control Scheme for Smart Grids, 2025, 17, 2073-8994, 294, 10.3390/sym17020294
  • Reader Comments
  • © 2023 the Author(s), licensee AIMS Press. This is an open access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0)
通讯作者: 陈斌, bchen63@163.com
  • 1. 

    沈阳化工大学材料科学与工程学院 沈阳 110142

  1. 本站搜索
  2. 百度学术搜索
  3. 万方数据库搜索
  4. CNKI搜索

Metrics

Article views(1871) PDF downloads(87) Cited by(3)

Figures and Tables

Figures(7)  /  Tables(4)

Other Articles By Authors

/

DownLoad:  Full-Size Img  PowerPoint
Return
Return

Catalog