Message formatting, authentication, and error detection in home control systems
AssigneeMicrosoft Corporation
InventorsGilad Odinak, Nigel S. Keam
Life of this patent
Estimating the term…
Abstract
In a system for communicating over electrical wiring in a house or other building, components are grouped and send messages to each other using a unique group identifier code associated with the group. Each message includes the group identifier code, message data, and a message authentication code (MAC) that is calculated for each message. A receiving component disregards any message whose group identifier code is not the same as that of the receiving component. MACs are calculated using a shared key value and a one-way hash function. The shared key value, in turn, is taken from an ordered sequence of key values that is defined for each component group based on a counter value.
Claims17
A home control system that uses electrical power lines for communications, comprising:
- a plurality of components that are connected for communications among themselves through the electrical power lines, wherein the communications among the plurality of components is established through a single communication protocol;
- a sending one of the components being configured to send messages over the electrical power lines in accordance with acts comprising:
- calculating a first message authentication code based on a predefined one-way function of data from a message and of a key value that is shared between sending and receiving components;
- including the message authentication code in the message;
- sending the message over the electrical power lines;
- a receiving one of the components being configured to receive messages in accordance with acts comprising:
- receiving a message over the electrical power lines;
- calculating a second message authentication code based on the predefined one-way function of the data from the message and of the current shared key value;
- concluding that the message is either not authentic or contains a data error if the first and second message authentication codes do not match.
An electrical component that is connected for communications with other electrical components of a particular group using electrical power lines in a building, comprising:
- a processor;
- a transmitter that is responsive to the processor to send data using the electrical power lines;
- the processor being programmed to compose and send messages in conjunction with the transmitter, each message including a message authentication code based on a predefined one-way function of data from the message and of a key value that is shared between a plurality of components;
- wherein the communications with other electrical components of the particular group is established though a single communication protocol.
An electrical component that is connected for communications with other electrical components of a particular group using electrical power lines in a building, comprising:
- a processor;
- a receiver that functions in conjunction with the processor to receive messages from other electrical components using the electrical power lines, such messages including first message authentication codes;
- the processor being programmed to calculate a second message authentication code for each message based on a predefined one-way function of data from the message and of a key value that is shared between a plurality of components;
- the processor being further programmed to compare the first and second message authentication codes to authenticate each message;
- wherein the communications with other electrical components of the particular group is established through a single communication protocol.
A method of communicating electronically between a plurality of electrical components using electrical power lines in a building, the method comprising:
- designating groups of the electrical components that communicate among themselves;
- sharing a key value between components of a particular group;
- calculating a first message authentication code based on a predefined one-way function of data from a message and of the key value that is shared by components of the particular group;
- including the message authentication code in the message;
- sending the message over the electrical power lines;
- receiving the message;
- calculating a second message authentication code based on the predefined one-way function of the data from the message and of the shared key value;
- and
- comparing the first and second message authentication codes to authenticate each message;
- wherein the electronic communication between the electrical components is established through a single communication protocol.
Dependencies are inferred from the claim text.