Method, system and device for protection against reverse engineering and/or tampering with programs
AssigneeKoninklijke Philips N.V.
InventorWillem Charles Mallon
Life of this patent
Estimating the term…
Loading patent…
AssigneeKoninklijke Philips N.V.
InventorWillem Charles Mallon
Estimating the term…
Unauthorized use of computer programs is made difficult by compiling a processor rather than just compiling a program into machine code. The way in which the processor should respond to machine instructions, i.e. its translation data, is computed from an arbitrary bit string B and a program P as inputs. The translation data of a processor are computed that will execute operations defined by the program P when the processor uses the given bit string B as a source of machine instructions. A processor is configured so that it will execute machine instructions according to said translation data. Other programs P′ may then be compiled into machine instructions B′ for that processor and executed by the processor. Without knowledge of the bit string B and the original program P it is difficult to modify the machine instructions B′ so that a different processor will execute the other program P′.
A method to enhance the protection of applications executed in an open environments against reverse engineering and tampering attaches in processing circuit, the method, configuring said processing circuit to be a virtual machine emulated on another execution environment, wherein the method obfuscates program execution by layering at least one virtual machine, an inextricably link application and execution environment and embedding legal information openly into at least application code, said virtual machine and application data, said method comprising:
A device for configuring a processor circuit to enhance the protection of applications executed in an open environments against reverse engineering and tampering attacks by configuring said processor circuit to be a virtual machine emulated on another execution environment, wherein program execution is obfuscated by layering at least one virtual machine, an inextricably link application and execution environment and embedding legal information openly into at least application code, said virtual machine and application data, the device comprising:
A processor circuit configured to be a virtual machine, emulated on another execution environment, to enhance the protection of applications executed in an open environments against reverse engineering and tampering, wherein execution is obfuscated by layering at least one virtual machine, an inextricably link application and execution environment and embedding legal information openly into at least application code, said virtual machine and application data comprising:
A non-transitory computer program product, to enhance the protection of applications executed in an open environments against reverse engineering and tampering, comprising a plurality of instructions, stored on a tangible medium, that is not a signal or a wave, for configuring a processor to be a virtual machine, emulated on another execution environment, wherein execution is obfuscated by layering at least one virtual machine, an inextricably link application and execution environment and embedding legal information openly into at least application code, said virtual machine and application data, said non-transitory computer program product when executed by said processor will cause said processor to:
Dependencies are inferred from the claim text.