Enabling Privacy in Vehicle-to-grid Interactions for Battery Recharging

The diffusion of Electric Vehicles (EV) fostered by the evolution of the power system towards the new concept of Smart Grid introduces several technological challenges related to the synergy among electricity-propelled vehicle fleets and the energy grid ecosystem. EVs promise to reduce carbon emissions by exploiting Renewable Energy Sources (RESes) for battery recharge, and could potentially serve as storage bank to flatten the fluctuations of power generation caused by the intermittent nature of RESes by relying on a load aggregator, which intelligently schedules the battery charge/discharge of a fleet of vehicles according to the users' requests and grid's needs. However, the introduction of such vehicle-to-grid (V2G) infrastructure rises also privacy concerns: plugging the vehicles in the recharging infrastructures may expose private information regarding the user's locations and travelling habits. Therefore, this paper proposes a privacy-preserving V2G infrastructure which does not disclose to the aggregator the current battery charge level, the amount of refilled energy, nor the time periods in which the vehicles are actually plugged in. The communication protocol relies on the Shamir Secret Sharing threshold cryptosystem. We evaluate the security properties of our solution and compare its performance to the optimal scheduling achievable by means of an Integer Linear Program (ILP) aimed at maximizing the ratio of the amount of charged/discharged energy to/from the EV's batteries to the grid power availability/request. This way, we quantify the reduction in the effectiveness of the scheduling strategy due to the preservation of data privacy.


Introduction
The evolution of the electric power system toward the novel Smart Grid paradigm and the progressive concurrent electrification of transportation aimed at the reduction of carbon emissions rises various issues related to the interactions between the distribution network and the Electric Vehicles (EVs).Such category of vehicles includes battery/fuel cell-powered automobiles, as well as hybrid systems combining electricity generators and conventional gasoline engines [1,2].Several investigations on the potential market penetration of EVs and on the impacts of their possible massive introduction have been carried out by the research community [3,4]: on one hand, the additional connected load capacity required to simultaneously recharge a huge number of EVs might significantly impact the energy consumption trend; on the other hand, the EVs' batteries represent a huge storage bank that can be exploited to flatten the typically unpredictable power generation patterns of Renewable Energy Sources (RESes) by accumulating energy in case of excessive power generation and transferring it back to the grid during peak-demand periods [5,6].To enable such synergies between EVs and the Smart Grid, which are usually referred to as Vehicle-to-Grid (V2G) interactions, the introduction of an aggregator capable of coordinating the charging/discharging process for a huge fleet of vehicles has been proposed [7,8]: the role of such agent is to operate as middleman between the vehicle owner (who could not act as stakeholder on the electricity market due to the limited power capacity of a single vehicle) and the electrical utilities or system operators.Several business models for the aggregation entity have been studied, possibly taking into account the additional costs incurred by the EVs' owners due to the frequent battery charge/discharge and the introduction of financial incentives to encourage the owners to plug their vehicle when not in use [9,10].However, V2G assumes that detailed information about the traveling habits of the vehicle owners are available at the aggregator, which can disclose sensitive data (e.g., presence in a certain location at a given time) and thus arises privacy concerns [11,12]: according to NIST [13], once a two-way communication between the EV and the charging station is established, there is currently no technical limitation to the amount and type of data that could be obtained from the EV's microcomputers which manages specific functions such as breaking, ignition systems, lighting controls, fuel delivery, on-board diagnostics, and so on.This could lead to potentially threatening consequences: for instance, burglars could track people's movements before attempting robberies, information about vehicle maintenance could be inferred and exploited for insurance and warranties, or companies could perform targeted marketing for car-related services.
The main contributions of our paper are: • the design of a privacy preserving online framework which allows a set of Aggregators to collaboratively coordinate the charging/discharging process of the vehicles' batteries without learning the time periods in which the EVs are actually plugged-in and the current charge level of the batteries, nor the amount of refilled energy: every data is split in w parts called shares by means of the Shamir Secret Sharing (SSS) threshold cryptosystem and each share is given to a different Aggregator.The protocol ensures that a collusion of less than t ≤ w Aggregators cannot reconstruct the data.
• the definition of a set of security properties which capture the requirements of V2G interactions for battery recharge and the proof that such properties are satisfied by our proposed scheduling protocol.• the formulation of a benchmark offline scheduling problem, which assumes full knowledge of the future travels of the users and of the battery-related information before the beginning of the scheduling horizon.• the comparison of the performance of our privacy-friendly mechanism to the benchmark model.
This way, we quantify the reduction in the effectiveness of the scheduling strategy due to incorporating data privacy preservation in the scheduling mechanism.
The benefits introduced by our privacy-friendly protocol are twofold: on one hand, it encourages the EV owners to take part in the scheduling optimization framework by protecting their personal data.Assuming an underlying business model which rewards the users that allow for the discharge of their EV's batteries, providing privacy in V2G interactions could therefore lead to significant cost savings for the individual users.On the other hand, the wider is the EV fleet participating to the protocol, the higher is the degree of flexibility experienced by the grid in the management of the power generation/consumption balancing, thus helping in a more effective compensation of the unpredictable power generation patterns of RESes.
The remainder of the paper is structured as follows: Section 2 provides an overview of the related literature, while some background notions about the SSS scheme are recalled in Section 3. The privacy-friendly scheduling infrastructure, the collaborative scheduling procedure and the associated communication protocol are discussed in Section 4. The security analysis of the proposed scheduling mechanism are presented in Section 5, while Section 6 introduces an Integer Linear Programming formulation for the optimal scheduling to be used as evaluation benchmark.The performance assessment of our proposed solution is discussed in Section 7. Final conclusions are drawn in the last Section.

