280 likes | 411 Views
A Practical Smart Metering System Supporting Privacy Preserving Billing and Load Monitoring. Hsiao-Ying Lin National Chiao Tung University Joint work with Wen-Guey Tzeng , Shiuan-Tzuo Shen , Bao-Shuh P. Lin. Meter. Electricity transmission & distribution.
E N D
A Practical Smart Metering System Supporting Privacy Preserving Billing and Load Monitoring Hsiao-Ying LinNational Chiao Tung University Joint work with Wen-GueyTzeng, Shiuan-TzuoShen, Bao-Shuh P. Lin
Meter Electricity transmission & distribution Smart Grid =Intelligence + Automation + Power Grid Substation Massive electricity generator Resident area • Increase energy efficiency • Improve system reliability & quality Intra/Internet Grid operator Renewable energy generator Power flow Communication flow
Smart Grid Features • Features • Two-way power flows • Communication systems among electricity entities Smart Grid Application Advanced Meter Infrastructure Automatic Meter Reading
Meter & Meter Reading • Measurement of power consumption • Traditional: manually record per month • Smart meter: automatically record per minute ~ millisecond
Smart Grid Applications • Automatic billing • Support many price policies • Load monitoring • Monitor current state of smart grid Electricity Service Provider(ESP) Price information Power consumption Time Price Bill Load Monitoring Center(LMC) Power consumption
Example: Ontario Time-of-use Pricing • During Winter Midnight Off-Peak 6.5 ¢/kWh 7 P.M. A.M. 7 5 On-Peak 11.7 ¢/kWh Mid-Peak 10 ¢/kWh 11 Noon
Privacy Issue • Detailed meter readings reveal daily activities • When and what appliances are used Stove Burner Refrigerator Time(Min) Hart, G.W: Nonintrusive appliance load monitoring, IEEE Proceedings 1992
Privacy Preserving Automatic Billing • Trusted third party computes the bill • The grid operator • Homomorphic commitment + zero knowledge proof (ZKP) • Meter readings are committed • The bill is computed by the consumer • Only the bill is opened to ESP • ESP verifies correctness of the bill by using ZKP
Privacy Preserving Load Monitoring • Trusted third party aggregates the power consumption • Secret shares of 0 among meters • Need handling meter leaving and joining • Random noises on meter readings • LMC gets approximate sum of meter readings ELMC(reading1) ELMC(sum of readings) LMC TTP ELMC(reading2) sum of readings ELMC(reading3) Reading1+secret share1 LMC Reading2+secret share2 sum of readings Reading3+secret share3
Our Contribution • A smart metering system • Supporting automatic billing & load monitoring • Privacy preserving against service providers • Electricity service provider (ESP) • Load monitoring center (LMC) • Storage service provider • Using pseudo-random numbers & TPM • Without a trusted third party • Without mutual communication among meters
System Model Storage system Time … Electricity Service Provider (ESP) … H1M1 Load monitoring center (LMC) Area 1 … H2M2 … … Area 2 … Meter Meter readings display Barcode ID TPM module Area 2 Area 1
Meter Model • A meter has a trusted platform module • Power consumption is measured in Wh per 5 min • Present meter readings in integers
Arrange Encrypted Meter Readings Current time unit Current time window W (L time units) L = 4 H1M1 Area 1 H2M2 H3M3 H4M4 Area 2 H5 M5 H6M6 H7M7 H8M8 H9M9 Area 3
Requirements • Assume all entities are semi-honest • ESP can only query a meter for power consumption of aLcontinuous time units (each query) • LMC can only query meters for meter readingsat a time unit in a current time window W
Arrange Encrypted Meter Readings Current time unit L = 4 H1M1 ESP Area 1 H2M2 H3M3 H4M4 Area 2 H5 M5 H6M6 H7M7 H8M8 H9M9 Area 3 LMC
Main Idea • Encrypt meter readings: • Let ESP know Power consumption of Meter 1 during t1to t4
Main Idea • Encrypt meter readings: • Service providers interact with meters • ESP queries a meter for a sum of random numbers spanning over aL time units (horizontal block) • LMC queries a set of meters for noised random numbers at a time unit in current time window W (vertical block) A meter has to remember all used random numbers
Arranging Random Numbers of a Meter • TPM generates random numbers • Driver computes random numbers L FIFO memory slots … … …
Construction • System parameter: A large number p • Meter Initialization • Pseudorandom number generator g • Hash functions h and h’ Master key ki =h’(si||SNi) Mi Seed si SNi g(ki,t2) g(ki,t1) g(ki,tL-1) L FIFO memory slots
Storage of meter readings • At time unit tj • Encrypt current reading d by using current r and store c • Generate a new R: • Compute a new r from R and store it in a memory slot ri,j+1 ri,j ri,j+L-2 ri,j+L-1 ri,j+1 ri,j+L ri,j+L-2 ri,j+L-1
Supporting Automatic Billing • ESP accesses the storage system • ESP queries Mi for L continuous time units • Mi returns Ri,jwhere • ESP computes the power consumption • ESP can query aL continuous time units for any integer a>0 H1M1 Area 1
Privacy Requirement • We consider honest-but-curious ESP • ESP cannot get individual meter readings of a household • We prove that ESP cannot distinguish two sets of meter readings which have the same sum • The proof relies on pseudorandom number generator g
Supporting Load Monitoring • LMC accesses the storage system • W is the current time window containing L time units • LMC queries meters in an area for data in time unit tj in W A meter cannot directly return the random number r
Supporting Load Monitoring • A meter returns [random number + noise] • Normal distribution • Select a random noise according to • Read the random number from the FIFO memory slot • Compute • LMC computes [meter reading – noise] Prevent overflowing random number + noise
Correctness & Privacy • LMC gets an approximate sum of m meter readings • Real sum • Define error ratio • By Chebyshev inequality • LMC gets only an approximate value Average of meter reading per time unit Tradeoff : correctness and privacy A smaller a better approximate
Performance Analysis • |p|=64, a time unit is 5 min • Commercial TPM chip • 1024-bit RSA signature: 100ms • Assumption • 1024-bit random number generation:100ms • 64-bit random number is about 7ms • 64-bit modular addition: 7ms Computation can be done in a time unit
Summary • Design a smart metering system • Using external storage service • Supporting privacy preserving billing & load monitoring • W/O a trusted third party and heavy crypto-operation
Future Work • Consider integrity of meter readings • Evaluate performance by prototype systems • Eliminate interactions between meters & providers • Consider a bidirectional smart meter model