• Nigerian/African Tech
  • Start Up
  • Internet
    • App
    • Mobile
    • Software
  • Gadgets
  • Money
  • Video
Tech News, Magazine & Review WordPress Theme 2017
  • Home
  • Africa
  • Business
  • Video
  • Metaverse
  • AI
  • Gadgets
  • Earnings
  • Tips
Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
  • Home
  • Africa
  • Business
  • Video
  • Metaverse
  • AI
  • Gadgets
  • Earnings
  • Tips
Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
TechBooky
Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
Home Programming

Code Obfuscation: What It Is And Should You Use It?

Contributor by Contributor
April 8, 2021
Share on FacebookShare on Twitter

Certain programming languages like .NET and Java can very easily be decompiled to readable sources. There are a lot of definitions about the code obfuscation, but to explain it better we the code obfuscation is the process that makes your application binaries slightly harder to read with a decompiler. It is a very important tool to protect the intellectual property of your business.

Why Obfuscate Code?

Some compiled languages get converted directly to bytecode, for example C++. If you want to reverse engineer, the only way to work is with a disassembler, which is a complicated and arduous process. Though, it is not impossible, inferring high level app logic from a stream of assembly language is quite difficult.

On the other side, languages like Java and C# are not compiled for any particular OS. They are more complied to an intermediary language, such as MSIL from .NET’s. This intermediary language is very similar to assembly, but it’s very easily converted back into the source code. So this does mean that in case you have a executable or public Dynamic-link library (DLL), anyone who possesses a copy of your executable are able to open it up in, let’s say dotPeek (.NET decompiler), and directly read your source code, and copy it as well.

Any .NET DLL can be plugged into a decompiler, so code obfuscation cannot prevent this process. But what obfuscation does is use a number of things in order to make the source code very annoying to read and debug.

Renaming is the simplest form of this entity. It is a very common practice to properly name all of the methods, variables, parameters and classes according to what function they do. But of course you don’t have to do that, so there is nothing that is really stopping you from naming them with lowercase L’s and I, or random similar combinations of unicode characters, just to make the code very hard to read and debug. For the computer it is all the same, but to a human is very difficult to distinguish.

It could look something like this:

IlIIIIlIIIllIIIllIIll

lIIIllIIllIlIIIIlIIIl

(neat, right?)

This process will be handled automatically by a basic obfuscator, taking the output from the build and then converting it to something that is really, really hard to read. By doing this there is no performance decrease to non-obfuscated code.

There are types of advanced obfuscators that can make it possible to change the structure of the source code. This means it can replace control structures with identical syntax but it looks more complicated.

It can also embed a code that doesn’t do anything, but it would make it harder to read for the decompiler. This means the source would look like ‘spaghetti code’ – which means it would annoy anyone who tries to read the code.

Hiding strings – is one of the common things. In this way, string obfuscation can replace strings with encoded messages – which are also decrypted, and it makes it difficult to search for them from a decompiler.

There are lots of options for obfuscators, it depends on the language the obfuscators are using. For example, Obfuscar, ProGuard, Javascript-obfuscator. etc.

Also On TechBooky

All You Need To Know About ChatGPT And Whether It Will Take On Google

C Is The Most Environmentally Friendly Programming Language

Here’s What You Need To Know To Get Started With Docker

Here Are Some Reasons To Learn Go in 2022

How To Build Secure Software With AngularJS


Another option: You can convert to a Compiled Language

Actually, you can convert one programming language to another one, isn’t that a hard or crazy idea. It is an effective way to secure games from cracking, and it is an important step to do when protecting from piracy and cheaters. For example, Unity uses an IL2CPP converter to transform .NET code into C++ bytecode.

Is it necessary to Obfuscate?

Untrusted environments exist – so if you are using a code, and you want to secure it, it is important to use an obfuscator to make decompiling hard.

Securing your code is a must. Using an obfuscator is a must. If you don’t want anybody to decompile your app, you should try switching to a language that doesn’t have these problems.

Related Posts:

  • 3 Easy Ways To Teach Programming To Your Children
    3 Easy Ways To Teach Programming To Your Children
  • 5 Pointers To Assist You In Becoming A Successful Software Developer
    5 Pointers To Assist You In Becoming A Successful Software…
  • Four Popular Programming Languages For Artificial Intelligence
    Four Popular Programming Languages For Artificial…
  • App Development Programming Languages That Developers Should Know
    App Development Programming Languages That Developers Should…
  • C Is The Most Environmentally Friendly Programming Language
    C Is The Most Environmentally Friendly Programming Language
  • Here Are Some Reasons To Learn Go in 2022
    Here Are Some Reasons To Learn Go in 2022
  • There Is A Rising Demand For JAVA Developers In 2021
    There Is A Rising Demand For JAVA Developers In 2021
  • Why Flutter Is An Ideal Choice For Cross-Platform App Development
    Why Flutter Is An Ideal Choice For Cross-Platform App…
Tags: codecode obfuscatorprogrammingsoftware
Contributor

Contributor

Posts by contributors. You can send in a post to be reviewed and published to info@techbooky.com

BROWSE BY CATEGORIES

Receive top tech news directly in your inbox

Loading

Recent

Israeli Startup Introduces Smart Farm For Fresh Green Superfood

Israeli Startup Introduces Smart Farm For Fresh Green Superfood

January 31, 2023
Twitter Pay? Elon Musk Applies To Get Payment Gateway License For Twitter

Twitter Pay? Elon Musk Applies To Get Payment Gateway License For Twitter

January 31, 2023
A Wider Digital Voting System In Nigeria And Diaspora Participation

A Wider Digital Voting System In Nigeria And Diaspora Participation

