IP Library Granted Patent US 8,527,613
Granted Patent B2
US 8,527,613 · App. 12/693,654 · Granted Sep 3, 2013

Provisioned firmware updates using object identifiers

Inventors: Michael William Malone (Boulder, CO); Yoong-Goog Cho (Fort Collins, CO); Thad Smith (Boulder, CO); Ryan Milbrandt (Lakewood, CO)
Assignee: Assa Abloy AB
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 8,527,613
App. No.
12/693,654
Granted
Sep 3, 2013
Kind
B2
Abstract

Methods, devices, and systems are provided for remotely updating provisioning data in devices or a population of devices. An update message is generated that includes an Object Identifier (OID) that uniquely identifies eligible devices or components for the provisioning data update. If an eligible device receives the update message, then the new provisioning data is loaded on the device, thereby replacing the old provisioning data on the device.

Claims (52)

1. A method, comprising:

receiving, from a requestor, an update request;

generating an update file that includes provisioning data as well as an object identifier which identifies an object authorized to receive the provisioning data, wherein the object identifier comprises at least five bytes, wherein a first of the at least five bytes uniquely defines an entity associated with the object authorized to receive the provisioning data update, wherein a second of the at least five bytes uniquely defines a subclass of device associated with the entity, wherein a third of the at least five bytes uniquely defines a platform associated with the device, wherein a fourth of the at least five bytes uniquely defines a behavior associated with the platform, and wherein a fifth of the at least five bytes uniquely defines a version associated with the behavior; and

transmitting the update file to the requestor.

2. The method of claim 1 , wherein the object authorized to receive the provisioning data update comprises a particular device, platform, behavior, and version and wherein the object identifier comprises an identifier for the particular device, platform, behavior, and version.

3. The method of claim 1 , wherein the object authorized to receive the provisioning data update comprises a particular customer and wherein the object identifier comprises an identifier for the particular customer.

4. The method of claim 1 , wherein the provisioning data comprises a firmware image.

5. The method of claim 1 , wherein provisioning data comprises configuration data.

6. The method of claim 1 , wherein provisioning data comprises security data.

7. The method of claim 1 , wherein the provisioning data is adapted to be stored in memory of the object authorized to receive the provisioning data update.

8. The method of claim 7 , wherein the memory comprises at least one of flash memory, Programmable ROM (PROM), and Electronically Erasable PROM (EEPROM).

9. The method of claim 1 , wherein the update file comprises a Simple Network Management Protocol (SNMP) file and wherein transmitting the update file comprises sending the SNMP file to the requestor via a communication network that utilizes the Internet Protocol.

10. The method of claim 1 , wherein the first byte defines the object authorized to receive the provisioning data update with a first level of specificity and wherein each subsequent byte defines the object authorized to receive the provisioning data update with a greater level of specificity than the previous byte and a greater level of specificity than the first level.

11. The method of claim 1 , wherein the update file is carried to the object authorized to receive the provisioning data update via a wired communication link.

12. The method of claim 1 , wherein the update file is carried to the object authorized to receive the provisioning data update via a wireless communication link.

13. The method of claim 1 , wherein at least part of the update file is physically carried to the object authorized to receive the provisioning data update via a portable memory device.

14. The method of claim 1 , further comprising:

receiving the update file at an electronic device;

extracting the object identifier from the update file; and

determining whether the electronic device is allowed to receive the provisioning data update based on a comparison of the object identifier with an object identifier associated with the electronic device.

15. The method of claim 14 , further comprising:

determining that the electronic device comprises an object authorized to receive the provisioning data update;

extracting an updated provisioning data from the update file;

erasing at least a portion of an old provisioning data from memory of the electronic device; and

writing the updated provisioning data to memory of the electronic device.

16. A method, comprising:

receiving an update file;

extracting an object identifier from the update file, wherein the object identifier comprises at least five bytes, wherein a first of the at least five bytes uniquely defines an entity associated with the object authorized to receive the provisioning data update, wherein a second of the at least five bytes uniquely defines a subclass of device associated with the entity, wherein a third of the at least five bytes uniquely defines a platform associated with the device, wherein a fourth of the at least five bytes uniquely defines a behavior associated with the platform, and wherein a fifth of the at least five bytes uniquely defines a version associated with the behavior; and

determining whether an object is allowed to receive a provisioning data update based on the object identifier.

17. The method of claim 16 , further comprising:

determining that the electronic device comprises an object authorized to receive the provisioning data update;

extracting an updated provisioning data from the update file;

erasing at least a portion of an old provisioning data from memory of the electronic device; and

writing the updated provisioning data to memory of the electronic device.

18. The method of claim 16 , wherein the provisioning data comprises a firmware image.

19. The method of claim 16 , wherein provisioning data comprises configuration data.

20. The method of claim 16 , wherein provisioning data comprises security data.

21. An electronic device, comprising:

memory that stores at least one version of provisioning data and an object identifier, wherein the object identifier is used to determine whether the at least one version of provisioning data can be replaced with a new version of provisioning data based on a comparison of the object identifier to an object identifier associated with the new version of provisioning data, wherein the object identifier further comprises at least five bytes, wherein a first of the at least five bytes uniquely defines an entity associated with the object authorized to receive the provisioning data update, wherein a second of the at least five bytes uniquely defines a subclass of device associated with the entity, wherein a third of the at least five bytes uniquely defines a platform associated with the device, wherein a fourth of the at least five bytes uniquely defines a behavior associated with the platform, and wherein a fifth of the at least five bytes uniquely defines a version associated with the behavior.

22. The device of claim 21 , wherein the provisioning data comprises a firmware image.

23. The device of claim 21 , wherein provisioning data comprises configuration data.

24. The device of claim 21 , wherein provisioning data comprises security data.

25. A non-transitory computer-readable medium, comprising:

provisioning data; and

an object identifier used to determine whether the provisioning data is allowed to be boot loaded, wherein the object identifier further comprises at least five bytes, wherein a first of the at least five bytes uniquely defines an entity associated with the object authorized to receive the provisioning data update, wherein a second of the at least five bytes uniquely defines a subclass of device associated with the entity, wherein a third of the at least five bytes uniquely defines a platform associated with the device, wherein a fourth of the at least five bytes uniquely defines a behavior associated with the platform, and wherein a fifth of the at least five bytes uniquely defines a version associated with the behavior.

26. The non-transitory computer-readable medium of claim 25 , wherein the provisioning data comprises a firmware image.

27. The non-transitory computer-readable medium of claim 25 , wherein provisioning data comprises configuration data.

28. The non-transitory computer-readable medium of claim 25 , wherein provisioning data comprises security data.

29. The method of claim 1 , wherein the second of the at least five bytes is adjacent to at least one of the first and third byte.

30. The method of claim 16 , wherein the second of the at least five bytes is adjacent to at least one of the first and third byte.

31. The device of claim 21 , wherein the second of the at least five bytes is adjacent to at least one of the first and third byte.

32. The non-transitory computer-readable medium of claim 25 , wherein the second of the at least five bytes is adjacent to the third byte.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2010
From: MALONE, MICHAEL WILLIAM; CHO, YOONG-GOOG; SMITH, THAD; MILBRANDT, RYAN
To: ASSA ABLOY AB
Reel/Frame 024247/0629 →
Continuity (2)
Provisional Application 61147385 · Jan 26, 2009
Related Publication 20100191951A1 · Jul 29, 2010