Related Work
The design of EVs and the characterization of their interactions with the power grid has been widely investigated in the last decade: for a comprehensive survey on the impact of the introduction of EVs in the Smart Grid ecosystem, the reader is referred to [14], while a thorough overview on the economical and technical models of aggregator agents for EV fleets can be found in [15].
A substantial body of work investigates optimal and heuristic policies for the battery recharge of a population of EVs based on various approaches, ranging from game theory [16,17] to queuing theory [18,19], possibly associated with reinforcement learning techniques [20] or stochastic/fuzzy logic-based predictors [21].Game models are suitable for scenarios involving multiple selfish entities, each one operating with the aim of optimizing his own utility function, and allow for possible negotiations among them.Conversely, in our framework we assume that the vehicle owners fully collaborate with the aggregator in order to achieve a common optimization goal in terms of balancing of the grid's power availability, without assumption of any economical incentives.Queuing models are employed to capture constraints such as limits on the maximum number of EVs to be charged contemporaneously: our scenario assumes that the charging station is equipped with a sufficient number of plugs to serve the whole fleet without introducing additional waiting times.
However, none of the above papers addresses the privacy-related issues which are peculiar of the V2G scenario, which have been considered only by a few studies: Stegelmann and Kesdogann [22] enumerate the security requirements of a V2G infrastructure in presence of an untrusted aggregator, and formalize the model of an honest-but-curious attacker which tries to infer the traveling habits of the vehicle owners by linking the plugging/unplugging events at the charging stations in different locations.The same authors further refine such adversary model in [23] by integrating information regarding the charge level of the EV's batteries.We consider the same attacker model, and our solution ensures that the aggregators schedule the charging/discharging process without knowing the total amount of energy to be provided to the battery, nor the time periods in which the EV is actually plugged.The only information available at the aggregators is a priority tag which declares whether the EV must be necessarily charged or could also be discharged, according to the current battery charge level, which remains undisclosed.
Yang et al. [24] also assume a honest-but-curious aggregator model in a two-tiered structure including multiple local aggregators directly interacting with the vehicles and a central aggregator which interfaces the electricity market, and propose a rewarding scheme based on blind signature techniques, which ensures mutual authentication while preserving location and identity privacy, and allows for anonymous rewards.Our solution is based on Shamir Secret Sharing scheme, which is computationally less demanding, but requires the collaboration of multiple scheduling entities, thus introducing additional message exchanges among them (which would not occur in presence of a single aggregator).
Liu et al. propose in [25] a two-way anonymous payment system for EVs' battery charge/discharge providing traceability in case of car theft, while Nicanfar et al. [26] design a pseudonym-based authentication scheme, which ensures untraceability of the users' movements and assumes the presence of an external trusted entity in charge of recording the associations between pseudonyms and real identities to provide accountability for billing purposes.Though the security of the billing process is out of the scope of our contribution, similar protocols could be easily integrated in our infrastructure.

