An Effective Method for Comparing Control Flow Graphs through Edge Extension


KIPS Transactions on Computer and Communication Systems, Vol. 2, No. 8, pp. 317-326, Aug. 2013
10.3745/KTCCS.2013.2.8.317,   PDF Download:

Abstract

In this paper, we present an effective method for comparing control flow graphs which represent static structures of binary programs. To compare control flow graphs, we measure similarities by comparing instructions and syntactic information contained in basic blocks. In addition, we also consider similarities of edges, which represent control flows between basic blocks, by edge extension. Based on the comparison results of basic blocks and edges, we match most similar basic blocks in two control flow graphs, and then calculate the similarity between control flow graphs. We evaluate the proposed edge extension method in real world Java programs with respect to structural similarities of their control flow graphs. To compare the performance of the proposed method, we also performed experiments with a previous structural comparison for control flow graphs. From the experimental results, the proposed method is evaluated to have enough distinction ability between control flow graphs which have different structural characteristics. Although the method takes more time than previous method, it is evaluated to be more resilient than previous method in comparing control flow graphs which have similar structural characteristics. Control flow graph can be effectively used in program analysis and understanding, and the proposed method is expected to be applied to various areas, such as code optimization, detection of similar code, and detection of code plagiarism.


Statistics
Show / Hide Statistics

Statistics (Cumulative Counts from September 1st, 2017)
Multiple requests among the same browser session are counted as one view.
If you mouse over a chart, the values of data points will be shown.


Cite this article
[IEEE Style]
H. I. Lim, "An Effective Method for Comparing Control Flow Graphs through Edge Extension," KIPS Transactions on Computer and Communication Systems, vol. 2, no. 8, pp. 317-326, 2013. DOI: 10.3745/KTCCS.2013.2.8.317.

[ACM Style]
Hyun Il Lim. 2013. An Effective Method for Comparing Control Flow Graphs through Edge Extension. KIPS Transactions on Computer and Communication Systems, 2, 8, (2013), 317-326. DOI: 10.3745/KTCCS.2013.2.8.317.