×

Interleaved data and instruction streams for application program obfuscation

  • US 7,424,620 B2
  • Filed: 09/25/2003
  • Issued: 09/09/2008
  • Est. Priority Date: 09/25/2003
  • Status: Active Grant
First Claim
Patent Images

1. A method for executing an obfuscated application program, the method comprising:

  • receiving, on a user device, an obfuscated application program that comprises application program instructions and application program data;

    determining, in said user device during said execution of said obfuscated application, an application program instruction location permutation to apply to a current instruction counter value;

    determining, in said user device during said execution of said obfuscated application, an application program data location permutation to apply to a current data location counter value;

    receiving, in said user device during said execution of said obfuscated application, said current instruction counter value;

    applying, in said user device during said execution of said obfuscated application, said application program instruction location permutation to said current instruction counter value to obtain a first reference to an application program instruction, in an instruction stream, to execute;

    if said application program instruction references application program data, applying, in said user device during said execution of said obfuscated application, said application program data location permutation to data referenced by said application program instruction to obtain a second reference to data to access, said data to access interleaved with application program instructions in said instruction stream; and

    executing, in said user device during said execution of said obfuscated application, said application program instruction.

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