Electricity meter and system hardened against attack vectors
An electricity meter and electricity system or grid that is hardened against attack vectors is described, and provided in part by automated multiple-factor authentication over multiple communication networks. In an example, a utility company may control an advanced metering infrastructure (AMI) network to provide internal communications. Metering devices may utilize customer's Wi-Fi to gain access to the internet, allowing electricity consumption data to be transmitted over the internet. Multiple authentication factors are used to prevent a bad actor from impersonating the metering device or cloud server. In an example, each metering device determines a secret, and sends the secret over the AMI network to a utility company server, and which relays the secret to the cloud server. The cloud server uses the secret to establish trust with metering devices. Additionally, the metering devices and the cloud server have signed certificates, which are used in additional authentication processes.
1 . A method by which a metering device may establish a secure communications connection, comprising:
generating, by operation of the metering device, a random identification (ID) of the metering device, and a secret, wherein the random ID is selected to be different from a real ID of the metering device;
transmitting, by operation of the metering device, to a headend device, the random ID and the secret, wherein the transmitting is performed at least in part over a private network, wherein the random ID is sent to the headend device for use in a mapping process performed by the headend device that associates random IDs of metering devices with respective real IDs of the metering devices, and wherein the private network comprises an Advanced Metering Infrastructure (AMI) network;
receiving, at the metering device, a first certificate from a cloud server;
validating the first certificate, by operation of the metering device, wherein the validating results in a first authentication factor;
sending, from the metering device to the cloud server, a second certificate associated with a second authentication factor;
sending, by operation of the metering device, a challenge request to the cloud server;
receiving, at the metering device and from the cloud server, a challenge response comprising information based on the secret from the cloud server connected to the internet;
validating, by operation of the metering device, that the cloud server had possession of the secret, wherein the validating results in a third authentication factor; and
responsive to success of the first, second, and third authentication factors, transmitting data generated by the metering device to the cloud server, wherein the transmitting includes the random ID of the metering device.
2 . The method of claim 1 , wherein the challenge response comprises:
a hash of a time value concatenated to the secret; and
the time value in cleartext.
3 . The method of claim 1 , wherein the private network is used to transmit data used in at least one authentication factor, and wherein transmitting the data generated by the metering device is performed using the internet.
4 . The method of claim 1 , wherein the headend device of the private network performs actions comprising:
receiving from the metering device, by operation of the headend device, a serial number of the metering device, the random ID of the metering device, and the secret, wherein the receiving is from the private network; and
sending to the cloud server, by operation of the headend device, the serial number of the metering device, the random ID, and the secret, wherein the sending is performed over the internet.
5 . The method of claim 1 , wherein the cloud server connected to the internet performs actions comprising:
receiving, over the internet from the headend device, a serial number of the metering device, the random ID of the metering device, and the secret;
storing the serial number of the metering device, the random ID of the metering device, and the secret;
receiving, over the internet, the second certificate;
validating the second certificate, wherein the validating performs the second authentication factor;
receiving, over the internet, the challenge request;
sending the challenge response; and
receiving the data generated by the metering device.
6 . One or more non-transitory computer-readable media storing computer-executable instructions that, when executed by one or more processors, configure a metering device to perform actions comprising:
generating, by operation of the metering device, a random identification (ID) of the metering device, and a secret, wherein the random ID is selected to be different from a real ID of the metering device;
transmitting, by operation of the metering device, to a headend device, the random ID and the secret, wherein the transmitting is performed at least in part over a private network to an AMI headend device, wherein the random ID is sent for use in a mapping process performed by a cloud server that associates random IDs of metering devices with respective real IDs of the metering devices, and wherein the private network comprises an Advanced Metering Infrastructure (AMI) network;
receiving, at the metering device, a first certificate from the cloud server;
validating the first certificate, by operation of the metering device, wherein the validating results in a first authentication factor;
sending, from the metering device to the cloud server, a second certificate associated with a second authentication factor;
sending, by operation of the metering device, a challenge request to the cloud server;
receiving, at the metering device and from the cloud server, a challenge response comprising information based on the secret from the cloud server connected to the internet;
validating, by operation of the metering device, that the cloud server had possession of the secret, wherein the validating results in a third authentication factor; and
responsive to success of the first, second, and third authentication factors, transmitting data generated by the metering device to the cloud server, wherein the transmitting includes the random ID of the metering device.
7 . The one or more non-transitory computer-readable media of claim 6 , wherein receiving the challenge response comprises:
receiving a hash of a string that is a time value concatenated to the secret.
8 . The one or more non-transitory computer-readable media of claim 6 , wherein the private network comprises an Advanced Metering Infrastructure (AMI) network.
9 . The one or more non-transitory computer-readable media of claim 6 , wherein the private network is used to transmit data used in at least one authentication factor, and wherein transmitting the data generated by the metering device is performed using the internet.
10 . A metering device, comprising:
a processor; and
a memory device in communication with the processor,
wherein the memory device comprises non-transitory processor-readable and processor-executable instructions that, when executed by the processor perform actions comprising:
generating a random identification (ID) of the metering device and a secret, wherein the random ID is selected to be different from a real ID of the metering device;
transmitting to a headend device, the random ID and the secret, wherein the transmitting is performed at least in part over a private network to an AMI headend device, wherein the random ID is sent to a headend device for use in a mapping process performed by the headend device that associates random IDs of metering devices with respective real IDs of the metering devices, and wherein the private network comprises an Advanced Metering Infrastructure (AMI) network;
receiving a first certificate from a cloud server;
validating the first certificate wherein the validating results in a first authentication factor;
sending, from the metering device to the cloud server, a second certificate associated with a second authentication factor;
sending a challenge request to the cloud server;
receiving, at the metering device and from the cloud server, a challenge response comprising information based on the secret from the cloud server connected to the internet;
validating that the cloud server had possession of the secret, wherein the validating results in a third authentication factor; and
responsive to success of the first, second, and third authentication factors, transmitting data generated by the metering device to the cloud server, wherein the transmitting includes the random ID of the metering device.
11 . The metering device of claim 10 , wherein receiving the challenge response comprises:
receiving a hash of a string that is a time value concatenated to the secret.
12 . The metering device of claim 10 , wherein the private network comprises an Advanced Metering Infrastructure (AMI) network.