A New Secure and Anonymous Metering Scheme for Smart Grid Communications

: The smart meter is one of the most important components of the smart grid, which enables bi-directional communication between electric power providers and in-home appliances. However, the ﬁne-grained metering mechanism that reports real-time electricity usage to the provider may result in some privacy and security issues for the owner of the smart meter. In this paper, we propose a new secure and anonymous smart metering scheme based on the technique of direct anonymous attestation and identity-based signatures. We utilize the trusted platform module to realize the tamper resistance of the smart meter. Moreover, our scheme is able to detect malfunctioning meters in which data is reported more than once in a time period. Finally, the performance and security results show that our proposed scheme is efﬁcient and satisﬁes the security requirements of the smart grid communication system.


Introduction
Electrical energy is one of the most important factors for the advancement of industrial development, urbanization, and economic globalization of any country [1].Nowadays, the problems of climate change and electrical energy consumption are becoming more and more serious.The globe is facing an energy crisis because of the steadily increasing demand for electrical energy as well as high emissions of carbon dioxide (CO 2 ) [2].Many countries in the world are seeking new technologies to develop renewable energies (derived from wind, sunlight, waters, etc) and to reduce CO 2 emissions and air pollution.Nevertheless, there also exists problems in dealing with the integration, system stability, and storage of different kinds of energy sources [3].Fortunately, the emergence of smart grid techniques has provided solutions for such problems.
Smart grid, according to the studies [4][5][6], is a new generation of electric power grid infrastructure for improved efficiency, reliability, and safety, with smooth integration of renewable and alternative energy sources, through automated control and modern communications technologies.With the high development of industry 4.0 and the emergence of 5G mobile communications technology, the smart grid, which is concerned as an important part of Internet of Things and smart cities, has been playing an important role in people's daily lives.
In order to efficiently use the electric power resources and utilize different kinds of renewable energies, in recent years, many different kinds of distributed energy management systems have been proposed by researchers [7][8][9][10].Such kinds of energy management systems can be applied in facilities that need two or more kinds of energy usage, such as airports, hospitals, and hotel buildings [11,12].However, in the smart grid communication network, the smart meter's fine-grained metering mechanism, which reports real-time electricity usage to the utilities (the electricity providers or service providers), may result in privacy issues for the owner of the smart meter [13].The inhabitants' behavioral patterns (e.g., the appliances they use, the time they wake up, take a shower, or leave home, etc.) can be deduced from the fine-grained meter readings [14,15].Moreover, it is essential to guarantee data security and integrity any time that the meter data is stored in the smart meter or transmitted in the channel of the smart grid network.
Over the past decade, in order to preserve privacy and security in the smart grid network, many privacy-preserving smart metering schemes have been proposed by researchers [16][17][18][19].The schemes can be classified into two large categories.The first category involves concealing fine-grained metering data using symmetric/public encryption [20,21], homomorphic encryption [22][23][24][25], identity-based signcryption [26], secure multiparty computation [27], and other data masking techniques such as noise addition [15,28] and using rechargeable batteries [29][30][31].The other category involves hiding the identity of the smart meter utilizing anonymity techniques, such as group signatures [32,33], ring signatures [34], zero knowledge signatures [35,36], and other pseudonym techniques [37][38][39].In order to prevent the meter data from being manipulated or altered by the meter owner, a tamper-resistant trusted platform module (TPM chip) is adopted by the smart meter [40].However, in most of the solutions, although they claimed that the smart meter was embedded with a TPM chip [32,35], they did not split the smart meter into two entities: A TPM and a host platform (the meter).Since the TPM has limited bandwidth and computational capability, most of the operations should be calculated in the computing module of the meter.Later, Zhao et al. [34] realized this problem, and in their solution, the TPM and the smart meter work together to generate a signature.However, they use ring signatures, where the computational complexity of smart meters will increase linearly with the total number of members in a ring; thus, their scheme will be inefficient for large-scale smart meter scenarios.
To solve this problem, in this paper, we design a new privacy-preserving scheme for the smart grid communication network.We use a pairing-based direct anonymous attestation (DAA) signature [41] to realize a tamper-resistant anonymous signature for smart meters.The DAA signature is adopted in the TPM version 2.0 [42].To alleviate the computational burden on the TPM chip, the host (the computation module of the smart meter) and the TPM chip will jointly generate the anonymous signature of the meter data.Moreover, the computational efficiency of smart meters will not be affected by the group members in the assigned domain in a data aggregator.Meanwhile, an efficient and provably secure identity-based signature (IBS) [43] is used by the data aggregator to guarantee the data integrity and secure transmission of aggregated metering data.
Contributions: We propose a scheme which utilizes an efficient pairing-based DAA to realize the tamper resistance and anonymous signatures in smart meters.Moreover, in order to avoid accidents caused by smart meters, our scheme is able to detect malfunctioning meters that report twice during a time period, and to revoke such kinds of smart meters.In addition, we use identity-based signatures to ensure the secure communication between the data aggregator and operation center.Finally, the security results show that our scheme satisfies the security requirements of smart grid communications, namely, correctness, data integrity, authenticity, anonymity, and traceability of malfunctioning meters.The experimental results show that our scheme is efficient and practical, especially in the signing of smart meters.
Organization: The rest of this paper is organized as follows.The next section introduces the methodology of our paper.In Section 3, we present the security and performance results of our scheme.Finally, the discussion and conclusions are respectively presented in Section 4 and Section 5.

