Questions tagged [obfuscation]

Obfuscation is the process by which the code is altered so that a developer finds it much harder to understand clearly what the intended program does or how it operates. The larger the program the greater the obfuscation, as code becomes intertwined linking different segments through out the program.

While it may be possible to use a disassembler to figure out how certain aspects within a program function, it requires knowledge of assembly. Assembly language by its nature is non-trivial.

Another way to increase obfuscation is to use packers.

2987 questions
42
votes
4 answers

How can I obfuscate my c# code, so it can't be deobfuscated so easily?

I release a bunch of tools for free, but recently I have began to sell an application, that has private research, and people have been able to get my source code, and one person publically released my entire source. I spent a lot of time on this…
Ben
  • 749
  • 1
  • 7
  • 18
41
votes
4 answers

Proguard keep class names?

Hello I am writing an Android app and I have set up Proguard to obfuscate my application. I however use a classloader to dynamically load different extensions to my application. The problem is that these don't load correctly if their names are…
Nik
  • 1,033
  • 2
  • 11
  • 28
40
votes
16 answers

Should you obfuscate a commercial .Net application?

I was thinking about obfuscating a commercial .Net application. But is it really worth the effort to select, buy and use such a tool? Are the obfuscated binaries really safe from reverse engineering?
lowglider
  • 1,087
  • 2
  • 11
  • 21
40
votes
9 answers

Remove all the line breaks from the html source

Well I know obfuscation is a bad idea. But I want all of my html code to come in one long single line. All the html tags are generated through PHP, so I think its possible. I knew replacing \n\r from regular expression, but have no idea how to do…
mrN
  • 3,734
  • 15
  • 58
  • 82
39
votes
1 answer

Android ProGuard - only obfuscation

Is it possible to use ProGuard for only obfuscation. I don't want ProGuard to remove any classes from my projects. My intention to use ProGuard is only for obfuscation so as to prevent reverse engineering.
Vinoth
  • 5,687
  • 11
  • 44
  • 56
39
votes
4 answers

Android Proguard Javascript Interface Fail

I use in my project a piece of code as described here http://lexandera.com/2009/01/extracting-html-from-a-webview/ I create the .apk file, install it on my device and it correctly works. If I try to use the obfuscation with proguard the project…
Denis
  • 423
  • 1
  • 5
  • 9
39
votes
7 answers

Python Code Obfuscation

Do you know of any tool that could assist me in obfuscating python code?
vishal
39
votes
4 answers

How can I say "love" without character or digits in JavaScript?

Inspired by Ryan Barnett's PPT of BlackHat DC 2011, especially the code below: ($=[$=[]][(__=!$+$)[_=-~-~-~$]+({}+$)[_/_]+ ($$=($_=!''+$)[_/_]+$_[+$])])()[__[_/_]+__ [_+~$]+$_[_]+$$](_/_) Yesterday was special day for lovers, so I tried to write…
ccppjava
  • 2,595
  • 3
  • 24
  • 30
39
votes
3 answers

Proguard and reflection in Android

I have just used proguard, but classes I am trying to instantiate via reflection are not working. I have an interface Algorithm I pass classes like this AlgorithmFactory.SomeClassThatExtendsAlgorithmImpl.class The class is instantiated like…
jax
  • 37,735
  • 57
  • 182
  • 278
39
votes
5 answers

Can I encrypt my JSON data?

I'm developing a JQuery web app that will be executed locally from a DVD. The app will read all the contents of a JSON file. Is there a good way to encrypt or obfuscate the JSON content so that only the app can read it?
Cris
  • 12,124
  • 27
  • 92
  • 159
37
votes
11 answers

What is the difference between Obfuscation, Hashing, and Encryption?

What is the difference between Obfuscation, Hashing, and Encryption? Here is my understanding: Hashing is a one-way algorithm; cannot be reversed Obfuscation is similar to encryption but doesn't require any "secret" to understand (ROT13 is one…
Robert Taylor
  • 2,860
  • 3
  • 21
  • 19
36
votes
8 answers

How to obfuscate Flutter apps?

Flutter's wiki mentions obfuscation is an opt-in in release mode. And yet, the flutter build command has no relevant option - see: flutter help -v build apk Am I missing something here? Did they make obfuscation the default? Is obfuscation even…
Ehud Banunu
  • 907
  • 2
  • 8
  • 14
36
votes
6 answers

Obfuscator which supports WPF properly

What options exist for a good obfuscator tool for .NET which propertly support WPF in .NET 4.0? In particular, which obfuscation tools handle rewriting of BAML within WPF assemblies, and handle cross-assembly references within BAML? While most…
Reed Copsey
  • 554,122
  • 78
  • 1,158
  • 1,373
36
votes
1 answer

How can I obfuscate only com.foo.* and com.bar.* (ProGuard)?

I want to obfuscate only some packages: com.foo.* com.bar.* I have tried -keepclasseswithmembers class **, !com.foo.**, !com.bar.** { *; } and -keepclasseswithmembers class !com.foo.** { *; } -keepclasseswithmembers class !com.bar.** { *; } In…
alex2k8
  • 42,496
  • 57
  • 170
  • 221
35
votes
9 answers

How to hide strings in a exe or a dll?

I discovered that it is possible to extract the hard-coded strings from a binary. For example the properties view of Process Explorer displays all the string with more than 3 characters. Here is the code of a simple executable that I wrote to simply…