Background on Shamir Secret Sharing Scheme
Shamir Secret Sharing (SSS) scheme [27] is a cryptographic threshold scheme which allows multiple participants to reconstruct a secret by means of a collaborative procedure.To do so, the secret is split in w shares, which are given to the participants to the protocol: the secret can be recovered through cooperation of at least t ≤ w participants, where the threshold t is a system design parameter.
More in detail, the SSS scheme works as follows.Choose a prime number q and split the secret mod q, where x s ∈ Z q is arbitrarily chosen.The secret can be reconstructed by interpolating at least t shares, using e.g., the Lagrange interpolation algorithm.The SSS scheme has homomorphic properties with respect to addition and multiplication, meaning that performing such operations on the shares and then recovering the result leads to the same result that would be obtained by computing the same operations on the secrets directly.The sum of two secrets can be independently calculated by a single participant by summing the corresponding shares, while multiplication must be performed interactively by means of a collaborative procedure, e.g., as the one described in [28].Therefore, any function expressed in terms of additions and multiplications can be calculated directly on the shares.In particular, several collaborative methods to perform the comparison of two secrets have been proposed (see e.g., [29,30]).In this paper, we will adopt the comparison protocol presented in [30], which works as follows: each party holding the s-th shares (x s , y s ), (x s , y s ) of the secrets m and m to be compared selects two big random numbers r s , r s , which can multiplicatively hide m − m , and a random bit b s ∈ {0, 1}.The collaborative protocol enables each party to obtain a share of the quantity c = (m − m ) t s=1 (−1) bs r s − t s=1 (−1) 1−bs r s .The result of the comparison can be computed by retrieving c, setting a bit e either to 0 in case c > 0 or to 1 otherwise (note that in a modulo n field negative numbers are represented by the upper half of the range [0, n − 1]), and calculating the result of the XOR operation The reader is referred to [30] for additional details about the collaborative procedure and the proof of the correctness of the comparison protocol.

The Privacy-Friendly V2G Communication Framework
As depicted in Figure 1, our proposed architecture comprises a set of EVs, V, a set of Aggregators, A, which collaboratively schedule the charge/discharge of the EVs' batteries, and an Anonymizer which collects the messages sent by the EVs and replaces their IDs with pseudonyms before forwarding the messages to the Aggregators.The Anonymizer also receives the charge/discharge schedules from the Aggregators and communicates each of them to the addressed EV.We assume that: (1) Each EV is equipped with hardware and software (e.g., as described in [31,32]) enabling Internet access at any time.(2) A Configurator node is responsible for the setup of a suitable public-key infrastructure (e.g., as the one proposed in [33]).(3) The parties agree on a hybrid encryption algorithm E(K e , •) and a corresponding decryption algorithm D(K d , •).The hybrid scheme is assumed to be IND-CPA secure [34] (i.e., it ensures message indistinguishability under chosen plaintext attack) and uses state-of-the art secure public key cryptography and symmetric cryptography to transmit messages of any size.(4) Each Aggregator a ∈ A has its own pair of public/private keys (K a e , K a d ) and all the EVs know the public keys of the Aggregators.(5) All the communication channels between the EVs, the Anonymizer, and the Aggregators are confidential and authenticated.
We also assume that time is divided in a set of epochs I of finite duration T (e.g., in the order of minutes) and that at the beginning of each epoch i ∈ I the system operator communicates the maximum amount g i of power it can provide to recharge the Vehicles or it would need to discharge in order to satisfy the demands generated by other categories of critical loads (e.g., non-deferrable appliances).Such power supply/request curve is supposed to be public and known to all the Aggregators.
The design goal is to schedule the charge/discharge times of the EVs' batteries through a collaborative procedure in order to satisfy the customers' recharge requests while minimizing the difference between the power supplied (requested) by the grid and the power charged (discharged) to (from) the batteries, without exceeding the grid overall power availability (request).
A pictorial view of the exchanged messages between Vehicles and Aggregators is presented in Figure 2, while a list of the main symbols is provided in Table 1.

