Patent · US Active

Obfuscating program by scattering sequential instructions into memory regions such that jumps occur with steps of both signs in equal frequency

US8856500B2 · kind B2 · utility

1Cited by
7References
8Claims
0Family size

Assignee

Inventors

Key dates

Filing dateFeb 2, 2009
Grant dateOct 7, 2014
Priority date
Expiry dateNov 29, 2030

Classification

  • Technology area (CPC G)Physics
  • CPC primaryG06F21/14
  • WIPO fieldComputer technology
  • WIPO sectorElectrical engineering

Abstract

A program is obfuscated by reordering its instructions. Original instruction addresses are mapped to target addresses in an irregular way, with position dependent address steps between the addresses of logically successive instructions. Preferably pseudo-random address steps are used, for example with address steps that have mutually opposite sign with equal frequency. The data processing device has an instruction flow control unit that updates instruction addresses according the position dependent address steps. The instruction flow control unit may comprise a circuit that contains secret information, which is not normally accessible from the outside, to control the updates. A lookup table may be used for example, with address steps, successor addresses or mapped address values. In an embodiment the mapping of original instruction addresses to target addresses may be visualized by means of a path (36) along points in an n-dimensional array, where n is greater than one. Successive original instruction addresses are mapped to successive locations in the path, and locations along respective rows of the array are mapped to respective mutually disjoint ranges (33a-d). Because an n-dime…

Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.