Memory device with secure boot updates and self recovery
US-2024406008-A1 · Dec 5, 2024 · US
US2017147331A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2017147331-A1 |
| Application number | US-201715426090-A |
| Country | US |
| Kind code | A1 |
| Filing date | Feb 7, 2017 |
| Priority date | Jan 5, 2015 |
| Publication date | May 25, 2017 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method and system for renewing software at the component-level is provided. A client program includes a base component for loading a software component into at least one loadable region of the program to update the program. Code in the software component is for writing state data associating the state of the update in storage, upon execution of the software component, and testing the state data to verify condition of the updated program and disallowing rollback and roll-forward attacks, the state data comprising hash chain values. The state data for verifying the correctness of the updated program is entangled with application data used for the program functionality. A server includes: an update pool having a plurality of software updates deployed in each client, and a policy control for monitoring and controlling at least one of: the length of time the client runs until the software update is invoked, a chain of the updates; and the granularity of the update.
Opening claim text (preview).
1 . A method for software renewal, comprising: loading a software component into at least one loadable region of a program by a base component in the program to update the program, the software component being dynamically swapped at run-time of the program in accordance with an update schedule; writing state data associating the state of the update in a storage, upon execution of the software component; testing the state data to verify the condition of the updated program, the state data comprising hash chain values; and entangling the state data for verifying the correctness of the updated program with application data used for the program functionality. 2 . (canceled) 3 . (canceled) 4 . (canceled) 5 . (canceled) 6 . (canceled) 7 . (canceled) 8 . (canceled) 9 . (canceled) 10 . (canceled) 11 . (canceled) 12 . (canceled) 13 . (canceled) 14 . (canceled) 15 . (canceled) 16 . (canceled) 17 . (canceled) 18 . (canceled) 19 . A system for renewing software, comprising: a client including: a processor, and a memory for storing a program including a base loading component for loading a program component into at least one loadable region of the program to update the program, the program component being dynamically swapped at run-time of the program in accordance with an update schedule, the software component having code for writing state data associating the state of the update in a storage, upon execution of the software component, and testing the state data to verify the condition of the updated program, the state data comprising hash chain values, the state data for verifying the correctness of the updated program being entangled with application data used for the program functionality. 20 . (canceled) 21 . (canceled) 22 . (canceled) 23 . (canceled) 24 . (canceled) 25 . (canceled) 26 . (canceled) 27 . (canceled) 28 . (canceled) 29 . (canceled) 30 . (canceled) 31 . (canceled) 32 . (canceled) 33 . (canceled) 34 . (canceled) 35 . (canceled) 36 . (canceled) 37 . (canceled) 38 . A system for renewing software in a client, comprising a server comprising: an update pool having a plurality of software updates deployed in each client; a policy control for monitoring and controlling at least one of: the length of time the client runs until the software update is invoked, a chain of the updates; and the granularity of the update; and an update module for updating the client's program a first software component in a part of the program of the client being replaced with a second software component based on one of the software update under the policy control. 39 . (canceled) 40 . (canceled)
while running · CPC title
Secure firmware programming, e.g. of basic input output system [BIOS] · CPC title
Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading · CPC title
Updates (security arrangements therefor G06F21/57) · CPC title
Physics · mapped topic
Related publications grouped by family.
Answers are generated from the same data shown on this page.