Hybrid Obfuscation Technique to Protect Source Code From Prohibited Software Reverse Engineering

In this research, a new Hybrid Obfuscation Technique was proposed to prevent prohibited Reverse Engineering. The proposed hybrid technique contains three approaches; first approach is string encryption. The string encryption is about adding a mathematical equation with arrays and loops to the string...

Full description

Bibliographic Details
Main Authors: Asma'a Mahfoud Hezam Al-Hakimi, Abu Bakar Md Sultan, Abdul Azim Abdul Ghani, Norhayati Mohd Ali, Novia Indriaty Admodisastro
Format: Article
Language:English
Published: IEEE 2020-01-01
Series:IEEE Access
Subjects:
Online Access:https://ieeexplore.ieee.org/document/9211395/
id doaj-99ebc92743cd474d8b72d5cfd416a62e
record_format Article
spelling doaj-99ebc92743cd474d8b72d5cfd416a62e2021-03-30T03:46:30ZengIEEEIEEE Access2169-35362020-01-01818732618734210.1109/ACCESS.2020.30284289211395Hybrid Obfuscation Technique to Protect Source Code From Prohibited Software Reverse EngineeringAsma'a Mahfoud Hezam Al-Hakimi0https://orcid.org/0000-0002-4038-5203Abu Bakar Md Sultan1https://orcid.org/0000-0002-8962-0112Abdul Azim Abdul Ghani2https://orcid.org/0000-0002-1719-7335Norhayati Mohd Ali3Novia Indriaty Admodisastro4https://orcid.org/0000-0002-1715-946XDepartment of Software Engineering and Information System, Faculty of Computer Science and Information Technology, Universiti Putra Malaysia (UPM), Serdang, MalaysiaDepartment of Software Engineering and Information System, Faculty of Computer Science and Information Technology, Universiti Putra Malaysia (UPM), Serdang, MalaysiaDepartment of Software Engineering and Information System, Faculty of Computer Science and Information Technology, Universiti Putra Malaysia (UPM), Serdang, MalaysiaDepartment of Software Engineering and Information System, Faculty of Computer Science and Information Technology, Universiti Putra Malaysia (UPM), Serdang, MalaysiaDepartment of Software Engineering and Information System, Faculty of Computer Science and Information Technology, Universiti Putra Malaysia (UPM), Serdang, MalaysiaIn this research, a new Hybrid Obfuscation Technique was proposed to prevent prohibited Reverse Engineering. The proposed hybrid technique contains three approaches; first approach is string encryption. The string encryption is about adding a mathematical equation with arrays and loops to the strings in the code to hide the meaning. Second approach is renaming system keywords to Unicode to increase the difficulty and complexity of the code. Third approach is transforming identifiers to junk code to hide the meaning and increase the complexity of the code. An experiment was conducted to evaluate the proposed Hybrid Obfuscation Technique. The experiment contains two phases; the first phase was conducting reverse engineering against java applications that do not use any protection to determine the ability of reversing tools to read the compiled code. The second phase was conducting reverse engineering against the proposed technique to evaluate the effectiveness of it. The experiment of the hybrid obfuscation technique was to test output correctness, syntax, reversed code errors, flow test, identifiers names test, methods, and classes correctness test. With these parameters, it was possible to determine the ability of the proposed technique to defend the attack. The experiment has presented good and promising results, where it was nearly impossible for the reversing tool to read the obfuscated code. Even the revealed code did not perform as well as original and obfuscated code.https://ieeexplore.ieee.org/document/9211395/Obfuscation techniquesreverse engineering (RE)anti reverse engineeringintellectual propertysoftware securitypiracy
collection DOAJ
language English
format Article
sources DOAJ
author Asma'a Mahfoud Hezam Al-Hakimi
Abu Bakar Md Sultan
Abdul Azim Abdul Ghani
Norhayati Mohd Ali
Novia Indriaty Admodisastro
spellingShingle Asma'a Mahfoud Hezam Al-Hakimi
Abu Bakar Md Sultan
Abdul Azim Abdul Ghani
Norhayati Mohd Ali
Novia Indriaty Admodisastro
Hybrid Obfuscation Technique to Protect Source Code From Prohibited Software Reverse Engineering
IEEE Access
Obfuscation techniques
reverse engineering (RE)
anti reverse engineering
intellectual property
software security
piracy
author_facet Asma'a Mahfoud Hezam Al-Hakimi
Abu Bakar Md Sultan
Abdul Azim Abdul Ghani
Norhayati Mohd Ali
Novia Indriaty Admodisastro
author_sort Asma'a Mahfoud Hezam Al-Hakimi
title Hybrid Obfuscation Technique to Protect Source Code From Prohibited Software Reverse Engineering
title_short Hybrid Obfuscation Technique to Protect Source Code From Prohibited Software Reverse Engineering
title_full Hybrid Obfuscation Technique to Protect Source Code From Prohibited Software Reverse Engineering
title_fullStr Hybrid Obfuscation Technique to Protect Source Code From Prohibited Software Reverse Engineering
title_full_unstemmed Hybrid Obfuscation Technique to Protect Source Code From Prohibited Software Reverse Engineering
title_sort hybrid obfuscation technique to protect source code from prohibited software reverse engineering
publisher IEEE
series IEEE Access
issn 2169-3536
publishDate 2020-01-01
description In this research, a new Hybrid Obfuscation Technique was proposed to prevent prohibited Reverse Engineering. The proposed hybrid technique contains three approaches; first approach is string encryption. The string encryption is about adding a mathematical equation with arrays and loops to the strings in the code to hide the meaning. Second approach is renaming system keywords to Unicode to increase the difficulty and complexity of the code. Third approach is transforming identifiers to junk code to hide the meaning and increase the complexity of the code. An experiment was conducted to evaluate the proposed Hybrid Obfuscation Technique. The experiment contains two phases; the first phase was conducting reverse engineering against java applications that do not use any protection to determine the ability of reversing tools to read the compiled code. The second phase was conducting reverse engineering against the proposed technique to evaluate the effectiveness of it. The experiment of the hybrid obfuscation technique was to test output correctness, syntax, reversed code errors, flow test, identifiers names test, methods, and classes correctness test. With these parameters, it was possible to determine the ability of the proposed technique to defend the attack. The experiment has presented good and promising results, where it was nearly impossible for the reversing tool to read the obfuscated code. Even the revealed code did not perform as well as original and obfuscated code.
topic Obfuscation techniques
reverse engineering (RE)
anti reverse engineering
intellectual property
software security
piracy
url https://ieeexplore.ieee.org/document/9211395/
work_keys_str_mv AT asmaamahfoudhezamalhakimi hybridobfuscationtechniquetoprotectsourcecodefromprohibitedsoftwarereverseengineering
AT abubakarmdsultan hybridobfuscationtechniquetoprotectsourcecodefromprohibitedsoftwarereverseengineering
AT abdulazimabdulghani hybridobfuscationtechniquetoprotectsourcecodefromprohibitedsoftwarereverseengineering
AT norhayatimohdali hybridobfuscationtechniquetoprotectsourcecodefromprohibitedsoftwarereverseengineering
AT noviaindriatyadmodisastro hybridobfuscationtechniquetoprotectsourcecodefromprohibitedsoftwarereverseengineering
_version_ 1724182865832312832