Program code protection method and device based on LLVM

A technology of program code and code file, applied in the field of LLVM-based program code protection method and device, can solve problems such as no solution and increased difficulty of reverse analysis

Active Publication Date: 2019-06-07
WUHAN JIYI NETWORK TECH CO LTD
View PDF6 Cites 4 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

However, program reverse developers or program reverse products can easily obtain the source code in the application program by decompiling the application program, which makes the phenomenon of piracy and repackaging of the application program emerge in endlessly
[0003] In order to increase the difficulty of reverse analysis of the program by program crackers, reduce the cracking speed of the program or prevent the program from being cracked, it is necessary to protect the internal code logic of the program, and in the prior art, most of the solutions are aimed at the java language, and for C The language of the language library, there is currently no effective workaround

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Program code protection method and device based on LLVM
  • Program code protection method and device based on LLVM
  • Program code protection method and device based on LLVM

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0020] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments It is a part of embodiments of the present invention, but not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without creative efforts fall within the protection scope of the present invention.

[0021] figure 1 A flow chart of a program code protection method based on LLVM provided by the embodiment of the present invention, such as figure 1 As shown, the method includes:

[0022] Step 101, determine whether the function in the intermediate code file generated by the LLVM compiled by traversal needs to be complicated, and if the result ...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

The embodiment of the invention provides a program code protection method and device based on LLVM. The method comprises: judging whether a function in a traversed intermediate code file needs to be subjected to complication processing or not, and when the complication processing needs to be carried out, all instructions of the function are stored as a call bit CalSite object; forming a first setby all CallSite objects, and cleaning the first set to generate a second set; and performing complication processing on the function pointed by each CallSite object in the second set to generate a newfunction, and replacing the function pointed by the CallSite object with the new function. According to the method and the device provided by the embodiment of the invention, the LLVM intermediate code file is changed in the compiling period, so that the original function calling in the program code is complicated, the analysis cost of an attacker is increased, the program code protection purposeis achieved, and all languages capable of calling the C language library originally are supported.

Description

technical field [0001] The embodiment of the present invention relates to the technical field of computer security, in particular to an LLVM-based program code protection method and device. Background technique [0002] With the continuous development of science and technology and society, the number of various applications is also increasing rapidly. However, program reverse developers or program reverse products can easily obtain the source code in the application program by decompiling the application program, so that the phenomenon of piracy and repackaging of the application program also emerges endlessly. [0003] In order to increase the difficulty of reverse analysis of the program by program crackers, reduce the cracking speed of the program or prevent the program from being cracked, it is necessary to protect the internal code logic of the program, and in the prior art, most of the solutions are aimed at the java language, and for C There is currently no effective...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
Patent Type & Authority Applications(China)
IPC IPC(8): G06F21/14
Inventor 许伟陈国庆
Owner WUHAN JIYI NETWORK TECH CO LTD
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products