IP Library › Granted Patent US 11,461,455
Granted Patent B2
US 11,461,455 · App. 16/632,136 · Granted Oct 4, 2022

Method and system of secure configuration of at least one electronic device

Inventors: Holger Assenmacher (Las Vegas, NV); Thomas Dienwiebel (Los Gatos, CA)
Assignee: CRYPTOWERK CORP.
G06F21/44G06F9/44505H04L9/3239
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 11,461,455
App. No.
16/632,136
Filed
Jan 17, 2020
Granted
Oct 4, 2022
Kind
B2
Art Unit
2499
USPC
726/17
Abstract

The present invention relates to the secure configuration of electronic devices, such as for example network-connected “smart” devices and appliances, collectively referred to as “IoT devices”. A computer-implemented method of secure configuration of at least one electronic device is provided. According to the method, the electronic device connects to a blockchain database; determines from said blockchain database a configuration block comprising block identification data, where the block identification data corresponds to device identification data, stored with the electronic device; obtains configuration information from said configuration block; and using the configuration information, conducts configuration of the electronic device.

Claims (37)

1. A computer-implemented method of secure configuration of at least one electronic device, comprising:

connecting to a blockchain database;

determining from said blockchain database a configuration block comprising block identification data, where the block identification data corresponds to device identification data, stored with the electronic device; and

obtaining configuration information and a forward update indicator from said configuration block; wherein a forward update routine is conducted, comprising:

determining from the blockchain database, using the forward update indicator, whether an updated configuration block having updated configuration information exists;

if the updated configuration block exists, obtaining the updated configuration information and using the updated configuration information, conducting configuration of the electronic device; and

if the updated configuration block does not exist, conducting configuration of the electronic device using the configuration information; wherein

in case the updated configuration block also comprises a forward update indicator, the forward update routine is conducted repeatedly, so that the at least one electronic device is configured with configuration information, comprised in a youngest or last configuration block of the blockchain database.

2. The computer-implemented method of claim 1 , wherein determining the configuration block comprises determining the oldest block of the blockchain database, where the block identification data corresponds to the device identification data.

3. The computer-implemented method of claim 1 , wherein determining the configuration block comprises searching for a block, where the block identification data corresponds to the device identification data.

4. The computer-implemented method of claim 1 , wherein the device identification data comprises a block identifier and determining the configuration block comprises querying the blockchain database for a block, corresponding to the block identifier.

5. The computer-implemented method of claim 1 , wherein a configuration pointer is stored with the electronic device and obtaining the configuration information from the configuration block comprises querying the blockchain database using the configuration pointer.

6. The computer-implemented method of claim 1 , wherein a minimum block height value is stored with the electronic device and determining the configuration block comprises searching for a block, where the block identification data corresponds to the device identification data, and where said search begins from a block of the blockchain database, which corresponds to the minimum block height value.

7. The computer-implemented method of claim 1 , wherein determining the configuration block comprises connecting to a blockchain search server, providing the device identification data to the blockchain search server, and receiving the configuration block.

8. The computer-implemented method of claim 1 , wherein the forward update indicator comprises a public update key of a private/public update key pair and the subsequent or younger updated configuration block of the blockchain database comprises data/information that is encrypted with the private update key.

9. The computer-implemented method of claim 8 , wherein the updated configuration information is encrypted with the private update key and the electronic device decrypts the updated configuration information using the public update key of a previous or older updated configuration block.

10. The computer-implemented method of claim 1 , wherein the forward update indicator comprises a hash of verification data and the subsequent or younger updated configuration block of the blockchain database comprises or corresponds to the verification data.

11. The computer-implemented method of claim 10 , wherein the updated configuration block(s) of the blockchain database comprises at least a further hash of further verification data.

12. The computer-implemented method of claim 1 , wherein the configuration information comprises at least one or more of a configuration script, an electronic link to a configuration script, an electronic link to operating software, an electronic link to an operating software for the electronic device, an electronic link to a firmware, an electronic link to a firmware for the electronic device, an electronic link to a software update, electronic link to a software update for the electronic device, an electronic link to a configuration update, an electronic link to a configuration update for the electronic device, a hash and a signing key and/or a public key of a public key cryptography system.

13. The computer-implemented method of claim 1 , wherein the method provides one or more of secure bootstrapping, secure re-configuration, and secure update of the at least one electronic device.

14. The computer-implemented method of claim 1 , wherein the blockchain configuration identification information and/or the device identification data comprises at least random data.

15. The computer-implemented method of claim 1 , wherein the configuration identification information and/or the device identification data comprises at least pseudo-random and/or true random data.

16. The computer-implemented method of claim 1 , wherein the electronic device is an IoT device, a smart device, and/or a wireless device.

17. The computer-implemented method of claim 1 , wherein the electronic device comprises at least one or more of a sensor, a camera, an actuator, a user interface, a network interface, a wireless interface, a display device, and an I/O interface.

18. The computer-implemented method of claim 1 , comprising connecting to a first blockchain database and in case no configuration information can be obtained from said first blockchain database, connecting to at least a second blockchain database to obtain the configuration information.

19. A non-transitory computer-readable medium including contents that are configured to cause an electronic device to conduct the method of claim 1 .

20. The method of claim 1 , wherein the method is conducted by the electronic device.

21. An electronic device, comprising:

a network interface for connecting to a communications network; and

a processing device, connected with the network interface for communicating with at least one blockchain database; wherein the processing device is configured for:

connecting to a blockchain database;

determining from said blockchain database a configuration block comprising block identification data, where the block identification data corresponds to device identification data, stored with the electronic device; and

obtaining configuration information and a forward update indicator from said configuration block; wherein a forward update routine is conducted, comprising:

determining from the blockchain database, using the forward update indicator, whether an updated configuration block having updated configuration information exists;

if the updated configuration block exists, obtaining the updated configuration information and using the updated configuration information, conducting configuration of the electronic device; and

if the updated configuration block does not exist, conducting configuration of the electronic device using the configuration information; wherein

in case the updated configuration block also comprises a forward update indicator, the forward update routine is conducted repeatedly, so that the at least one electronic device is configured with configuration information, comprised in a youngest or last configuration block of the blockchain database.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 18, 2022
From: ASSENMACHER, HOLGER; DIENWIEBEL, THOMAS
To: CRYPTOWERK CORP.
Reel/Frame 060848/0836 →
Continuity (2)
Provisional Application 62533562 · Jul 17, 2017
Related Publication 20200233950A1 · Jul 23, 2020