IP Library Granted Patent US 10,936,302
Granted Patent B2
US 10,936,302 · App. 16/435,237 · Granted Mar 2, 2021

Updating sub-systems of a device using blockchain

Inventors: Kjell Henrik Eklund (Gothenburg, SE); Andreas Martin Viktor Ropel (Gothenburg, SE)
Assignee: Volvo Car Corporation
G06F8/658H04L9/0637H04L9/0825H04L41/082
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,936,302
App. No.
16/435,237
Granted
Mar 2, 2021
Kind
B2
Abstract

In general, techniques are described by which provide a technique for securely updating sub-systems of a device. A device includes multiple sub-systems including a first sub-system and a second sub-system. Each sub-system includes one or more processors. One or more processors of the first sub-system may be configured to perform the techniques herein. The one or more processors of the first sub-system are configured to download, from one or more nodes of a network, a sub-system update for the second sub-system in response to detecting an update to a ledger of a blockchain associated with the second sub-system. The one or more processors of the first sub-system are further configured to distribute the sub-system update for the second sub-system to the second sub-system.

Claims (61)

1. A device comprising:

a plurality of sub-systems including a first sub-system and a second sub-system,

wherein each sub-system of the plurality of sub-systems comprise one or more processors, and wherein the one or more processors of the first sub-system are configured to:

monitor a ledger of a first blockchain for an update associated with the second sub-system;

download, from one or more nodes of a network, an update file for a sub-system update for the second sub-system in response to detecting the update associated with the second sub-system, wherein the first sub-system is different than the second sub-system,

wherein the first blockchain comprises information indicating sub-system updates for respective ones of the plurality of sub-systems, wherein a second blockchain comprises the update file for the sub-system update and an update file for each previous sub-system update for the second sub-system;

wherein the sub-system update comprises one or more of a software update for the second sub-system, a firmware update for the second sub-system, or an application update for an application executing on the second sub-system; and

distribute the sub-system update for the second sub-system to the second sub-system, and

wherein the one or more processors of the second sub-system is configured to install the update file using a sub-system update decryption key for the second sub-system, wherein only the second sub-system is able to access and use the sub-system update decryption key.

2. The device of claim 1 , wherein the blockchain comprises a first blockchain, and wherein the one or more processors of the first sub-system are further configured to:

detect the update to the ledger of the first blockchain associated with the second sub-system includes a new version number associated with the sub-system update for the second sub-system,

wherein the sub-system update for the second sub-system corresponding to the new version number is stored throughout the network in the second blockchain.

3. The device of claim 1 , wherein the second sub-system is configured to utilize the sub-system update decryption key to decrypt the sub-system update upon receiving the sub-system update, and wherein the first sub-system does not have access to the sub-system update decryption key to decrypt the sub-system update for the second sub-system.

4. The device of claim 1 , wherein the blockchain comprises a first blockchain that indicates updates for the second sub-system, and wherein the one or more processors of the first sub-system are further configured to:

download, from the one or more nodes of the network, a sub-system update for a third sub-system of the plurality of sub-systems of the device in response to detecting an update to a ledger of the second blockchain that indicates updates for the third sub-system, wherein the third sub-system is different than the first sub-system and the second sub-system; and

distribute the sub-system update for the third sub-system to the third sub-system.

5. The device of claim 1 , wherein the first blockchain comprises a hash of a version number of the sub-system update for the second sub-system, and wherein the one or more processors of the first sub-system are further configured to:

perform a listening function to detect the update to the ledger of the second blockchain associated with the second sub-system through the one or more nodes of the network.

6. The device of claim 1 , wherein the one or more processors of the first sub-system being configured to download the sub-system update for the second sub-system comprise the one or more processors of the first sub-system being configured to:

download the sub-system update for the second sub-system using one or more of Wi-Fi® protocol, a cellular protocol, Bluetooth® protocol, or ZigBee® protocol, wherein the first sub-system is configured to communicate with the one or more nodes, wherein the second sub-system and each other sub-system of the plurality of sub-systems is in communication with the first sub-system.

7. The device of claim 6 ,

wherein the first sub-system is configured to communicate with the one or more nodes, wherein the second sub-system and each other sub-system of the plurality of sub-systems is in communication with the first sub-system.

8. The device of claim 1 , wherein the network comprises a peer-to-peer communication network, and wherein the one or more processors of the first sub-system being configured to download the sub-system update for the second sub-system comprise the one or more processors of the first sub-system being configured to:

download, from a first node of the peer-to-peer communication network, a first portion of the sub-system update for the second sub-system; and

download, from a second node of the peer-to-peer communication network, a second portion of the sub-system update for the second sub-system.

9. The device of claim 1 , wherein the one or more processors of the first sub-system being configured to distribute the sub-system update for the second sub-system to the second sub-system comprise the one or more processors of the first sub-system being configured to:

determine, based on meta-data for the blockchain, that the sub-system update is for the second sub-system of the plurality of sub-systems; and