January 31, 2023
Jail Threats Stop ‘Robot Lawyer’ From Making Debut In Court

Jail Threats Stop ‘Robot Lawyer’ From Making Debut In Court

January 30, 2023
How Google’s Sparrow AI Tool Is Looking To Kill ChatGPT

How Google’s Sparrow AI Tool Is Looking To Kill ChatGPT

January 30, 2023
Nigeria’s Apex Bank Launches Domestic Card Scheme – AfriGO

Nigeria’s Apex Bank Launches Domestic Card Scheme – AfriGO

January 30, 2023
Tesla Cybertruck Mass Production Won’t Start Until 2024

Tesla Cybertruck Mass Production Won’t Start Until 2024

January 27, 2023
Apple Reportedly Delays Development Of Its Own WiFi Chips

Apple Reportedly Delays Development Of Its Own WiFi Chips

January 27, 2023
Google Commits To Complying With EU Laws On Its Services

Google Commits To Complying With EU Laws On Its Services

January 27, 2023
Airtel Launches Its eSIM Technology In Nigeria

Airtel Launches Its eSIM Technology In Nigeria

January 27, 2023

Browse Archives

February 2023
MTWTFSS
 12345
6789101112
13141516171819
20212223242526
2728 
« Jan    

About Us

TechBooky

TechBooky is a social Tech blog with a special focus on the budding African Technology sector. TechBooky is currently based in Abuja, Nigeria.

Subscribe to TechBooky

Enter your email address to subscribe to TechBooky and receive notifications of new posts by email.

Join 24 other subscribers.

Receive top tech news directly in your inbox

Loading

Popular Tags

AI (255) amazon (95) android (281) app (610) Apple (473) artificial intelligence (268) business (342) china (113) cloud (135) cryptocurrency (158) ecommerce (109) enterprise (240) facebook (472) gadget (448) gaming (160) google (546) government (383) guest post (108) instagram (137) internet (352) ios (249) iphone (210) microsoft (261) mobile (281) new feature (287) nigeria (278) privacy (135) research (134) samsung (139) security (375) smartphone (235) social media (671) software (416) startup (269) streaming (140) telecom (157) tips (340) transport (104) twitter (217) united states (191) users (132) videos (115) website (160) whatsapp (129) youtube (106)

Quick Links

  • Home
  • Africa
  • Business
  • Video
  • Metaverse
  • AI
  • Gadgets
  • Earnings
  • Tips

Popular Post

  • Trending
  • Comments
  • Latest
Download Free Editable Resume Templates – Word / Docx – 2022

Download Free Editable Resume Templates – Word / Docx – 2022

July 25, 2022
The Best Free PC Games

The Best Free PC Games

July 29, 2022
Recover Permanently Deleted Emails From iCloud Manually

Recover Permanently Deleted Emails From iCloud Manually

March 5, 2022
Resume and Cover letter Templates for free

Resume and Cover letter Templates for free

July 25, 2022
[Fixed] “Outlook Running Slow Windows 10” Issue

[Fixed] “Outlook Running Slow Windows 10” Issue

February 12, 2020
How is Technology Changing Our Definition of What It Means to Be a Human?

How is Technology Changing Our Definition of What It Means to Be a Human?

April 1, 2018
Israeli Startup Introduces Smart Farm For Fresh Green Superfood

Israeli Startup Introduces Smart Farm For Fresh Green Superfood

January 31, 2023
Twitter Pay? Elon Musk Applies To Get Payment Gateway License For Twitter

Twitter Pay? Elon Musk Applies To Get Payment Gateway License For Twitter

January 31, 2023
A Wider Digital Voting System In Nigeria And Diaspora Participation

A Wider Digital Voting System In Nigeria And Diaspora Participation

January 31, 2023
Jail Threats Stop ‘Robot Lawyer’ From Making Debut In Court

Jail Threats Stop ‘Robot Lawyer’ From Making Debut In Court

January 30, 2023
How Google’s Sparrow AI Tool Is Looking To Kill ChatGPT

How Google’s Sparrow AI Tool Is Looking To Kill ChatGPT

January 30, 2023
Nigeria’s Apex Bank Launches Domestic Card Scheme – AfriGO

Nigeria’s Apex Bank Launches Domestic Card Scheme – AfriGO

January 30, 2023

Recent News

Israeli Startup Introduces Smart Farm For Fresh Green Superfood

Israeli Startup Introduces Smart Farm For Fresh Green Superfood

January 31, 2023
Twitter Pay? Elon Musk Applies To Get Payment Gateway License For Twitter

Twitter Pay? Elon Musk Applies To Get Payment Gateway License For Twitter

January 31, 2023
A Wider Digital Voting System In Nigeria And Diaspora Participation

A Wider Digital Voting System In Nigeria And Diaspora Participation

January 31, 2023
Jail Threats Stop ‘Robot Lawyer’ From Making Debut In Court

Jail Threats Stop ‘Robot Lawyer’ From Making Debut In Court

January 30, 2023
How Google’s Sparrow AI Tool Is Looking To Kill ChatGPT

How Google’s Sparrow AI Tool Is Looking To Kill ChatGPT

January 30, 2023
Nigeria’s Apex Bank Launches Domestic Card Scheme – AfriGO

Nigeria’s Apex Bank Launches Domestic Card Scheme – AfriGO

January 30, 2023
  • About TechBooky
  • Submit Article
  • Advertise Here
  • Contact us
  • Privacy Policy
  • Disclaimer
  • Login

© 2021 Design By Tech Booky Elite

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
  • Home
  • Africa
  • Business
  • Video
  • Metaverse
  • AI
  • Gadgets
  • Earnings
  • Tips

© 2021 Design By Tech Booky Elite