Vehicle, v
Anonymizer Aggregator, a Aggregator, a collaborative scheduling Whenever a new epoch i starts, each Vehicle v ∈ V initializes a parameter γ vi either to 0, in case it is unable or unwilling to be charged/discharged (for instance because it is currently traveling or because its battery is already full) or to r v , which indicates the Vehicle's charge/discharge rate.Moreover, v defines a threshold t v indicating the level of charge below which no discharge is accepted by the customer.In a worst-case scenario, t v equals the level of full battery charge, meaning that the customer does not allow for any discharge.Let l vi be the battery charge level of v at the beginning of epoch i: if l vi < t v , v sets a priority bit b vi to 1, otherwise to 0. Further, v generates an ephemeral keypair (K vi e , K vi d ), which is refreshed at every epoch.Then, v divides γ vi in shares using a (w, t)-SSS scheme with parameters t = w = |A|, thus obtaining |A| shares S 1 (γ vi ), . . ., S |A| (γ vi ), and concatenates the priority bit b vi and the ephemeral encryption key K vi e to each share S a (γ vi ).For the sake of easiness, in this paper we set as SSS threshold t = w, meaning that all the Aggregators must collaborate to perform the charge/discharge scheduling procedure.However, to improve resiliency to faults and malfunctions, t could be lower than w.For a discussion on the correct dimensioning of t and w, the reader is referred to [35].Finally, v encrypts b vi ||S a (γ vi )||K vi e using the public key K a e for each Aggregator a ∈ A and sends the pair Let Γ Π vi be the scheduling output of the Vehicle associated to the pseudonym Π vi , which can be set by the Aggregators either to 1 if the Vehicle is scheduled for recharge, to −1 if it is scheduled for discharge, or to 0 otherwise.Moreover, let P i be a variable which records the amount of power required for the charges/discharges scheduled during the current epoch i: positive values of P i indicate that the grid must provide power to charge the batteries, while negative values indicate that the energy collected from the batteries is injected in the grid.
collaboratively compare P i + r v and g i 7: if S a (P i ) ← S a (P i ) + S a (γ vi ), Γ Π vi ← 1 {The grid provides enough energy to recharge v} if P i > g i then 12: S a (P i ) ← S a (P i ) − S a (γ vi ), Γ Π vi ← −1 {v is discharged to reduce the amount of energy taken from the grid}   if P i < g i then

