Patent ID: 8090959

Claim:
A method for protecting .net programs, wherein the method comprises the steps of: A. selecting a binary code segment containing .net intermediate language instructions from a compiled .net program; B. transforming the binary code segment, and removing the binary code segment from the .net program; C. writing the transformed binary code segment to a shell of the .net program, and writing a shell calling instruction to the .net program; and D. executing the .net program, calling a .net virtual machine by the shell calling instruction upon executing the shell calling instruction, and executing the transformed binary code segment by the .net virtual machine; wherein the step D comprises the substeps of: D1. executing the .net program, and calling the shell by the shell calling instruction upon executing the shell calling instruction; D2. calling a .net virtual machine by the shell; D3. executing the transformed binary code segment through a parsing instruction corresponding to the transforming by the .net virtual machine according to a previous convention; and D4. outputting a correct execution result by the .net virtual machine.