Methodology
In this section, we introduce our methodology, which includes the cryptographic primitive, mathematical hard problem, system model, and detailed constructions of our proposed scheme.The notations used in our paper are described in Table 1.The i-th smart meter DA j The j-th data aggregator TPM i The TPM chip embedded in SM i ID j The identity of DA j ms millisecond n The total number of SMs in a domain m The total number of DAs ê Bilinear map G 1 ,G 2 ,G T

Multiplicative cyclic groups k
The security parameter q Prime order of G 1 and The system master key gpk The system public key f The secret key of the SM F The public key of the SM cre The credential of the SM H 1 A secure hash function that The set of all binary strings of length l RSA The public-key encryption algorithm AES-256 The symmetric encryption-decryption algorithm SHA-256 The hash function

Bilinear Maps
The DAA signature and IBS signature used in our scheme are based on an bilinear pairings.Let G 1 and G 2 be two multiplicative cyclic groups of prime order q with the generator g 1 and g 2 , respectively.We claim that ê : G 1 × G 2 → G T is a bilinear map if it satisfies the following properties [43][44][45]: There exists an efficient and publicly computable isomorphism ψ : Then, the two groups (G 1 ,G 2 ) in the above are considered as a bilinear map pair.

Mathematical Problem
Our scheme is based on the q-Strong Diffie-Hellman Problem.To introduce this problem, we follow the description given by Boneh and Boyen [46].Let (G 1 , G 2 , G T ) be the bilinear map groups of prime order q with two generators, g 1 ∈ G 1 and g 2 ∈ G 2 .The q-Strong Diffie-Hellman (q-SDH) problem in (G 1 , G 2 ) is defined as follows: Given a (q+2)-tuple (g 1 , g 2 , g x 2 , g x 2 2 , ..., g x q 2 ) as input, the output is a pair (g where the probability is over the random choice of x in Z * q and random bits consumed by A. We only introduce bilinear maps and the q-SDH problem here.For more detailed hard problems and detailed protocols of DAA and IBS, readers can refer to the references of DAA signatures [41] and IBS signatures [43].

System Model
In this paper, we adopt a three-level network model of a smart grid communication network according to [22,23,35].As depicted in Figure 1, the system can be simply divided into three entities: Smart Meter (SM), Data Aggregator (DA), and Operation Center (OC).In our model, the OC covers m DAs, and each DA is assumed to be responsible for connecting n SMs.The detailed functionality of each entity is described as follows.Smart Meter (SM): The smart meter, which is located in its owner's house, plays the role of metering the household's electricity consumption and continuously transmitting the near-real-time metering data to the data aggregator in each time period.Meanwhile, in order to guarantee the security of an SM, a tamper-resistant TPM chip is installed in each SM by the manufacturer when the SM is made.
Data Aggregator (DA): The data aggregator is responsible for aggregating the electricity consumption of smart meters in its specific domain.It verifies the signatures sent from smart meters, and relays the aggregated data to the operation center.
Operation Center (OC): The operation center is the backbone of the smart grid network; it controls the whole system of the smart grid communication network.It communicates with DAs and SMs, and collects the data from DAs for meter data management.
In addition, the communication channel between SM and DA, which can use the technology of WiFi or 3G/4G/5G, is wireless.The connection between DA and OC is wired, and uses the technology of fiber communication networks.

Construction of Our Proposed Scheme
This section presents our proposed secure and anonymous metering scheme.The scheme mainly consists of five phases: System initialization, membership registration, communications between the SM and DA, detection of malfunctioning meters, and communications between the DA and OC.The DAA signature is used in the communications between the SM and DA, while the IBS signature is used in the communications between the DA and OC.The detailed phases are described as follows.

System Initialization
The system initialization is similar to that of DAA [41] and IBS [43].We used the same parameters for the initialization of DAA and IBS, since the security of both signature protocols that we used is based on the same assumption (q-strong Diffie-Hellman assumption [46]) and the same bilinear map groups [45].Given a security parameter k, the system is initialized by OC as follows.
1. Find a prime q > 2 k , and select an asymmetric bilinear group pair (G 1 , G 2 ) of order q to satisfy a pairing function as follows: along with the generators and select a system master key s ← Z * q ; compute a system public key η where η := g s 2 . ( 3. Select secure hash functions Pre-compute the following pairings: 5. Output the system public key and master key

Membership Registration
The membership registration includes smart meter registration and data aggregator registration.We assume that all of the registrations are executed through a secure channel.

A. Smart Meter Registration
This is a protocol between the SM and OC.In our model, the smart meter consists of two main components: A host (meter) and a tamper-resistant module (TPM chip).In order to protect the sensitive information of the SM, any operation related to the smart meter's secret key should be calculated in the TPM chip.When a valid smart meter SM i (i=1, 2, ..., n) registers itself into the system, it will finally get a legal DAA credential from the OC, which is shown in Figure 2. In the original DAA scheme [41], the credential is issued by the issuer.The issuer can be the manufacturer, the third party service provider, or the electricity authority.In this paper, we assume that the credential is issued by the OC.Finally, the credential can be further used for anonymously signing the meter data.The protocol proceeds as follows.

Smart Meter (SM i )
Operation Center (OC) 1.The OC randomly chooses a nonce n I ∈ {0, 1} * and sends n I to SM i .
2. The TPM i in the smart meter selects a secret key f ← Z * q , and computes the associated public key Then, the TPM i makes a zero-knowledge proof [47] to prove that the TPM i owns the secret key f, i.e., PK{( f ) : Finally, the TPM i sends the proof message, cmt f and n I , to the OC. 3. Upon receiving the cmt f and n I , the OC checks F against the RL to verify the correctness of cmt f .
RL is a rogue list, which is set to be empty at the system setup, and will contain the invalid secret key f of malfunctioning or rogue smart meters.Then, the OC computes a credential cre by calculating: A is a signature on the public key F (therefore on f ).Then, the OC sends cre = (A, x) to SM i .4. SM i verifies the correctness of the credential cre such that ê(A, ηg x 2 ) = ê(g 1 F, g 2 ).
Thus, SM i gets a membership credential cre on its secret key f.

B. Data Aggregator Registration
When a data aggregator DA j (j=1,2,...,m) registers itself into the system, the OC computes the identity-based private key S ID j for each of them as follows: where ID j is a unique identity string of ID j and s is the system master key.Then, the OC sends S ID j to each DA through a secure channel.

Communications between the SM and DA
The mutual communications contain the meter data signing protocol in the SM and verification algorithm in the DA.

A. The Signing Protocol
This is a protocol performed by SM i to produce an anonymous signature on fine-grained metering data.On input of the system public key gpk, membership credential cre = (A, x), membership key f, meter data msg i , Meter i and TPM i in SM i jointly run the signing protocol.Since meter data should be uploaded to DA j without revealing the smart meter's identity (f, F, and cre), the smart meter needs to prove the knowledge of f and cre (F is not used in this phase, so we do not need to prove the knowledge of it).
The protocol is depicted in Figure 3, which is similar to the sign protocol of the DAA scheme [41].Firstly, to allow DA j to verify the identity of SM i and recognize the malfunctioning/rogue smart meter, SM i needs to generate a pseudonym K instead of public key F and a proof of knowledge that the pseudonym is generated by its own valid secret key f , where where TS is a timestamp and msg i is meter data generated in a timestamp.If (J, K) is generated more than one time in a time period, the smart meter will be linked; the details will be illustrated in Section 2.4.4 (Malfunctioning Meter Detection).Then, SM i needs to compute a blind credential T as follows: where a ← Z * q .Also, SM i needs to provide a proof of knowledge that T is a blind credential on a valid secret key f .Finally, using the method of the Fiat-Shamir heuristic [48,49], SM i and TPM i jointly generate a signature of proof of knowledge The detailed signature is shown in Figure 3. Finally, SM i outputs the signature and sends (msg i , σ i ) to the data aggregator DA j .

B. The Verification Algorithm
Upon receiving the anonymous signature σ i and message msg i from SM i , DA j runs a verification algorithm to check the validity of SM i 's signature σ i .Firstly, DA j checks if the pseudonym K is generated by an invalid f in the rogue list.Then, DA j checks if σ i does prove the knowledge of a secret key f and knowledge of a valid membership credential cre on the same f .The detailed algorithm is described in Figure 4, which is identical to that in the DAA scheme [41].However, in our algorithm, we check the validity of TS and J at the beginning.If σ i is correct and valid, DA j accepts the meter data msg i .
However, before uploading all of the meters' electricity consumptions to the operation center, DA j needs to perform a phase of detection of malfunctioning meters.If all of the meter data are honestly uploaded by the smart meters, this phase will be ignored.

Malfunctioning Meter Detection
Malfunctioning meter detection includes two phases: The linking algorithm and the tracing protocol.The linking algorithm is to check if there exists a smart meter signing a message more than once in a time period.If any two signatures are linked, the tracing protocol will help to identify the linked smart meter.

A. The Linking Algorithm
This algorithm is run by DA j .When DA j receives all of the meter data {msg i } n i=1 from SM i (i = 1, 2, ..., n) at a time period TS, it needs to check if there exists a smart meter signing a message more than once in a time period TS.If so, this smart meter may be malfunctioning, and we need to identify this meter.Firstly, DA j collects all of the messages and signatures generated in a time period TS.If there exist two identical messages (msg 0 = msg 1 ), DA j runs the linking algorithm in Figure 5, and it is similar to the linking algorithm of the DAA scheme [41].Otherwise, if there are no identical messages, this step as well as the next step are stopped.

B. The Tracing Protocol
After the linking phase, if DA j finds out that a suspected pair (J R , K R ) was generated more than once in a time period, it will ask SM i (i = 1, 2, ..., n) for proof of knowledge that it did not generate (J R , K R ) before.SM i needs to prove that its secret key f i = log J R K R , and computes a zero-knowledge proof that PK{( f i ) : We use the zero-knowledge proof protocol designed by Camenisch and Shoup [50] for proving that two discrete logarithms are not equal.The method is as follows.The prover (the smart meter SM i ) and verifier (the tracer, which can be the OC) have common inputs Ji, K i , J R , K R ∈ G 1 , where log J i K i = log J R K R .SM i has an additional input f i , as follows: Then, SM i shows proof to the tracer with the following steps.
1. SM i selects ι ← Z * q and computes τ by 2. SM i executes the proof of knowledge that and sends the result to the tracer.3. The tracer accepts that the smart meter is not a malfunctioning one if it accepts in step 2. Otherwise, the tracer rejects the meter, and ensures that the present SM i is the malfunctioning smart meter.
The detailed proof is shown in Figure 6.The malfunctioning smart meter will be revoked and replaced by the electricity provider.

Communications between the DA and OC
After the phases of verification and malfunctioning meter detection, the data collector DA j collects the meter data at the same timestamp sent from the smart meters in its domain area, and calculates the aggregated electricity consumptions M j as follows: Then, the DA j securely reports the aggregated meter data to the OC using the identity-based signature [43].

A. Signing
Using the identity-based private key S ID j , DA j signs the aggregated meter data M j as follows.It picks up a random value µ ← Z * q , and computes the following equations: where TS is the current timestamp.Then, the signature on M j is σ j = (h, S) ∈ Z * q × G 1 .Finally, DA j forwards (σ j , M j , ID j , TS) to the OC.

Performance Results
In this section, we evaluate the computational cost of our proposed scheme, and compare the performance with Zhao et al.'s scheme [34].
To analyze our scheme, we mainly focus on six cost-expensive operations: Pairing, exponentiation, scalar multiplication, the map-to-point function, the hash function, and symmetric encryption/decryption.Other lightweight operations such as concatenation and modular addition are ignored due to their high efficiency.
The security level for the RSA public-key encryption algorithm in [34] is 1024 bits.In order to achieve the approximate cryptographic security level, in our scheme, we use the 80-bit security level elliptic curves (MNT curves) introduced in [52,53] by selecting a 170-bit prime q, with an embedding degree of 6.
The experiments were conducted on a personal computer with the Intel(R) Core(TM) i7-7820X CPU 3.60GHz and 16 GB memory.All of the operations were executed on a GNU Compiler Collection (version 7.1) with the Pairing-Based Cryptography library (PBC-0.5.14) and Openssl crypto library (version 1.1.1).
To simulate the scheme of [34], we adopted the AES-256 as the symmetric encryption-decryption algorithm and the SHA-256 as the hash function.For convenience, some notations are defined in the following list, and the average running time of each operation is presented in Table 2.  Table 3 presents the comparisons with the scheme [34] on the computational cost of communications between the SM and DA.Since in [34], a protocol between the DA and OC was not designed, in Table 4, we only present the computational cost for the communications between the DA and OC in our scheme.In Table 3, we can see that, for the communications between the SM and DA, the smart meter needs to calculate 1T pr + 6T mul + 1T exp + 3T hp operations in our scheme, while (t + 3)T exp + t × T sym + 3T H operations are computed in that of [34].The computational complexity of the smart meter in [34] depends on the ring size t (i.e., the total number of smart meters in a domain).In this case, the execution time of the smart meter will increase linearly with the growing number of smart meters in a ring.In the real world, the number of smart meters in a domain belonging to a data aggregator will be at least 10.Most of the time, the average number of smart meters can be 50 or even 100.This means that when t = 10 ∼ 100, for each metering, the execution time of a SM in [34] will be at least 3.802 ms and at most 15.549 ms.However, in our scheme, the smart meter only need to spend 3.561 ms for each signing on the metering data.Therefore, for the same purpose of anonymous signatures based on TPM chips, our scheme has an advantage in the computational efficiency on the side of the smart meter.However, as shown in Table 3, our scheme has a drawback, in that the computational complexity in the DA is larger than that in [34].Even so, this kind of disadvantage is not fatal.In the communications of a smart grid network, the efficient calculation complexity in the smart meter is more important than in the aggregator, since the aggregator has more powerful computational abilities than those of the smart meter.

Discussion
In our study, in order to design a tamper-resistant metering scheme, a trusted platform module (TPM chip) is embedded in each smart meter.The TPM is a trusted hardware module which is developed by the Trusting Computing Group (TCG).One of the goals of the TPM is to provide anonymous authentication with a remote verifier [54].In the earlier version of the TPM, a privacy certification authority (Privacy CA) was adopted by TCG to act as a trusted third party to authenticate the TPM.However, in this solution, it was later found that the real identity of the TPM can be revealed with the help of the Privacy CA.Then, version 1.2 of the TPM Specification [55], the direct anonymous attestation (DAA) [54] was adopted.The construction of DAA prevents the leakage of the real identity of the TPM when anonymously signing a message.Later, the pairing-based DAA [41] was adopted in the TPM 2.0 Specification [56], which further reduced TPM resources; since the TPM has limited computational capacity, most of the operations should be calculated in the host of the TPM.In our paper, we use the property of strong anonymity of DAA to design an anonymous metering scheme.Though the TPM has the disadvantage that the capacity of storage and computation is limited, in our scheme, most of the operations are done in the smart meter (the host of the TPM).Meanwhile, in [34], Zhao et al. also shows that a TPM with cryptography primitives can be used to design a tamper-resistant smart meter.Therefore, our proposed smart metering scheme is practical.

Conclusions
In this paper, we propose a secure and anonymous smart metering scheme based on direct anonymous attestation (DAA) and identity-based signature schemes.Like many other works, the smart meter is equipped with a TPM chip to store the secret key and execute the anonymous signing of metering data using a DAA signature.However, on account of the limited capacity of the TPM, we divide the signer into two parts (the TPM and the host, i.e., the smart meter).We secure the communications between the data aggregator and the operation center by using identity-based signatures.We show that our scheme satisfies the properties of correctness, data integrity and authenticity, and anonymity.Moreover, our scheme is able to detect malfunctioning smart meters.The experimental results show that our scheme is efficient and practical.In our further work, we will consider how to improve the efficiency of verification in the data aggregator, and design a more secure and efficient metering scheme for smart grid communications.

Figure 1 .
Figure 1.System model of the smart grid communication network.

Figure 2 .
Figure 2. Membership registration of smart meter.

Figure 3 .
Figure 3.The signing protocol of the smart meter.

Figure 5 .
Figure 5.The linking algorithm for malfunctioning smart meters.

•
T pr : The execution time of a bilinear pairing operation ê : G 1 × G 2 → G T .• T mul : The execution time of a scalar multiplication in G 1 , G 2 .• T exp : The execution time of a modular exponentiation operation.• T hp : The execution time of the map-to-point function in G 1 .• T sym : The execution time of symmetric encryption or decryption.• T H : The execution time of the hash function.

Table 1 .
The notations used in the paper.

Table 2 .
The average execution time of operations (ms).

Table 4 .
Computational cost of the communications between the DA and OC.