22:
S a (P i ) ← S a (P i ) + S a (γ vi ), Γ Π vi ← 1 {v is charged to reduce the excessive amount of energy provided by the batteries to the grid} Initially, a designated Aggregator a sets P i to 0, divides it in shares and distributes the shares S a (P i ) to the Aggregators.Once all the pseudonymized messages from every EV have been received by the Aggregators, each Aggregator a decrypts the incoming messages using its private key K a d and retrieves the triple b vi , S a (r v ), K vi e for each Vehicle v, then it operates according to Algorithm 1 as follows: (1) It groups the EVs'pseudonyms in two sets V h and V l .The former set includes all the pseudonyms associated to Vehicles with b vi = 1 which do not allow battery discharge, while all the other pseudonyms are grouped in V l .Note that the Vehicles whose pseudonyms are in V h are considered to have high charge priority, meaning that they will always be scheduled for recharge, regardless to the energy availability of the grid.Conversely, the Vehicles belonging to V l can be either charged/discharged or not, in order to meet the grid power offer/demand.
(2) The recharge of each Vehicle with pseudonym Π vi ∈ V h is scheduled for the epoch i by setting Γ Π vi to 1 and the total power amount P i is updated by adding the corresponding share S a (γ vi ).
Note that the additions are performed directly on the shares, therefore the Aggregator operates without knowing the values γ vi .In case γ vi = 0, i.e., v is not available for recharge/discharge, adding S a (γ vi ) to S a (P i ) does not alter the current values of P i .(3) For each Vehicle associated to a pseudonym Π vi ∈ V l , if g i > 0 (i.e., the grid has a power surplus which can be used to recharge the batteries), the Aggregators collaboratively compare P i + γ vi and g i by means of the comparison protocol presented in [30].Without loss of generality, we assume that the Aggregator a is elected as responsible of defining the order of service of the vehicles in V l (which is randomly chosen at every epoch) and to communicate it to the other Aggregators.If the current power amount (including the recharge of v) does not exceed g i , v is scheduled for recharge, otherwise a second collaborative comparison between P i and g i is performed: if P i exceeds g i (meaning that the current energy used to serve the Vehicles exceeds the grid's power availability), the discharge of v is scheduled, otherwise no charge/discharge takes place.Analogously, for g i < 0, P i − γ vi and g i are collaboratively compared and in case P i − r v exceeds g i , the discharge of the battery of v is scheduled in order to reduce the amount of energy used for recharging, otherwise the Aggregators compare again P i to g i and if P i < g i (i.e., the total discharged energy exceeds the grid's needs), v is recharged.Conversely, in case P i ≥ g i , no action is scheduled.
Once the scheduling procedure is concluded, a sends to the Anonymizer the scheduling output E K vi e (Γ Π vi ) encrypted under the ephemeral encryption key of Vehicle v and the corresponding pseudonym Π vi .The Anonymizer retrieves the identity ID v of the Vehicle associated to Π vi , forwards E K vi e (Γ Π vi ) to v, which obtains Γ Π vi by decrypting the message with its private ephemeral key K vi d and schedules its battery charge/discharge accordingly.