send the sub-system update from the first sub-system to the second sub-system.

10. The device of claim 1 , wherein the device comprises a vehicle.

11. The device of claim 10 , wherein the one or more nodes comprise a non-vehicle mobile computing device.

12. A device comprising a plurality of sub-systems that includes a first sub-system and a second sub-system, the device further comprising:

means for monitoring a ledger of a first blockchain for an update associated with the second sub-system, wherein the first sub-system is different than the second sub-system;

means for downloading, from one or more nodes of a peer-to-peer communication network, and to the first sub-system of a plurality of sub-systems of the device,

an update file for a sub-system update for the second sub-system from a second blockchain in response to detecting the update associated with the second sub-system, wherein the first blockchain comprises information indicating sub-system updates for respective ones of the plurality of sub-systems,

wherein the second blockchain comprises the update file for the sub-system update and an update file for each previous sub-system update for the second sub-system,

wherein the sub-system update comprises one or more of a software update for the second sub-system, a firmware update for the second sub-system, or an application update for an application executing on the second sub-system; and

means for distributing the sub-system update for the second sub-system to the second sub-system, wherein the second sub-system is configured to install the update file using a sub-system update decryption key for the second sub-system, wherein only the second sub-system is able to access and use the sub-system update decryption key.

13. A method comprising:

monitoring, by a first sub-system of a device comprising a plurality of sub-systems, a ledger of a first blockchain for an update associated with a second sub-system of the plurality of sub-systems, wherein the first sub-system is different than the second sub-system;

downloading, by the first sub-system and from one or more nodes of a network, an update file for a sub-system update for the second sub-system in response to detecting the update associated with the second sub-system,

wherein the first blockchain comprises information indicating respective sub-system updates for the plurality of sub-systems, wherein a second blockchain comprises the update file for the sub-system update and an update file for each previous sub-system update for the second sub-system, and

wherein only the second sub-system is able to access and use a sub-system update decryption key used to decrypt the sub-system update for the second sub-system,

wherein the sub-system update comprises one or more of a software update for the second sub-system, a firmware update for the second sub-system, or an application update for an application executing on the second sub-system; and

distributing, by the first sub-system, the sub-system update for the second sub-system to the second sub-system, wherein the sub-system update is installed at the second sub-system using the sub-system update decryption key for the second sub-system.

14. The method of claim 13 , wherein the blockchain comprises a first blockchain, and wherein the method further comprises:

detecting, by the first sub-system, the update to the ledger of the first blockchain associated with the second sub-system includes a new version number associated with the sub-system update for the second sub-system,

wherein the sub-system update for the second sub-system corresponding to the new version number is stored throughout the network in the second blockchain.

15. The method of claim 13 , wherein the second sub-system is configured to utilize the sub-system update decryption key to decrypt the sub-system update upon receiving the sub-system update, and wherein the first sub-system does not have access to the sub-system update decryption key to decrypt the sub-system update for the second sub-system.

16. The method of claim 13 , wherein the blockchain comprises a first blockchain that indicates updates for the second sub-system, and wherein the method further comprises:

downloading, by the first sub-system, from the one or more nodes of the network, a sub-system update for a third sub-system of the plurality of sub-systems of the device in response to detecting an update to a ledger of the second blockchain that indicates updates for the third sub-system, wherein the third sub-system is different than the first sub-system and the second sub-system; and

distributing, by the first sub-system, the sub-system update for the third sub-system to the third sub-system.

17. The method of claim 13 , wherein downloading the sub-system update for the second sub-system comprises:

downloading, by the first sub-system, the sub-system update for the second sub-system using one or more of Wi-Fi® protocol, a cellular protocol, Bluetooth® protocol, or ZigBee® protocol.

18. The method of claim 17 ,

wherein the first sub-system is configured to communicate with the one or more nodes, wherein the second sub-system and each other sub-system of the plurality of sub-systems is in communication with the first sub-system.

19. The method of claim 13 , wherein the network comprises a peer-to-peer communication network, and wherein downloading the sub-system update for the second sub-system comprises:

downloading, by the first sub-system, from a first node of the peer-to-peer communication network, a first portion of the sub-system update for the second sub-system; and

downloading, by the first sub-system, from a second node of the peer-to-peer communication network, a second portion of the sub-system update for the second sub-system.

20. The method of claim 13 , wherein distributing the sub-system update for the second sub-system to the second sub-system comprises:

determining, by the first sub-system, based on meta-data for the first blockchain, that the sub-system update is for the second sub-system of the plurality of sub-systems; and

sending, by the first sub-system, the sub-system update from the first sub-system to the second sub-system.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 17, 2024
From: VOLVO CAR CORPORATION
To: POLESTAR PERFORMANCE AB
Reel/Frame 067142/0739 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 7, 2019
From: EKLUND, KJELL HENRIK; ROPEL, ANDREAS MARTIN VIKTOR
To: VOLVO CAR CORPORATION
Reel/Frame 049410/0324 →
Cited By (1)
US 12,314,703