IP Library Granted Patent US 11,398,896
Granted Patent B2
US 11,398,896 · App. 16/724,035 · Granted Jul 26, 2022

Building device with blockchain based verification of building device files

Inventors: Nidhi Sharma (Pune, IN); Sreekesh Sreelal (Pune, IN); Sumit K. Jha (Pune, IN); Pushpendra Singh Kharsan (Pune, IN)
Assignee: Johnson Controls Tyco IP Holdings LLP
H04L9/0637G06F16/137G06F16/1837G06F21/64G16Y40/35H04L9/3263H04L2209/38
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,398,896
App. No.
16/724,035
Granted
Jul 26, 2022
Kind
B2
Abstract

A building device of a building includes or is in communication with a processing circuit configured to store one or more files, each of the one or more files comprising instructions and a ledger, the ledger comprising information describing at least one of the one or more files. The processing circuit is configured to verify the one or more files by retrieving a root ledger from storage of the processing circuit, wherein the root ledger comprises information based on one or more characteristics of a blockchain, reassembling the blockchain based on the ledger of each of the one or more files, verifying the blockchain with the root ledger, and verifying the one or more files with the verified blockchain. The processing circuit is configured to execute the instructions of the one or more files in response to a determination that the one or more files are verified.

Claims (58)

1. A building device of a building, the building device comprising or being in communication with a processing circuit configured to:

store one or more files, each of the one or more files comprising instructions and a ledger, the ledger comprising information describing at least one of the one or more files;

verify the one or more files by:

retrieving a root ledger from storage of the processing circuit, wherein the root ledger comprises second information based on one or more characteristics of a blockchain;

reassembling the blockchain based on the ledger of each of the one or more files;

verifying the blockchain with the root ledger; and

verifying the one or more files with the blockchain verified with the root ledger; and

execute the instructions of the one or more files in response to a determination that the one or more files are verified.

2. The building device of claim 1 , wherein verifying the one or more files with the blockchain verified with the root ledger comprises:

determining at least one of a size or a hash of each of the one or more files; and

comparing at least one of the size or the hash of each of the one or more files to a stored size and a stored hash stored within the blockchain verified with the root ledger to verify the one or more files.

3. The building device of claim 1 , wherein the processing circuit is configured to verify the one or more files by retrieving a build key from the storage of the processing circuit and verifying the blockchain with the build key.

4. The building device of claim 1 , wherein the second information based on the one or more characteristics of the blockchain comprise a stored checksum, wherein the stored checksum is based on a block hash of each of a plurality of blocks of the blockchain and a device key, wherein the root ledger further comprises the device key;

wherein verifying the blockchain with the root ledger comprises:

generating a checksum based the block hash of each of the plurality of blocks of the blockchain and the device key; and

comparing the checksum to the stored checksum.

5. The building device of claim 1 , wherein the one or more files are one or more binary files comprising binary data representing the instructions and metadata, wherein the metadata comprises the ledger.

6. The building device of claim 1 , wherein the processing circuit is configured to:

receive a request to execute the instructions of at least one of the one or more files; and

verify the one or more files in response to a reception of the request to execute the instructions of the one or more files.

7. The building device of claim 1 , wherein the processing circuit is configured to:

determine, via a timer, that an amount of time has elapsed; and

verify the one or more files in response to a second determination that the amount of time has elapsed.

8. The building device of claim 7 , wherein the processing circuit is configured to determine the amount of time by pseudo-randomly generating a value for the amount of time.

9. The building device of claim 1 , wherein the processing circuit is a trusted chipset configured to implement a trusted operating system and a non-trusted operating system.

10. The building device of claim 9 , wherein the storage is secured storage of the trusted operating system and is only accessible by the trusted operating system.

11. The building device of claim 9 , wherein the trusted chipset is configured to verify, via the trusted operating system, the blockchain with a build key and the root ledger;

wherein the trusted chipset is configured to execute, via the non-trusted operating system, the instructions of the one or more files in response to the determination that the one or more files are verified.

12. The building device of claim 1 , wherein the blockchain comprising a plurality of blocks, each of the plurality of blocks comprising a signature, wherein the processing circuit is configured to verify the one or more files with a build key by verifying the signature of each of the plurality of blocks of the blockchain with the build key.

13. The building device of claim 12 , wherein each of the plurality of blocks corresponds to one of the one or more files, wherein the one or more files are a plurality of files;

wherein a first block of the plurality of blocks corresponds to a first file and a second block of the plurality of blocks corresponds to a second file.

14. The building device of claim 13 , wherein the second block comprises:

particular information of the second file;

a hash of the first block; and

a particular signature.

15. The building device of claim 14 , wherein the particular information of the second file comprises at least one of a path of the second file indicating a location where the second file is stored, a size of the second file, or a second hash of the second file.

16. The building device of claim 14 , wherein the particular signature is based on a private build key and the particular information of the second file, wherein the build key is a public build key linked with the private build key;

wherein the processing circuit is configured to verify the blockchain with the public build key by determining that the particular signature is authentic based on the particular information of the second file, the signature, and the public build key.

17. A method comprising:

storing, by a processing circuit associated with a building device, one or more files in first storage of the processing circuit, each of the one or more files comprising instructions and a ledger, the ledger comprising information describing at least one of the one or more files;

verifying, by the processing circuit, the one or more files by:

retrieving a root ledger from second storage of the processing circuit, wherein the root ledger comprises second information based on one or more characteristics of a blockchain;

reassembling the blockchain based on the ledger of each of the one or more files;

verifying the blockchain with the root ledger; and

verifying the one or more files with the blockchain verified with the root ledger; and

executing, by the processing circuit, the instructions of the one or more files in response to a determination that the one or more files are verified.

18. The method of claim 17 , wherein the processing circuit is a trusted chipset configured to implement a trusted operating system and a non-trusted operating system;

wherein the second storage is secured storage of the trusted operating system and is only accessible by the trusted operating system.

19. The method of claim 18 , wherein verifying the blockchain with the root ledger comprises verifying, via the trusted operating system, the blockchain with a build key and the root ledger;

wherein executing, by the processing circuit, the instructions comprises executing the one or more files via the non-trusted operating system.

20. An edge device comprising a processing circuit configured to:

store one or more files, each of the one or more files comprising instructions and a ledger, the ledger comprising information describing at least one of the one or more files;

verify the one or more files by:

retrieving a root ledger from storage of the processing circuit, wherein the root ledger comprises second information based on one or more characteristics of a blockchain;

reassembling the blockchain based on the ledger of at least one of the one or more files;

verifying the blockchain with the root ledger; and

verifying the one or more files with the blockchain verified with the root ledger; and

execute the instructions of the one or more files in response to a determination that the one or more files are verified.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 18, 2024
From: JOHNSON CONTROLS TYCO IP HOLDINGS LLP
To: TYCO FIRE & SECURITY GMBH
Reel/Frame 066957/0796 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2022
From: SHARMA, NIDHI; SREELAL, SREEKESH; JHA, SUMIT K.; KHARSAN, PUSHPENDRA SINGH
To: JOHNSON CONTROLS TECHNOLOGY COMPANY
Reel/Frame 059750/0479 →
NUNC PRO TUNC ASSIGNMENT Recorded Feb 4, 2022
From: JOHNSON CONTROLS TECHNOLOGY COMPANY
To: JOHNSON CONTROLS TYCO IP HOLDINGS LLP
Reel/Frame 058959/0764 →