Source Code Obfuscation: Novel Technique and Implementation

Author(s):  
Krishna Yadav ◽  
Rutuja Kamble ◽  
Sumit Kale ◽  
Yash Pazare ◽  
Pallavi Ahire
2020 ◽  
Vol 2020 ◽  
pp. 1-15
Author(s):  
Feng Zhang ◽  
Lulu Li ◽  
Cong Liu ◽  
Qingtian Zeng

Source code similarity detection has extensive applications in computer programming teaching and software intellectual property protection. In the teaching of computer programming courses, students may utilize some complex source code obfuscation techniques, e.g., opaque predicates, loop unrolling, and function inlining and outlining, to reduce the similarity between code fragments and avoid the plagiarism detection. Existing source code similarity detection approaches only consider static features of source code, making it difficult to cope with more complex code obfuscation techniques. In this paper, we propose a novel source code similarity detection approach by considering the dynamic features at runtime of source code using process mining. More specifically, given two pieces of source code, their running logs are obtained by source code instrumentation and execution. Next, process mining is used to obtain the flow charts of the two pieces of source code by analyzing their collected running logs. Finally, similarity of the two pieces of source code is measured by computing the similarity of these two flow charts. Experimental results show that the proposed approach can deal with more complex obfuscation techniques including opaque predicates and loop unrolling as well as function inlining and outlining, which cannot be handled by existing work properly. Therefore, we argue that our approach can defeat commonly used code obfuscation techniques more effectively for source code similarity detection than the existing state-of-the-art approaches.


2014 ◽  
Vol 519-520 ◽  
pp. 391-394
Author(s):  
Zhi Yue Wang ◽  
Wei Min Wu

With the rapid development of scripting language, javascript has been widely used in the application and web development industry.One of the main disadvantages of javascript for developers of commercial applications is the ease by which customers and competitors can study, analyze, and reuse the source code . Therefore, this paper proposes a technique of javascript code obfuscation based on control flow tansformations. The experimental results prove that,its effective protect javascript source code.


Author(s):  
Meng Zhang ◽  
Pengcheng Zhang ◽  
Xiapu Luo ◽  
Feng Xiao

Author(s):  
Mariano Ceccato ◽  
Massimiliano Di Penta ◽  
Jasvir Nagra ◽  
Paolo Falcarin ◽  
Filippo Ricca ◽  
...  

2020 ◽  
Vol 2020 ◽  
pp. 1-15
Author(s):  
Feng Zhang ◽  
Guofan Li ◽  
Cong Liu ◽  
Qian Song

Source code similarity detection has various applications in code plagiarism detection and software intellectual property protection. In computer programming teaching, students may convert the source code written in one programming language into another language for their code assignment submission. Existing similarity measures of source code written in the same language are not applicable for the cross-language code similarity detection because of syntactic differences among different programming languages. Meanwhile, existing cross-language source similarity detection approaches are susceptible to complex code obfuscation techniques, such as replacing equivalent control structure and adding redundant statements. To solve this problem, we propose a cross-language code similarity detection (CLCSD) approach based on code flowcharts. In general, two source code fragments written in different programming languages are transformed into standardized code flowcharts (SCFC), and their similarity is obtained by measuring their corresponding SCFC. More specifically, we first introduce the standardized code flowchart (SCFC) model to be the uniform flowcharts representation of source code written in different languages. SCFC is language-independent, and therefore, it can be used as the intermediate structure for source code similarity detection. Meanwhile, transformation techniques are given to transform source code written in a specific programming language into an SCFC. Second, we propose the SCFC-SPGK algorithm based on the shortest path graph kernel to measure the similarity between two SCFCs. Thus, the similarity between two pieces of source code in different programming languages is given by the similarity between SCFCs. Experimental results show that compared with existing approaches, CLCSD has higher accuracy in cross-language source code similarity detection. Furthermore, CLCSD cannot only handle common source code obfuscation techniques used by students in computer programming teaching but also obtain nearly 90% accuracy in dealing with some complex obfuscation techniques.


2013 ◽  
Vol 61 (9) ◽  
pp. 46-50
Author(s):  
Veena Garg ◽  
Atul Srivastava ◽  
Atul Mishra

TEM Journal ◽  
2021 ◽  
pp. 1166-1174
Author(s):  
Akshara Pande ◽  
Vivekanand Pant ◽  
Manjari Gupta ◽  
Alok Mishra

The role of design pattern mining is a very significant strategy of re-engineering as with the help of detection one could easily understand complex systems. Of course, identifying a design pattern is not always a simple task. Additionally, pattern recovering methods often encounter problems dealing with space outburst for extensive systems. This paper introduces a new way to discover a design pattern based on an Impact Analysis matrix followed by substring match. UML diagrams corresponding to codes are created using Visual Paradigm Enterprise. Impact Analysis matrices of these UML diagrams are converted to string format. Considering system code string as main string and design pattern string as a substring, the main string is further decomposed. A substring match technique is developed here to discover design patterns in the source code. Overall, this procedure has the potential to convert the representation of system design and design pattern in ingenious shapes. In addition, this method has the advantage of moderation in the size. Therefore, this approach is beneficial for Software professionals and researchers due to its simplicity.


Author(s):  
Alessio Viticchie ◽  
Leonardo Regano ◽  
Marco Torchiano ◽  
Cataldo Basile ◽  
Mariano Ceccato ◽  
...  
Keyword(s):  

Sign in / Sign up

Export Citation Format

Share Document