Security Discussion
In this Section we discuss the adversarial model, state definitions of the privacy properties of our scheduling mechanism and provide proofs that such properties are guaranteed by our framework.
We assume that each Aggregator behave according to the honest-but-curious attacker model, meaning that it honestly executes the scheduling algorithm, but tries to obtain further information about the current battery levels of the EVs and the amount of refilled energy by performing arbitrary elaborations on the messages they receive, possibly colluding with other Aggregators (but not with the Anonymizer).The Anonymizer is also supposed to be honest-but-curious.Conversely, the EVs are assumed to by honest nodes.
We now define the property of blindness, which the proposed infrastructure satisfies.More formally, we define the Blind experiment, involving a challenger C controlling the Anonymizer node and a probabilistic polynomial-time adversary D controlling the set of colluded Aggregators Ã : | Ã| < A: , the identifiers ID v , the values γ vi and the random numbers ρ 1 , ρ 2 , . . ., ρ t−1 to be used to divide each γ vi in shares for each Vehicle in The architecture provides |A|-blindness if: The proof that our proposed infrastructure is blind descends from the property of perfect secrecy of the SSS scheme [36] and can be constructed by straightforwardly extending the one provided in ( [37], Theorem 3) for two sets of shares to a scenario with |I|(|V l | + |V h |) sets of shares.The theorem proves that, given two secrets m 0 , m 1 , two sets of their shares S 0 , S 1 of cardinality t − 1 and a random bit b ∈ {0, 1}, the probability that an adversary provided with m b , S 0 , S 1 can guess the correct value of b is 1/2.
Thus, it follows that: The proof is completed by noting that the pseudonyms Π vi are random numbers refreshed at every epoch, therefore the knowledge of Π vi does not provide any advantage to D: in particular, from the point of view of the collusion Ã, if b vi = 1 no Vehicle v appears to be more likely to be the sender of b vi than any other Vehicle v ∈ V h b .Analogously, if b vi = 0, all the Vehicles in V l b are equally likely to have generated b vi .It follows that the collusion Ã obtains no information to reconstruct the succession of b vi generated by a given Vehicle v during the succession of epochs I. Definition 2. The scheduling architecture is oblivious if the Anonymizer has no knowledge of the priority bit b vi , the values γ vi and the scheduling outputs Γ Π vi in any epoch i.
To formalize this property, we define the Oblivious experiment, which involves a challenger C controlling the set of Aggregators and an adversary D controlling the Anonymizer: (1) D selects two Vehicles v 0 , v 1 ∈ V and communicates to C the priority bits b v 0 i , b v 1 i , the values γ v 0 i , γ v 1 i , and the random numbers ρ 1 , ρ 2 , . . ., ρ t−1 to be used to divide The architecture provides obliviousness if: Assuming that the cryptosystem E(K e , •) ensures message indistinguishability (see Section 4), the property can be proved by contradiction: let us suppose that the adversary D has more than negligible advantage in the Oblivious experiment.Since in Oblivious the adversary D arbitrarily chooses the plaintext data and all the parameters of the SSS scheme, Oblivious is constructed analogously to the IND-CPA experiment [34].Therefore, if D has more than negligible advantage over randomness to guess b in the Oblivious experiment, it also has a non-negligible advantage in the IND-CPA experiment, which violates the assumption of message indistinguishability under chosen plaintext.
Finally, it is worth discussing the correctness of our privacy-friendly scheduling protocol: at the end of the scheduling procedure, it results S a (P i ) = Π vi ∈S i Γ Π vi • S a (γ vi ).Therefore, the overall energy usage reconstructed by means of the secret recovery procedure would be Since the value of Γ Π vi is set based on the result of the comparison protocol presented in [30], which has been therein proved to be correct, it follows that the output of the privacy-friendly scheduling algorithm is the same that would be obtained by operating directly on the plaintexts.

Benchmark ILP Model
We now introduce an Integer Linear Programming formulation which finds the optimal battery charge/discharge schedule.Such model should be considered as an ideal benchmark, since it relies on future knowledge about the periods in which EVs are plugged in, the current battery level and the amount of energy to be refilled, which would impose great limitations to its applicability to a real scenario (e.g., by requiring the users to declare in advance their traveling periods for the next day).

