Unlock instant, AI-driven research and patent intelligence for your innovation.

Dalvik bytecode oriented control flow confusion method

A control flow and bytecode technology, applied in the field of software protection, can solve the problems of easy restoration of Android applications, low degree of protection of Android applications, and low degree of obfuscation of obfuscation methods, and achieves implementation overhead and obfuscation intensity. Effect

Active Publication Date: 2018-01-26
UNIV OF ELECTRONICS SCI & TECH OF CHINA
View PDF2 Cites 9 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0005] The purpose of the present invention is: in order to solve the problem that the degree of confusion of the current Android control flow obfuscation method is not high, the Android application program is easily restored, and the protection degree of the Android application program is not high

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
  • Dalvik bytecode oriented control flow confusion method
  • Dalvik bytecode oriented control flow confusion method
  • Dalvik bytecode oriented control flow confusion method

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0055] The present invention will be described in more detail below in conjunction with the accompanying drawings and detailed embodiments.

[0056] A method for obfuscating control flow of dalvik bytecode, the method comprises the following steps:

[0057] S1: Perform control flow analysis on the source code of the Android application before obfuscation; use the decompilation tool ApkTool to decompile the Android application into Smali code, and store the Smali code in units of functions, and then use structural blocks as nodes to The Smali code performs obfuscated control flow graph construction. In addition, methods such as BakSmali and Jeb can also be used to decompile Android applications into Smali codes.

[0058] S2: Obfuscate the Smali code; the process of obfuscating the control flow graph specifically includes inserting redundant control flow graphs, non-reducible control flow graphs, and flattening the control flow graph. In the process of flattening the control fl...

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 dalvik bytecode oriented control flow confusion method, and relates to the field of software protection. The method comprises the following steps that: S1: decompiling an Android application into a Smali code, storing the Smali code by taking a function as a unit, and constructing a confusion control flow graph for the Smali code by taking a structure block as a node; S2:confusing the Smali code, wherein the process of the confusion control flow graph specifically comprises the following steps of inserting a residual control flow, carrying out irreducibility on the control flow graph and flattening the control flow graph, and in the process of flattening the control flow graph, dynamically determining a node unfolding level according to confusion depth; and S3: taking the confused structure block in memory as an output unit, randomly distributing the output position of the structure block to generate a new Smali code. By use of the method, the problem that the protection degree of the Android application is low since the Android application is likely to be reduced due to the low confusion degree of an existing Android control flow confusion method is solved.

Description

technical field [0001] The invention belongs to the field of software protection, and in particular relates to a method for confusing control flow by using control flow insertion, irreducible flow graph and flattening control flow. Background technique [0002] Computer software plays an increasingly important role in all walks of life in society. However, software piracy is rampant due to the characteristics of software itself with no marginal cost, low cost of piracy and high returns. According to the statistics released by IT Juzi on April 1, 2016, the global loss due to software piracy reached 80 billion US dollars in 2015, an increase of 15% over the previous year. The industry urgently needs the support of relevant software protection technologies. [0003] With its own openness, the Android system has captured the love of a large number of developers and hardware manufacturers since it came out in 2007, and the number of application software on the platform has also i...

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): G06F8/41G06F8/53
Inventor 张小松牛伟纳唐海洋熊智鹏
Owner UNIV OF ELECTRONICS SCI & TECH OF CHINA