Resource data structures for firmware updates
US-9110761-B2 · Aug 18, 2015 · US
US9910659B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9910659-B2 |
| Application number | US-201213670932-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 7, 2012 |
| Priority date | Nov 7, 2012 |
| Publication date | Mar 6, 2018 |
| Grant date | Mar 6, 2018 |
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.
Methods, systems, computer-readable media, and apparatuses for providing anti-rollback protection in a device which has no internal non-volatile memory are presented. One embodiment is a device for providing anti-rollback protection. The device may obtain a firmware version number associated with a first firmware installation for the device, wherein the device is implemented on a substrate that includes no non-volatile memory. The device may obtain a lowest acceptable firmware version number, wherein the lowest acceptable firmware version number is stored in a secure element environment, wherein the secure element environment utilizes memory separated from the substrate. The device may compare the firmware version number and the lowest acceptable firmware version number, wherein if the firmware version number is less than the lowest acceptable firmware version number, then disallow the first firmware installation.
Opening claim text (preview).
What is claimed is: 1. A method for providing anti-rollback protection in a near field communication (NFC) device comprising: obtaining a firmware version number (FVN) associated with a first firmware installation for a NFC controller of the NFC device, wherein the NFC controller is implemented on a first substrate of the NFC device that includes no non-volatile memory and a geometry of the first substrate does not support non-volatile memory, and wherein the first firmware installation includes a first firmware; obtaining a lowest acceptable firmware version number (LAFVN), wherein the LAFVN is a separate firmware version number from the FVN associated with the first firmware installation for the NFC controller of the NFC device, wherein the LAFVN is stored in a secure element environment within the NFC device that cannot be accessed from outside of the NFC device, wherein the secure element environment utilizes memory of a second substrate of the NFC device separated from the first substrate, wherein a geometry of the second substrate does support non-volatile memory, wherein the LAFVN is associated with a current firmware installed on the NFC controller, and wherein the geometry of the first substrate and the geometry of the second substrate are different; comparing the FVN and the LAFVN; replacing the current firmware with the first firmware in response to determining that the FVN is greater than or equal to the LAFVN; and updating the LAFVN with the FVN in the secure element environment in response to determining that the FVN is greater than or equal to the LAFVN. 2. The method of claim 1 , further comprising replacing the current firmware with the first firmware in response to the NFC controller determining that the FVN is equal to the LAFVN. 3. The method of claim 1 , wherein the secure element environment is a standalone Secure Execution Environment (SEE) that protects against software and hardware attacks. 4. The method of claim 1 , wherein the secure element environment is a Trusted Execution Environment (TEE) in a hardware-protected partition of a System-on-a-Chip (SoC). 5. The method of claim 1 , wherein the LAFVN is updated using GlobalPlatform mechanisms. 6. The method of claim 1 , wherein the LAFVN is updated by a controlling authority. 7. The method of claim 1 , wherein the LAFVN is stored in an application in the secure element environment. 8. The method of claim 1 , further comprising authenticating the first firmware installation based on a digital signature associated with the first firmware installation. 9. The method of claim 1 , further comprising: in response to determining that the FVN is less than the LAFVN, requesting an upload of a second firmware installation with a version number greater than the LAFVN. 10. A near field communication (NFC) device for providing anti-rollback protection comprising: one or more processors; and memory storing computer-readable instructions that, when executed by the one or more processors, cause the NFC device to: obtain a firmware version number (FVN) associated with a first firmware installation for a NFC controller of the NFC device, wherein the NFC controller is implemented on a first substrate of the NFC device that includes no non-volatile memory and a geometry of the first substrate does not support non-volatile memory, and wherein the first firmware installation includes a first firmware; obtain a lowest acceptable firmware version number (LAFVN), wherein the LAFVN is a separate firmware version number from the FVN associated with the first firmware installation for the NFC controller within the NFC device that cannot be accessed from outside of the NFC device, wherein the LAFVN is stored in a secure element environment of the NFC device, wherein the secure element environment utilizes memory of a second substrate of the NFC device separated from the first substrate, wherein a geometry of the second substrate does support non-volatile memory, wherein the LAFVN is associated with a current firmware installed on the NFC device, and wherein the geometry of the first substrate and the geometry of the second substrate are different; compare the FVN and the LAFVN; replace the current firmware with the first firmware in response to determining that the FVN is greater than or equal to the LAFVN; and update the LAFVN with the FVN in the secure element environment in response to determining that the FVN is greater than or equal to the LAFVN. 11. The NFC device of claim 10 , wherein the instructions, when executed by the one or more processors, additionally cause the NFC device to replace the current firmware with the first firmware in response to determining that the FVN is equal to the LAFVN. 12. The NFC device of claim 10 , wherein the secure element environment is a stand-alone Secure Execution Environment (SEE) that protects against software and hardware attacks. 13. The NFC device of claim 10 , wherein the secure element environment is a Trusted Execution Environment (TEE) in a hardware-protected partition of a System-on-a-Chip (SoC). 14. The NFC device of claim 10 , wherein the LAFVN is updated using GlobalPlatform mechanisms. 15. The NFC device of claim 10 , wherein the LAFVN is updated by a controlling authority. 16. The NFC device of claim 10 , wherein the LAFVN is stored in an application in the secure element environment. 17. The NFC device of claim 10 , wherein the instructions, when executed by the one or more processors, additionally cause the NFC device to authenticate the first firmware installation based on a digital signature associated with the first firmware installation. 18. The NFC device of claim 10 , wherein the instructions, when executed by the one or more processors, additionally cause the NFC device to request an upload of a second firmware installation with a version number greater than the LAFVN in response to determining that the FVN is less than the LAFVN. 19. A non-transitory computer-readable media storing computer executable instructions that, when executed, cause a near field communication (NFC) device to: obtain a firmware version number (FVN) associated with a first firmware installation for a NFC controller of the NFC device, wherein the NFC controller is implemented on a first substrate of the NFC device that includes no non-volatile memory and a geometry of the first substrate does not support non-volatile memory, and wherein the first firmware installation includes a first firmware; obtain a lowest acceptable firmware version number (LAFVN), wherein the LAFVN is a separate firmware version number from the FVN associated with the first firmware installation for the NFC controller of the NFC device, wherein the LAFVN is stored in a secure element environment within the NFC device that cannot be accessed from outside of the NFC device, wherein the secure element environment utilizes memory of a second substrate of the NFC device separated from the first substrate, wherein a geometry of the second substrate does support non-volatile memory, wherein the LAFVN is associated with a current firmware installed on the NFC device, and wherein the geometry of the first substrate and the geometry of the second substrate are different; compare the FVN and the LAFVN; replace the current firmware with the first firmware in response to determining that the FVN is greater than or equal to the LAFVN; and update the LAFVN with the FVN in the secure element environment in response to determining that the FVN is greater than or equal to the LAFVN.
Updates (security arrangements therefor G06F21/57) · CPC title
Secure boot · CPC title
during software upgrading · CPC title
Secure firmware programming, e.g. of basic input output system [BIOS] · CPC title
Protecting application or service provisioning, e.g. securing SIM application provisioning · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.