Title :
ShadObf: A C-Source Obfuscator Based on Multi-objective Optimisation Algorithms
Author :
Bertholon, Benoit ; Varrette, Sebastien ; Martinez, Sonia
Author_Institution :
Luxembourg SnT Interdiciplicary Center, Univ. of Luxembourg, Luxembourg, Luxembourg
Abstract :
The development of the new Cloud Computing paradigm as lead to a reevaluation of the security issues. When running a private code on a Public Cloud or on any remote machine, its owner has no guarantees that the code cannot be reverse engineered, understood and modified. One of the solutions for the code owner in order to protect his intellectual property is to obfuscate his algorithms. The obfuscation of source code is a mechanism to modify a source code to make it unintelligible by humans even with the help of computing resources. More precisely, the objective is to conceal the purpose of a program or its logic without altering its functionality, thus preventing the tampering or the reverse engineering of the program. Obfuscation is usually performed by applying transformations to the initial source code, but it reveals many open questions: what transformation should be chosen? In which order should the obfuscator apply them? How can we quantify the obfuscation capacity of a given program? In order to answer these questions, we propose here ShadObf, an obfuscation framework based on evolutionary heuristics designed to optimise for a given input C program, the sequence of transformations that should be applied to the source code to improve its obfuscation capacity. This last measure involves the combination of well known metrics, coming from the Software Engineering area, which are optimised simultaneously thanks to Multi Objective Evolutionary Algorithms. We have validated our approach over a classical matrix multiplication program - experiments on other applications are still in progress.
Keywords :
C language; cloud computing; data privacy; evolutionary computation; matrix multiplication; security of data; software engineering; C program; C-source obfuscator; ShadObf; cloud computing; code owner; evolutionary heuristics; matrix multiplication program; multiobjective optimisation algorithms; multiojective evolutionary algorithms; obfuscation capacity; obfuscation framework; private code; public cloud; remote machine; software engineering; source code obfuscation; transformations sequence; Complexity theory; Data structures; Evolutionary computation; Measurement; Sociology; Software; Statistics; C; Evolutionary Algorithm; Multi Objective Evolutionary Algorithm; NSGA-II; PIPS; Python; Software Obfuscation; Source-to-source Compilation;
Conference_Titel :
Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), 2013 IEEE 27th International
Conference_Location :
Cambridge, MA
Print_ISBN :
978-0-7695-4979-8
DOI :
10.1109/IPDPSW.2013.234