Local ledger block chain for secure electronic control unit updates
The present disclosure includes apparatuses, methods, and systems for using a local ledger block chain for secure electronic control unit updates. An embodiment includes a memory, and circuitry configured to receive a global block to be added to a local ledger block chain for validating an electronic control unit update for electronic control unit data stored in the memory, where the global block to be added to the local ledger block chain includes a cryptographic hash of a current local block in the local ledger block chain, a cryptographic hash of the electronic control unit data stored in the memory to be updated, where the current local block in the local ledger block chain has a digital signature associated therewith that indicates the global block is from an authorized entity.
1. An apparatus, comprising:
a memory configured to store a threshold amount of immutable records; and
circuitry configured to receive a global block to be added to a local ledger block chain for validating an electronic control unit hardware update for electronic control unit data stored in the memory and remove a local block from the local ledger block chain responsive to the local ledger block chain reaching the threshold amount of immutable records, wherein:
the global block to be added to the local ledger block chain includes:
a cryptographic hash of a current local block in the local ledger block chain; and
a cryptographic hash of the electronic control unit data stored in the memory to be updated; and
the current local block in the local ledger block chain has a digital signature associated therewith that indicates the global block is from an authorized entity.
2. The apparatus of claim 1 , wherein the local ledger block chain is stored in a secure array defined by a pair of registers.
3. The apparatus of claim 1 , wherein the circuitry is configured to store the global block in the memory as a part of the local ledger block chain.
4. The apparatus of claim 1 , wherein the circuitry is configured to receive multiple global blocks from a global ledger block chain.
5. The apparatus of claim 4 , wherein the circuitry is configured to determine whether the multiple global blocks received from the global ledger block chain, by the circuitry are related to the apparatus.
6. The apparatus of claim 5 , wherein the circuitry is configured to refrain from adding global blocks to the local ledger block chain, when they are unrelated to the apparatus.
7. The apparatus of claim 5 , wherein the circuitry is configured to sequentially add global blocks of the multiple global blocks received from the global ledger block chain to the local ledger block chain when they are related to the apparatus.
8. The apparatus of claim 1 , wherein the global block is added to the local ledger block chain when a previous local block field of the global block matches a current local block field in the current local block of the local ledger block chain.
9. The apparatus of claim 1 , wherein the authorized entity is a vehicle manufacturer.
10. The apparatus of claim 1 , wherein:
the memory comprises an array of memory cells; and
the circuitry includes a pair of registers configured to define the array.
11. The apparatus of claim 10 , wherein the pair of registers includes:
a register configured to define an address of the array; and
a register configured to define a size of the array.
12. An apparatus, comprising:
a memory configured to store a threshold amount of immutable records; and
circuitry configured to:
receive a global block from a global ledger block chain;
determine if the global block is related to the apparatus;
add the global block to a local ledger block chain for validating an electronic control unit hardware update for electronic control unit data stored in the memory, wherein the global block to be added to the local ledger block chain includes:
a cryptographic hash of a current local block in the local ledger block chain; and
a cryptographic hash of the electronic control unit data stored in the memory to be updated; and
the current local block of the local ledger block chain has a digital signature associated therewith that indicates the global block is from an authorized entity; and
remove a local block from the local ledger block chain responsive to the local ledger block chain reaching the threshold amount of immutable records.
13. The apparatus of claim 12 , wherein the circuitry is further configured to generate the digital signature based on a freshness field of the global block.
14. The apparatus of claim 13 , wherein the circuitry determines the freshness field by identifying a previous local block field of the global block.
15. The apparatus of claim 14 , wherein the current local block of the local ledger block chain and the previous local block field of the global block in the global ledger block chain are the same.
16. The apparatus of claim 12 , wherein the local ledger block chain includes multiple local blocks related to a host assembled in sequential order.
17. The apparatus of claim 12 , wherein the local ledger block chain is stored in a portion of the memory that is inaccessible to a user of the memory.
18. A system, comprising:
a memory configured to store a threshold amount of immutable records; and
circuitry configured to generate a local ledger block chain for validating an electronic control unit hardware update to electronic control unit data stored in the memory and remove a local block from the local ledger block chain responsive to the local ledger block chain reaching the threshold amount of immutable records, wherein the local ledger block chain is comprised of a global block from a global ledger block chain, wherein the global block includes:
a cryptographic hash of a current local block in the local ledger block chain; and
a cryptographic hash of the electronic control unit data stored in the memory to be updated; and
the current local block of the local ledger block chain has a digital signature associated therewith that indicates the global block is from an authorized entity; and
a host, wherein the host is configured to:
receive the local ledger block chain from the memory; and
validate the electronic control unit hardware update to the electronic control unit data stored in the memory using the received local ledger block chain.
19. The system of claim 18 , wherein the electronic control unit is at least one of an engine control unit, a board computer, an infotainment control unit, a steering control unit, a light control unit, a transmission control unit, a brake control unit, an air conditioning and heating control unit, an autonomous driving control unit, or an advanced driver-assistance control unit.
20. The system of claim 18 , wherein the circuitry removes the local block from the local ledger block chain by executing firmware to alter a root of the local ledger block chain.
21. The system of claim 20 , wherein the root of the local ledger block chain is a root of a consensus or a root of a Merkle tree.
22. The system of claim 18 , wherein the circuitry adds the global block to the local ledger block chain as an immutable record when the circuitry determines that a freshness field included in the digital signature is an expected freshness field.
23. A system comprising:
a host including a memory configured to store a threshold amount of immutable records; and
circuitry configured to:
generate a local ledger block chain for validating an electronic control unit hardware update to electronic control unit data stored in the memory;
receive global blocks from a global ledger block chain, wherein the local ledger block chain is comprised of global blocks from the global ledger block chain;
add a first portion of the global blocks to the local ledger block chain when a digital signature associated with each of the global blocks of the first portion is verified by the circuitry to be related to the host;
discard a second portion of the received global blocks when the second portion of the global blocks are unrelated to the host; and
remove a local block from the local ledger block chain responsive to the local ledger block chain reaching the threshold amount of immutable records.
24. The system of claim 23 , wherein each of the global blocks of the first portion include a freshness field used to generate the digital signature.
25. The system of claim 24 , wherein the freshness field for each of the global blocks of the first portion corresponds to a current local block of the local ledger block chain.
26. The system of claim 23 , wherein the global blocks of the first portion are added to the local ledger block chain in sequential order and stored in the memory associated with the host.