PACKET IDENTIFICATION
A method for identifying packets received at a wireless communication device capable of operating according to a wireless communications protocol and capable of communicating in a network, the method comprising: receiving a first packet; processing, in accordance with a predetermined algorithm, a portion of the first packet in dependence on a first network key associated with a first network; and determining if a result of said processing is successful or unsuccessful and, if successful, identifying the first packet as being addressed to devices in the first network.
1 . A method for identifying packets received at a wireless communication device capable of operating according to a wireless communications protocol and capable of communicating in a network, the method comprising:
receiving a first packet;
processing, in accordance with a predetermined algorithm, a portion of the first packet in dependence on a first network key associated with a first network; and
determining if a result of said processing is successful or unsuccessful and, if successful, identifying the first packet as being addressed to devices in the first network.
2 . A method as claimed in claim 1 , the first packet further comprising an authentication code related, according to the predetermined algorithm, to the portion and the first network key, said determination being dependent on the authentication code.
3 . A method as claimed in claim 1 , said processing step comprising calculating, from the portion and first network key and using the predetermined algorithm, a value, and said determining step comprising comparing said calculated value with the or an authentication code and, if said calculated value and the authentication code match, determining that the result of the processing is successful.
4 . A method as claimed in claim 1 , said processing step comprising decrypting the portion in accordance with the predetermined algorithm and in dependence on the first network key, and said determining step comprising analysing the decrypted portion so as to determine if the portion is decipherable and, if so, determining that the result of the processing is successful, the predetermined algorithm being a decryption algorithm.
5 . A method as claimed in claim 1 , said predetermined algorithm being a hash-based message authentication code algorithm.
6 . A method as claimed in claim 1 , the portion being encrypted using the first network key.
7 . A method as claimed in claim 1 , the portion being a payload of the first packet.
8 . A method as claimed in claim 1 , the first packet being a transport layer packet and the portion comprising a message for processing at a higher layer.
9 . A method as claimed in 8 , in response to identifying the packet as being addressed to devices in the first network, processing the message at a layer above the transport layer.
10 . A method as claimed in claim 1 , further comprising: in response to identifying the packet as being addressed to devices in the first network, forming a second packet comprising a portion that is the same as the portion of the first packet and broadcasting the second packet.
11 . A method as claimed in claim 1 , if the result of the processing is successful, identifying that the first packet was sent from a device belonging to the first network.
12 . A method as claimed in claim 1 , in response to determining that the result of the processing is unsuccessful, identifying the first packet as being addressed to devices in a network other than the first network.
13 . A method as claimed in claim 1 , further comprising receiving and storing the first network key and a second network key associated with a second network that is different to the first network.
14 . A method as claimed in claim 13 , further comprising:
processing, in accordance with the predetermined algorithm, the portion of the first packet in dependence on the second network key; and
determining if a result of said processing using the second network key is successful or unsuccessful and, if successful, identifying the first packet as being addressed to devices in the second network.
15 . A method as claimed claim 1 , the first packet not having an address field for identifying a network.
16 . A method as claimed in claim 1 , the first network being a mesh network and/or an ad-hoc network.
17 . A method as claimed in claim 1 , the wireless communications protocol defining a broadcast packet type, the method comprising receiving a broadcast packet of the broadcast packet type, the broadcast packet comprising the first packet.
18 . A method as claimed in claim 1 , the wireless communications protocol being Bluetooth low energy.
19 . A method for forming a first packet at a wireless communication device capable of operating according to a wireless communications protocol, the method comprising: generating a message intended for a device in a first network; selecting a network key associated with the first network; calculating, in dependence on a predetermined algorithm and the message, an authentication code; and forming a first packet comprising the message and the authentication code.
20 . A wireless communication device capable of operating according to a wireless communications protocol and capable of communicating in a network, the device comprising:
a transceiver configured receive a first packet; and
a processor configured to process, in accordance with a predetermined algorithm, a portion of the first packet in dependence on a first network key associated with a first network,
the processor being further configured to determine if a result of said processing is successful or unsuccessful and, if successful, identify the first packet as being addressed to devices in the first network.