Progressive control flow obfuscation method for Android application program and electronic equipment

A technology for Android applications and electronic devices, applied in the direction of program code conversion, software engineering design, program/content distribution protection, etc., can solve the problems of increasing the difficulty of decompiling programs, increasing program complexity, and being difficult to practice.

Pending Publication Date: 2020-05-22
AEROSPACE INFORMATION
View PDF4 Cites 0 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

Control flow obfuscation is to increase the complexity of the program and increase the difficulty of decompiling the program by changing the program judgment conditions, adjusting the program structure and execution path, or adding opaque predicates to the program.
Although control flow obfuscation technology can provide stronger security guarantees for applications, it will generate a lot of overhead due to the need to insert a large number of call and return instructions, which is not easy to practice

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
  • Progressive control flow obfuscation method for Android application program and electronic equipment

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0018] Preferred embodiments of the present application will be described in more detail below. Although preferred embodiments of the present application are described below, it should be understood that the present application can be implemented in various forms and should not be limited by the embodiments set forth herein.

[0019] figure 1 A flow chart of a method for progressive control flow obfuscation oriented to Android applications according to an embodiment of the present application is shown. As shown in the figure, the method includes the following steps.

[0020] Step 101, obtain the smali file of the target application program.

[0021] In a possible implementation manner, the apk file of the target application program can be decompressed to obtain the corresponding classes.dex file; and then use apktool to decompile the classes.dex file into a smali file.

[0022] Step 102, split each function in the smali file into executable logic blocks.

[0023] For examp...

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 invention discloses a progressive control flow obfuscation method for an Android application program and electronic equipment. The method comprises the steps of acquiring a smali file of a targetapplication program; splitting each function in the smali file into executable logic blocks; determining an obfuscation level of each logic block, and dividing each logic block into a plurality of sets according to the obfuscation level; selecting a part of sets from the plurality of sets according to a sequence of confusion levels from high to low, and confusing the logic blocks in the selected sets; and judging whether the current obfuscated code reaches the expected complexity or not, and if not, further obfuscating the current obfuscated code until the expected complexity is reached. According to the application, a program developer can more freely balance between the program obfuscation complexity and the calculation overhead.

Description

technical field [0001] The present application belongs to the field of software development, and more specifically, relates to a progressive control flow obfuscation method for Android applications and an electronic device. Background technique [0002] Android (Android) bytecode is easy to reverse, so Android application developers use obfuscation technology to transform software codes to protect applications. Control flow obfuscation is to increase the complexity of the program and increase the difficulty of decompiling the program by changing the program judgment conditions, adjusting the program structure and execution path, or adding opaque predicates to the program. Although control flow obfuscation technology can provide stronger security guarantees for applications, it is not easy to practice due to the need to insert a large number of call and return instructions, which will generate a lot of overhead. Contents of the invention [0003] In view of this, embodimen...

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 & AuthorityApplications(China)
IPC IPC(8): G06F8/41G06F8/53G06F21/14
CPCG06F8/434G06F8/53G06F21/14
Inventor刘茜
OwnerAEROSPACE INFORMATION