Sets
• P: set of recharge periods of the EVs (each vehicle v ∈ V has at least one recharge period within the optimization time span) • I: set of discretized epochs within the optimization time span Parameters • e p : maximum amount of power to be provided during the recharge period p (given by the difference between the battery maximum capacity and the initial battery charge level l v of the Vehicle v having the p-th recharge period) • a p : minimum amount of power to be provided during the recharge period p (a v = t v − l v if l v < t v , 0 otherwise) • r p : battery charge rate (per epoch) of the vehicle v having the p-th recharge period • k pi : it is 1 if epoch i belongs to the p-th recharge period, 0 otherwise • g i : maximum grid power supply (if p∈P The objective function maximizes the minimum ratio of the power requested by the aggregator to recharge the vehicles' batteries (or obtained by the aggregator by discharging them) to the power requested/offered by the grid.Constraints 2 and 3 limit the minimum/maximum amount of energy to be charged during each recharge period, while Constraints 4 and 5 avoid recharging batteries with more energy than the grid can provide or injecting excessive energy into the grid by discharging batteries during the periods of shortages.Finally, Constraints 6 set δ to the minimum normalized amount of scheduled power absorption/supply.

Performance Evaluation
We now evaluate our proposed scheduling mechanism in terms of computational complexity, message number and length, and compare its performance to the optimal results obtained by means of the ILP formulation presented in Section 6.Our implementation assumes a 256 bit-long modulo q for the SSS scheme and IDs/pseudonyms of 32 bits.The hybrid cryptosystem used for the share encryption is the RSA-KEM Key Transport Algorithm [38], which uses the RSA public key cryptosystem with modulo n of 1024 bits, the KDF2 key derivation function (based on SHA-1) and the AES-Wrap-128 key-wrapping scheme to communicate an ephemeral 128-bit-long key used to encrypt the samples V (i) by means of the standard AES scheme operating in Chipher Block Chaining mode (CBC).The scheduling output destined to the EVs is assumed to be encrypted with the standard RSA public key cryptosystem.

Computational Complexity
We start evaluating the asymptotic number of incoming/outgoing messages at each node.As showed in Table 2, the number of messages exchanged by the Vehicles exhibits a linear dependence on the number of shares |A|, while for the Anonymizer it depends linearly on both |A| and the number of EVs |V|.Finally, for the Aggregators the dependence is linear in |V| and superlinear in |A| (due to the collaborative comparison procedure discussed in [30]).Table 3 reports the operations performed by each node for the scheduling of a single battery recharge.The computational cost of each operation is detailed in Table 4 based on [28,30].The most demanding procedure is the share collaborative comparison performed by the Aggregators in multiple rounds depending on |A|.Finally, it is worth discussing the message length: each service request generated by an EV and forwarded by the Anonymizer consists on a 32 bit-long ID/pseudonym and a RSA-KEM encrypted message of 2624 bits, for a total length of 2656 bits.During the share comparison procedure, each share is in turn divided in |A| shares and redistributed among the Aggregators.In a worst case scenario in which all the EVs have low priority, each Aggregator sends/receives at most |V| • |A| • (|A| − 1) messages of 256 bits each (see [30] for further details) per comparison round (note that the number of rounds exhibits a logaritmic dependency on |A|).Ultimately, the scheduling output for each EV Γ vi is encrypted and forwarded to the Anonymizer together with the respective pseudonym, thus requiring |V| messages of 32 + 1024 = 1056 bits each.In a scenario with |A| = 4 and |V| = 1000 the throughput per scheduling epoch experienced by each Aggregator would be approximately (worst case) 8.6 Mbit/epoch, of which 4.9 Mbit/epoch are due to the inter-Aggregators communications and 3.7 Mbit/epoch are due to the EVs-to-Aggregators communications).It follows that the inter-Aggregators communication burden, which would be avoided in case of a single scheduling entity directly accessing the raw data generated by the EVs, is an additional communication cost required by the privacy-preserving approach.Such throughput values are compatible with state-of-the art communication technologies for V2G infrastructures.

