Code Obfuscation Technique for Enhancing Software Protection Against Reverse Engineering

Author(s):  
Sergiy Gnatyuk ◽  
Vasyl Kinzeryavyy ◽  
Iryna Stepanenko ◽  
Yana Gorbatyuk ◽  
Andrii Gizun ◽  
...  
2012 ◽  
Vol 271-272 ◽  
pp. 636-640
Author(s):  
Yong Yong Sun ◽  
Guang Qiu Huang

The security of software is threatened by piracy, tampering and reverse engineering. Attackers attempt to get important algorithms and sensitive data of software by static analysis or reverse engineering. Software protection becomes an important problem. The algorithm of code obfuscation based on class splitting is proposed that uses of obfuscation technology. The definition of class splitting and realization on algorithm are described. At the same time, the performance on algorithm is analyzed. The obfuscation method enhances the degree of complication about program and static analysis becomes more difficult. The algorithm is applicable to object-oriented program with class structure.


Author(s):  
Pratiksha Gautam ◽  
Hemraj Saini

Over the past few decades ago, software developers analyzed robustly several forms of software protection against illegal copying or piracy. With the expansion in digital technology, the risk of illegal copying of software also amplifies. The increasing piracy rate has posed a serious threat to software developers leading to the development of various software protection techniques. However, various techniques have been proposed for copyright protection such as software watermarking, obfuscation, tamper-proofing and diversity. The code transformation (obfuscation) is a method of transforming a program into a form which is more complicated for an adversary to understand or change the original code from an illegitimate process of reverse engineering. None of the current code obfuscation approaches provide resistance from reverse engineering attacks. The reverse engineering threat occurs due to the unconfined software code to the user. Malicious reverse engineering of software codes can be harder by exertion of code transformation on software programs. To address this, we acquaint a peculiar code transformation approach for software protection. The proposed approach is used semantically equivalent to code clone within the source code to protect logical part of program text. We have successfully implement our approach using open source java project Gantt project system and open source java obfuscator's tools. In this paper, we present our approach and demonstrate it with an illustration. The intent of this method is to prevent static analysis attack and make dynamic attack compact for an adversary. This makes it worthwhile against reverse engineering attacks.


Author(s):  
Bruno de Vuyst

This chapter discusses legal and economic rationale in regards to open source software protection. Software programs are, under TRIPS1, protected by copyright (reference is made to the Berne Convention2). The issue with this protection is that, due to the dichotomy idea/expression that is typical for copyright protection, reverse engineering of software is not excluded, and copyright is hence found to be an insufficient protection. Hence, in the U.S., software makers have increasingly turned to patent protection. In Europe, there is an exclusion of computer programs in Article 52 (2) c) EPC (EPO, 1973), but this exclusion is increasingly narrowed and some call for abandoning the exclusion altogether. A proposal by the European Commission, made in 2002, called for a directive to allow national patent authorities to patent software in a broader way, so as to ensure further against reverse engineering; this proposal, however, was shelved in 2005 over active opposition within and outside the European parliament. In summary, open source software does not fit in any proprietary model; rather, it creates a freedom to operate. Ultimately, there is a need to rethink approaches to property law so as to allow for viable software packaging in both models.


2012 ◽  
Vol 271-272 ◽  
pp. 674-678
Author(s):  
Yong Yong Sun ◽  
Guang Qiu Huang

Software protection technology is necessary for software security and property right of software. The algorithm of code obfuscation based on class is proposed that uses of obfuscation technology. The overall architecture of the system is hidden by changing the class diagram for class aggregation, and the algorithm of class aggregation can be used to design class hierarchy in object-oriented program. It makes static analysis difficult while preserving function of program. The interfaces replace original classes to achieve reference in order to implement type hidden, and automatic analysis becomes more difficult.


2009 ◽  
pp. 2831-2842
Author(s):  
Bruno de Vuyst ◽  
Alea Fairchild

This chapter discusses legal and economic rationale in regards to open source software protection. Software programs are, under TRIPS1, protected by copyright (reference is made to the Berne Convention2). The issue with this protection is that, due to the dichotomy idea/expression that is typical for copyright protection, reverse engineering of software is not excluded, and copyright is hence found to be an insufficient protection. Hence, in the U.S., software makers have increasingly turned to patent protection. In Europe, there is an exclusion of computer programs in Article 52 (2) c) EPC (EPO, 1973), but this exclusion is increasingly narrowed and some call for abandoning the exclusion altogether. A proposal by the European Commission, made in 2002, called for a directive to allow national patent authorities to patent software in a broader way, so as to ensure further against reverse engineering; this proposal, however, was shelved in 2005 over active opposition within and outside the European parliament. In summary, open source software does not fit in any proprietary model; rather, it creates a freedom to operate. Ultimately, there is a need to rethink approaches to property law so as to allow for viable software packaging in both models.


Sign in / Sign up

Export Citation Format

Share Document