System and method for authenticating software using hidden intermediate keys
US6961852B2 · kind B2 · utility
Assignee
Inventor
Key dates
| Filing date | Jun 19, 2003 |
| Grant date | Nov 1, 2005 |
| Priority date | — |
| Expiry date | Oct 4, 2023 |
Classification
- Technology area (CPC G)Physics
- CPC primaryG06F21/123
- WIPO fieldComputer technology
- WIPO sectorElectrical engineering
Abstract
A processing unit includes a read-only encryption key. Loader code image is loaded into system memory from non-volatile storage. Loader code image includes a prefix value and a suffix value. The prefix value is combined with the master key from the processing unit to create a random value that is the seed for a hashing algorithm. The hashing algorithm uses the seed value with a signature formed from the blocks of code to form a result. During the hashing algorithm, intermediate key values are generated and stored in a memory area inaccessible by the user. The intermediate key values are used by the loader code after the loader has been authenticated and loaded. The loader combines one or more of the intermediate key values with prefix and suffix values that correspond to other software modules to authenticate the software, using a hashing algorithm, and load the software upon authentication.
Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.