×

Portion-level in-memory module authentication

  • US 7,644,287 B2
  • Filed: 07/29/2004
  • Issued: 01/05/2010
  • Est. Priority Date: 07/29/2004
  • Status: Active Grant
First Claim
Patent Images

1. A method of verifying the integrity of a software module, comprising:

  • accessing a software module to be executed, said software module comprising a plurality of specific verifiable portions, and portion-level verification data corresponding to each of the specific verifiable portions, wherein said portion-level verification data is pre-computed and pre-stored in association with said software module and said portion level verification data comprises a plurality of hashes of said specific portion, each of said plurality of hashes being based on an anticipated change to a loaded portion of said software module;

    loading into memory a subset of specific verifiable portions from among the plurality of specific verifiable portions of the software module, wherein verification of said subset is required to begin execution of the software module;

    retrieving corresponding portion-level verification data for each specific verifiable portion in the subsetusing said corresponding portion-level verification data to verify each specific verifiable portion in the subset of said software module as loaded into memory;

    executing, when said subset is verified, a specific verifiable portion of the software module loaded in memory which has not been verified;

    modifying at least one specific verifiable portion to reverse any loading changes implemented by a loader in loading said specific verifiable portion;

    hashing said modified specific verifiable portion; and

    comparing the result of said hash of said modified specific verifiable portion to said corresponding portion-level verification data.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×