Numerical Results
We compare the scheduling results obtained by our proposed protocol to the ILP benchmark model.We consider a scenario of a residential area of 1000 houses with peak power consumption of 3 kW [39], a windfarm (peak production of 8 MW [40]) and 1000 EVs (battery maximum capacity between 12.75 and 17 kWh, charging rate of 0.75 or 1 kW [14], minimum recharge threshold between 1.5 and 2 kWh).The behavior of each Vehicle v is modeled by means of a discrete random walk between 0 and 1 with state transition probability of 0.25.For each epoch, state 0 is mapped to k vi = 0, while state 1 sets k vi = r v .
Note that, since the ILP model does not take into account the energy price, such price is assumed to be constant within the whole optimization time span and does not play any role in the scheduling strategy in both the optimal and the privacy-friendly approaches.
Results averaged over 365 days (each day is divided in 96 epochs of 15 min duration, see Figure 3 for an example of daily schedule) show that the running time of the privacy-friendly approach is significantly lower than the one of the ILP model (seconds vs. hours, see Table 5).The minimum power consumption-to-power availability ratio provided by our algorithm is on average lower than the optimal one, which is due to the fact that, in case g i is negative, the privacy-friendly approach always schedules the recharge of high priority EVs, while the ILP model might postpone it according to the knowledge of their future traveing behavior.However, the degree of similarity (expressed in terms of Mean Square Error) between the curve of the grid power supply/request and the curve of the scheduled energy usage is not significantly worsened w.r.t. the optimal solution provided by the ILP formulation (only 0.2% increase, as reported in Table 5).

Conclusions
This paper proposes a privacy-preserving Vehicle-to-Grid communication infrastructure which schedules the battery charge/discharge times of electric vehicles without exposing the users' traveling habits, the current battery level nor the amount of refilled energy.Performance in terms of computational times and gap w.r.t. the optimal schedule obtained by means of an Integer Linear Program shows the viability of the proposed privacy-friendly approach, which provides results not significantly dissimilar w.r.t. the optimal ones.

Figure 2 .
Figure 2. Data exchange during the battery charge/discharge scheduling procedure.
the Anonymizer, where ID v is the identity of Vehicle v. Upon reception of the |A| messages sent by v, the Anonymizer replaces ID v with a random pseudonym Π vi , which is refreshed at every epoch, and forwards each pair Π vi , E K a e (b vi ||S a (γ vi )||K vi e ) to the respective Aggregator a.

Algorithm 1 1 :
The Privacy-Friendly Scheduling Algorithm On input of the epoch number i and of Π vi , b vi compare P i and g i 11:

1
{v is discharged to inject energy from the battery to the grid} 19:

else 20 :
collaboratively compare P i and g i 21:

Definition 1 .
The scheduling infrastructure provides blindness if during any set of epochs I a collusion of Ã Aggregators of cardinality c < |A| cannot relate b vi to the identity ID v of the Vehicle which generated it during any set of epochs I and obtains no additional information with respect to what is implied by the knowledge of (S a (γ vi ), b vi ) for each Aggregator a ∈ Ã.

1 ,
and communicates them to C. (2) C selects a random bit b = {0, 1}, generates the pseudonyms Π vi and the shares S a (γ vi ) ∀i ∈ I, a ∈ Ã, v ∈ V h b , V l b and communicates them to D. (3) D outputs a bit b .
A and the encrypted scheduling output E K v b i e (o Π v b i ), and communicates them to D. (3) D outputs a bit b .

Figure 3 .
Figure 3.Comparison of optimal vs. privacy-friendly scheduled battery charges/discharges.Positive values indicate that the grid provides power to recharge the EVs' batteries, while negative values indicate that power provided by the batteries is injected into the grid.

Table 1 .
List of main symbols.
i set of the pseudonyms Π vi at epoch i Γ vi scheduled battery charge/discharge indicator of Vehicle v at epoch i if the battery of the vehicle associated to the p-th recharge period is recharged(discharged) at epoch i, 0 otherwise • δ: indicates the minimum ratio of the power utilized (provided) for battery recharge (discharge), to the power supplied/requested by the grid i∈I k pi r p x pi ≥ a p ∀p ∈ P

Table 2 .
Asymptotic complexity in terms of incoming/outgoing messages per node for the scheduling of a single service request.Aggregator O(|A| 2 log 2 |A| • |V|) O(|A| 2 log 2 |A| • |V|)

Table 3 .
Computational load at each node for the scheduling of a single service request.
c (q) + c a (q) + C RSA e (n) (worst case) see Table4for the cost details.

Table 4 .
Detail of operation costs.