Patent ID: 8762966
Filing Date: 2014-06-24
Classification: G06F

Abstract:
1. A method of obfuscating compiled computer code comprising computer code instructions organised in a plurality of basic blocks, the method comprising the steps, in a device, of: replacing a jump instruction in a first basic block with a function call with at least one parameter, wherein the function call, when executed, determines the address of the next function to execute in dependence on the parameter; inserting into the compiled computer code an instruction that allocates a value to the parameter, the value being such that the address determined by the function call corresponds to the destination address of the replaced jump instruction; wherein the allocation instruction is inserted into the computer code in a second basic block, different from the first basic block and intended to be executed before the first basic block, and further comprising a step of: choosing the second basic block in an execution path between a preceding third basic block that comprises a conditional jump instruction and the first basic block.