The present invention relates to energy management systems and, more particularly, to privacy and storage of customer data within energy management systems.
Energy management systems operated by public utilities collect customer data from home energy management system (HEMS) devices and smart meters at customer premises. The public utilities apply the customer data to various purposes, such as determining demand response (DR) and time-of-use incentives and controls and diagnosing power outages.
Many customers are unhappy with the steady leaking of their information to public utilities. Concerns range from general loss of privacy to the potential for unwanted use or misuse of customer data, such as by a burglar who might acquire the customer data and infer from low electricity use that the customer is away from home, a law enforcement agency that might infer from electricity usage patterns that the customer is engaged in criminal activity, or a health or insurance company that might infer from high nighttime electricity use that the customer has a sleep disorder.
One way to address these customer concerns is to accumulate customer data on the HEMS device or smart meter and transmit the customer data only after a substantial delay, and in decimated form. The access delay reduces the potential for certain abuses of the customer data (e.g., by a burglar) and decimation reduces the potential for all types of abuses. However, the delay-and-decimate approach requires a HEMS device or smart meter with large storage capacity and processing power.
The present invention provides access-controlled customer data offloading using a blind public utility-managed device. A customer-managed device, such as a HEMS device or a smart meter, sorts collected customer data by data type and encrypts the customer data using per-type, per-period encryption keys. The customer-managed device transmits the encrypted customer data to the utility-managed device whereon the encrypted customer data are stored. The customer-managed device further encrypts the per-type, per-period keys using a master encryption key and transmits the encrypted per-type, per-period keys to the utility-managed device whereon the encrypted per-type, per-period keys are stored. When the current period ends (e.g., each day at midnight), the customer-managed device generates new per-type, per-period encryption keys and continues the above customer data offloading using the new per-type, per-period keys. As a result of this continual encrypt-and-offload process, the customer offloads storage of customer data to the public utility without relinquishing control over access to the customer data. Moreover, the fact that the customer data are encrypted in small “chunks” by data type and period allows the customer to access and expose the customer data in highly granular fashion. For example, once electric car data are thirty days old, the customer-managed device can reacquire from the utility-managed device the encrypted electric car key in use thirty days ago, decrypt the electric car key using the master key, and transmit the decrypted electric car key to the utility-managed device, exposing the 30-day old electric car data to the public utility without exposing any of the customer's other data. Furthermore, the customer can replace the customer-managed device without loss of historical customer data by simply transferring the master key to the replacement customer-managed device.
In one aspect of the invention, a customer data access control method comprises the steps of acquiring by a customer-managed device customer data; encrypting by the customer-managed device the customer data using first per-type, per-period encryption keys; and transmitting by the customer-managed device to a public utility-managed device the encrypted customer data.
In some embodiments, the method further comprises the steps of encrypting by the customer-managed device the first per-type, per-period keys using a master encryption key; and transmitting by the customer-managed device to the utility-managed device the encrypted first per-type, per-period keys.
In some embodiments, the method further comprises the steps of reacquiring by the customer-managed device from the utility-managed device one or more of the encrypted first per-type, per-period keys used to encrypt first data within the encrypted customer data; decrypting by the customer-managed device the reacquired keys using the master key; and transmitting by the customer-managed device to the utility-managed device the decrypted keys.
In some embodiments, the method further comprises the steps of reacquiring by the customer-managed device from the utility-managed device encrypted first data within the encrypted customer data; reacquiring by the customer-managed device from the utility-managed device one or more of the encrypted first per-type, per-period keys used to encrypt the first data; decrypting by the customer-managed device the reacquired keys using the master key; and decrypting by the customer-managed device the encrypted first data using the decrypted keys.
In some embodiments, the method further comprises the steps of generating by the customer-managed device a summary of the decrypted first data; and transmitting by the customer-managed device to the utility-managed device the summary.
In some embodiments, the method further comprises the steps of reacquiring by the customer-managed device from the utility-managed device one or more of the encrypted first per-type, per-period keys used to encrypt first data within the encrypted customer data; decrypting by the customer-managed device the reacquired keys using the master key; decrypting by the customer-managed device the first data using the reacquired keys; reencrypting by the customer-managed device the first data using a public key of a third party; and transmitting by the customer-managed device to a third party-managed device the reencrypted first data.
In some embodiments, the method further comprises the steps of encrypting by the customer-managed device the master key; transmitting by the customer-managed device to the utility-managed device the encrypted master key; reacquiring by a remote customer-managed device from the utility-managed device the encrypted master key; and decrypting by the remote customer-managed device the encrypted master key using a customer credential.
In some embodiments, the method further comprises the step of replacing by the customer-managed device the first per-type, per-period keys with second per-data type, per-period encryption keys in response to a transition from a first time period to a second time period.
In some embodiments, at least one of the first per-type, per-period keys encrypts usage data for a specific appliance over a specific time period.
In some embodiments, at least one of the first per-type, per-period keys encrypts customer data of a specific measurement type over a specific time period.
In some embodiments, at least one of the first per-type, per-period keys encrypts customer data for a specific area over a specific time period.
In another aspect of the invention, a customer-managed device comprises at least one local interface; at least one remote interface; at least one memory; and at least one processor communicatively coupled with the local interface, remote interface and memory, wherein the customer-managed device acquires customer data via the local interface, under control of the processor encrypts the customer data using first per-type, per-period encryption keys retrieved from the memory and transmits to a public utility-managed device the encrypted customer data via the remote interface.
These and other aspects of the invention will be better understood by reference to the following detailed description taken in conjunction with the drawings that are briefly described below. Of course, the invention is defined by the appended claims.
Appliances 202 and electricity meter 204 continually transmit locally formatted customer data to customer-managed device 200 via local interfaces 212, 214, respectively. By way of example, appliance 202 may transmit charge data for an electric car to customer-managed device 200 and electricity meter 204 may transmit meter readings for the customer premises to customer-managed device 200.
Customer I/O device 206 transmits configuration information to customer-managed device 200 via local interface 216. The customer defines through inputs on customer I/O device 206 data types and key periods. A data type may address, by way of example, a specific appliance, a specific area, a specific measurement type (e.g., watts, volts, power factor, temperature, etc.), or a specific sum or average of customer data. A key period may last, by way of example, a minute, an hour, a day, a week or a month. A customer who has little concern about data privacy may define a single data type and a key period of one month. In that case, customer-managed device 200 generates and uses one per-period encryption key to encrypt all customer data collected by customer-managed device 200 and changes the per-period key only once a month. On the other hand, a customer who has a great concern about data privacy may define dozens of data types and a key period of one hour. In that case, customer-managed device 200 generates and uses dozens of different per-period encryption keys to encrypt different types of customer data collected by customer-managed device 200 and changes these dozens of per-type, per-period keys on an hourly basis. The customer also defines through inputs on customer I/O device 206 time delays for exposing and/or providing summaries of different data types to the public utility and/or third parties. For example, the customer may define that electric car data be exposed to utility-managed device 142 after a 30-day delay and that a summary of lighting data be provided to utility-managed device 142 after a 90-day delay. Customer-managed device 200 under the control of processor 240 stores in memory 250 and applies data type, key period and time delay definitions and per-type, per-period encryption keys. Customer-managed device 200 under the control of processor 240 also store in memory a master encryption key. The per-type, per-period keys may be 128-bit keys and the master key may be a 2048 bit key, by way of example.
Next, customer-managed device 200 under the control of processor 240 encrypts the customer data for the current period by data type using the per-type encryption keys for the current period (310). The per-type keys for the current period are retrieved from memory 250 and are used to encrypt the customer data by data type.
Next, customer-managed device 200 sends the encrypted customer data for the current period to utility-managed device 142 via remote interface 220 (315), whereupon the encrypted customer data for the current period becomes stored on utility-managed device 142. Once receipt of the encrypted customer data has been acknowledged by utility-managed device 142, copies of the customer data may be removed from memory 250 or allowed to be overwritten in memory 250.
If by that point the key period defined by the customer through inputs on customer I/O device 206 has not expired (e.g., midnight has not yet arrived), there is more time for customer data acquisition and transfer within the current period and the method reverts to Step 305 for additional current-period customer data acquisition. If, however, the key period has expired (e.g., midnight has arrived), no more time remains for customer data acquisition and transfer within the current period. Accordingly, customer-managed device 200 under the control of processor 240 encrypts the per-type keys for the expired period using a master encryption key (320). The per-type keys for the expired period and the master key are retrieved from memory 250 and the master key is used to encrypt the per-type keys for the expired period.
Next, customer-managed device 200 sends the encrypted per-type keys for the expired period to utility-managed device 142 via remote interface 220 (325), whereupon the encrypted per-type keys for the expired period become stored on utility-managed device 142. Once receipt of the encrypted per-type keys have been acknowledged by utility-managed device 142, copies of the per-type keys may be removed or allowed to be freely overwritten from memory 250.
In some embodiments, customer-managed device 200 encrypts and sends the per-type keys to utility-managed device 142 at the beginning of their period of use rather than after expiration. That way, if customer-managed device 200 experiences a fatal crash during the period, encrypted customer data sent to utility-managed device 142 during the period before the crash can be recovered.
At that point, customer-managed device 200 under the control of processor 240 generates per-type encryption keys for the next period (330) and the method reverts to Step 305 for customer data acquisition in the next period.
In some embodiments, the encrypted customer data for the expired period are sent to and stored on a remote storage device other than utility-managed device 142 (e.g., cloud storage) that is accessible to utility-managed device 142.
In response to a data exposure event, customer-managed device 200 under the control of processor 240 reacquires from utility-managed device 142 via remote interface 220 the encrypted per-type, per-period encryption key or keys associated with the data exposure event (405). For example, if the data exposure event calls for exposing 30-day-old electric car usage data, customer-managed device 200 reacquires from utility-managed device 142 the encrypted electric car key that was used by customer-managed node 200 30 days ago to encrypt electric car data.
Next, customer-managed device 200 under the control of processor 240 decrypts the encrypted per-type, per-period encryption key or keys associated with the data exposure event using the master encryption key (410). The master key is retrieved from memory 250 and used to decrypt the per-type key or keys.
Next, customer-managed device 200 sends to utility-managed device 142 via remote interface 220 the decrypted per-type, per-period encryption key or keys associated with the data exposure event (415), whereupon the decrypted per-type, per-period key or keys associated with the data exposure event are available for use by utility-managed device 142 to decrypt and use the per-type, per-period customer data associated with the data exposure event. Where the encrypted customer data are stored on a remote storage device other than utility-managed device 142 (e.g., cloud storage), utility-managed device 142 may prevent the per-type, per-period key or keys from becoming further exposed by acquiring the customer data from the remote storage device in encrypted form and decrypting the customer data on utility-managed device 142.
Once receipt of the encrypted per-type key or keys associated with the data exposure event has been acknowledged by utility-managed device 142, all copies of these per-type, per-period keys are removed or allowed to be freely overwritten from memory 250.
Next, In response to a data summary event, customer-managed device 200 under the control of processor 240 reacquires via remote interface 220 the encrypted per-type, per-period customer data and per-type, per-period encryption key or keys associated with the data summary event (505). For example, if the data summary event calls for providing a summary of 90-day-old lighting data, customer-managed device 200 reacquires from utility-managed node 142 encrypted lighting data that was collected 90 days ago and the lighting key that was used by customer-managed node 200 90 days ago to encrypt the lighting data.
Next, customer-managed device 200 under the control of processor 240 decrypts the per-type, per-period encryption key or keys associated with the data summary event using the master encryption key (510). The master key is retrieved from memory 250 and used to decrypt the per-type key or keys.
Next, customer-managed device 200 under the control of processor 240 decrypts the per-type, per-period customer data associated with the data summary event using the decrypted per-type, per-period encryption key or keys associated with the data summary event (515).
Next, customer-managed device 200 under the control of processor 240 generates a summary of the per-type, per-period customer data (520). Contents of the summary may be selected by the customer through inputs on customer I/O system 206 and convey useful information to the public utility without divulging details that the customer regards as invasive of privacy.
Next, customer-managed device 200 sends to utility-managed device 142 via remote interface 220 the per-type, per-period summary (525), whereupon the summary is available for use by utility-managed device 142.
Once receipt of the summary has been acknowledged by utility-managed device 142, all copies of the per-type, per-period customer data and keys associated with the data summary event may be removed or allowed to be freely overwritten from memory 250.
Next, In response to a data exposure event, customer-managed device 200 under the control of processor 240 reacquires via remote interface 220 the encrypted per-type, per-period customer data and per-type, per-period encryption key or keys associated with the third party data exposure event (605). For example, if the data exposure event calls for providing a summary of 30-day old electric car data, customer-managed device 200 reacquires from utility-managed node 142 encrypted electric car data that was collected 30 days ago and the electric car key that was used by customer-managed node 200 30 days ago to encrypt the electric car data.
Next, customer-managed device 200 under the control of processor 240 decrypts the per-type, per-period encryption key or keys associated with the data exposure event using the master encryption key (610). The master key is retrieved from memory 250 and used to decrypt the per-type key or keys.
Next, customer-managed device 200 under the control of processor 240 decrypts the per-type, per-period customer data associated with the data exposure event using the decrypted per-type, per-period encryption key or keys associated with the data exposure event (615).
Next, customer-managed device 200 under the control of processor 240 reencrypts the per-type, per-period customer data associated with the data exposure event using the third party's public encryption key (620).
Next, customer-managed device 200 sends the reencrypted per-type, per-period customer data associated with the data exposure event to the device managed by the third party (625). Upon receipt, the third party-managed device decrypts the per-type, per-period customer data using the third party's private encryption key, whereupon the customer data are available for use by the third party.
In other embodiments, customer-managed device 200 encrypts the per-type, per-period customer data associated with a data exposure event with a symmetrical encryption key, encrypts the symmetrical key using the third party's public key, and transmits the encrypted customer data and symmetrical key to the device managed by the third party. Upon receipt, the third party-managed device decrypts the symmetrical key using the third party's private key and uses the symmetrical key to decrypt the per-type, per-period customer data, whereupon the customer data are available for use by the third party.
In still other embodiments, customer-managed device 200 sends the per-type, per-period customer data associated with a data exposure event to the device managed by the third party in unencrypted form.
In other embodiments, a customer credential other than a pass-phrase is invoked to encrypt and decrypt the master key.
In other embodiments, the customer I/O device sends the decrypted per-type, per-period keys to utility-managed device 142, which decrypts and returns to the remote customer I/O device the per-type, per-period customer data and then destroys the decrypted per-type, per-period keys.
In still other embodiments, the customer accesses his or her electricity usage data from a remote location by storing a copy of the master key on a Universal Serial Bus (USB) dongle and carrying the dongle with him or her.
In still other embodiments, the per-type, per-period keys are not stored on the utility-managed device. For example, the per-type, per-period keys may be stored on the customer-managed device and sent to the utility-managed device only when needed to decrypt specific customer data. Yet another approach could have the customer-managed device request specific encrypted customer data from the utility-managed device, decrypt the customer data and send the customer data back to the utility-managed device. In this approach, the per-type, per-period keys never leave the customer-managed device.
It will be appreciated by those of ordinary skill in the art that the invention can be embodied in other specific forms without departing from the spirit or essential character hereof. For example, while specific examples have been described in which the customer data relates to electricity usage, the customer data may address other parameters relevant to energy management, such as temperature, occupancy or natural gas usage. The present description is thus considered in all respects to be illustrative and not restrictive. The scope of the invention is indicated by the appended claims, and all changes that come with in the meaning and range of equivalents thereof are intended to be embraced therein.