IP Library Granted Patent US 10,348,732
Granted Patent B2
US 10,348,732 · App. 15/933,887 · Granted Jul 9, 2019

Anti-takeover systems and methods for network attached peripherals

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,348,732
App. No.
15/933,887
Granted
Jul 9, 2019
Kind
B2
Abstract

Methods, systems, and devices are described for the prevention of network peripheral takeover activity. Peripheral devices may implement an anti-takeover mechanism limiting the number of available device command classes when certain handshake and verification requirements are not met. Anti-takeover peripheral devices with protection enabled may be relocated within a controller network, or in certain cases, from one controller network to another controller network when certain conditions are met. That same device may be hobbled when removed from a controller network and may remain hobbled when connected to another network that fails to meet certain conditions. Unprotection and unhobbling of a device may occur through an algorithmic mechanism using values stored on the peripheral device and the controller device for one or more of anti-takeover code generation, anti-takeover code comparison, network identification value comparison, and manufacturer identification value comparison.

Claims (63)

1. An automated anti-takeover method, comprising:

establishing a data session between a peripheral device and a network;

receiving, at the peripheral device, a hint package and an anti-takeover code derived from a function seeded with a shared secret value, the hint package being received based at least in part on detection of a network inclusion event associated with the peripheral device;

storing, at the peripheral device, the hint package and the anti-takeover code;

determining whether the anti-takeover code matches a previously stored anti-takeover code; and

unhobbling the peripheral device based at least in part on determining whether the anti-takeover code matches the previously stored anti-takeover code.

2. The method of claim 1 , further comprising:

conducting a handshake between the peripheral device and the network before establishing the data session, wherein establishing the data session between the peripheral device and the network is based at least in part on conducting the handshake.

3. The method of claim 1 , wherein the shared secret value comprises an undiscoverable value shared by a plurality of controller devices on one or more related networks.

4. The method of claim 1 , further comprising:

retrieving the stored hint package; and

transmitting the hint package to a controller node during the unhobbling.

5. The method of claim 1 , further comprising:

detecting, by the peripheral device, a network exclusion event, wherein the network exclusion event comprises an absence of communication between the peripheral device and the network; and

hobbling the peripheral device based at least in part on detecting the network exclusion event.

6. The method of claim 1 , further comprising:

establishing a second data session between the peripheral device and a second network;

receiving, at the peripheral device, a second hint package and a second anti-takeover code different than the hint package and the anti-takeover code;

storing, at the peripheral device, the second hint package and the second anti-takeover code;

determining whether the second anti-takeover code matches the anti-takeover code; and

unhobbling the peripheral device based at least in part on determining whether the second anti-takeover code matches the anti-takeover code.

7. The method of claim 1 , wherein unhobbling the peripheral device comprises:

transmitting the hint package to a node associated with the network, the hint package comprising a network identification value, a shared secret version value, and a random value such as a series of randomly generated bytes.

8. The method of claim 1 , wherein the peripheral device comprises a sensor, a feature controller, a router, or a meter.

9. The method of claim 1 , wherein the data session is established via a wireless connection.

10. An apparatus for security and/or automation systems, comprising:

a processor;

memory in electronic communication with the processor; and

instructions stored in the memory, the instructions being executable by the processor to:

establish a data session between a peripheral device and a network;

receive, at the peripheral device, a hint package and an anti-takeover code derived from a function seeded with a shared secret value, the hint package being received based at least in part on detection of a network inclusion event associated with the peripheral device;

store, at the peripheral device, the hint package and the anti-takeover code;

determine whether the anti-takeover code matches a previously stored anti-takeover code; and

unhobble the peripheral device based at least in part on determining whether the anti-takeover code matches the previously stored anti-takeover code.

11. The apparatus of claim 10 , wherein the processor is further configured to:

conduct a handshake between the peripheral device and the network before establishing the data session, wherein establishing the data session between the peripheral device and the network is based at least in part on conducting the handshake.

12. The apparatus of claim 10 , wherein the shared secret value comprises an undiscoverable value shared by a plurality of controller devices on one or more related networks.

13. The apparatus of claim 10 , wherein the processor is further configured to:

retrieve the stored hint package; and

transmit the hint package to a controller node during the unhobbling.

14. The apparatus of claim 10 , wherein the processor is further configured to:

detect, by the peripheral device, a network exclusion event, wherein the network exclusion event comprises an absence of communication between the peripheral device and the network; and

hobble the peripheral device based at least in part on detecting the network exclusion event.

15. The apparatus of claim 10 , wherein the processor is further configured to:

establish a second data session between the peripheral device and a second network;

receive, at the peripheral device, a second hint package and a second anti-takeover code different than the hint package and the anti-takeover code;

store, at the peripheral device, the second hint package and the second anti-takeover code;

determine whether the second anti-takeover code matches the anti-takeover code; and

unhobble the peripheral device based at least in part on determining whether the second anti-takeover code matches the anti-takeover code.

16. The apparatus of claim 10 , wherein the processor is further configured to:

transmit the hint package to a node associated with the network, the hint package comprising a network identification value, a shared secret version value, and a random value such as a series of randomly generated bytes.

17. The apparatus of claim 10 , wherein the peripheral device comprises a sensor, a feature controller, a router, or a meter.

18. A non-transitory computer-readable medium storing computer-executable code, the code executable by a processor to:

establish a data session between a peripheral device and a network;

receive, at the peripheral device, a hint package and an anti-takeover code derived from a function seeded with a shared secret value, the hint package being received based at least in part on detection of a network inclusion event associated with the peripheral device;

store, at the peripheral device, the hint package and the anti-takeover code;

determine whether the anti-takeover code matches a previously stored anti-takeover code; and

unhobble the peripheral device based at least in part on determining whether the anti-takeover code matches the previously stored anti-takeover code.

19. The non-transitory computer-readable medium storing computer-executable code of claim 18 , wherein the code is executable by the processor to:

conduct a handshake between the peripheral device and the network before establishing the data session, wherein establishing the data session between the peripheral device and the network is based at least in part on conducting the handshake.

20. The non-transitory computer-readable medium storing computer-executable code of claim 18 , wherein the code is executable by the processor to:

retrieve the stored hint package; and

transmit the hint package to a controller node during the unhobbling.

Assignments (8)
AFTER-ACQUIRED INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 27, 2025
From: VIVINT LLC; SMART HOME PROS, INC.; VIVINT AMIGO, INC.
To: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS PRIORITY COLLATERAL TRUSTEE
Reel/Frame 070349/0816 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT REEL 049283, FRAME 0566 Recorded Nov 11, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VIVINT, INC.
Reel/Frame 069334/0137 →
RELEASE (REEL 047029/ FRAME 0304) Recorded Nov 1, 2024
From: BANK OF AMERICA, N.A.
To: VIVINT LLC (F/K/A VIVINT, INC.)
Reel/Frame 069289/0468 →
RELEASE OF SECURITY INTEREST Recorded Jul 12, 2021
From: BANK OF AMERICA, N.A.
To: VIVINT, INC.
Reel/Frame 056832/0824 →
SECURITY AGREEMENT Recorded May 23, 2019
From: VIVINT, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 049283/0566 →
SUPPL. NO. 2 SECURITY AGREEMENT Recorded Sep 6, 2018
From: VIVINT, INC.
To: BANK OF AMERICA N.A.
Reel/Frame 047024/0048 →
SECURITY AGREEMENT Recorded Sep 6, 2018
From: VIVINT, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 047029/0304 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 23, 2018
From: WARREN, JEREMY B.
To: VIVINT, INC.
Reel/Frame 045327/0561 →