Meaningless Drivel is fun!*
The moose likes Java in General and the fly likes How to deobfuscate jar file Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of EJB 3 in Action this week in the EJB and other Java EE Technologies forum!
JavaRanch » Java Forums » Java » Java in General
Bookmark "How to deobfuscate jar file" Watch "How to deobfuscate jar file" New topic
Author

How to deobfuscate jar file

VinothKumar Kuttiappan
Greenhorn

Joined: Oct 01, 2009
Posts: 3
Hi,

Thanks in Advance

Is there is any open source tool for deobfuscation?

Not able to read the decompiled files its showing class/method as A/B/C etc

Regards
Vinoth

Kemal Sokolovic
Bartender

Joined: Jun 19, 2010
Posts: 825
    
    5

Why would you want to do that? If you got someone else's .jar without the source code, than you're surely not intended to see or use it.


The quieter you are, the more you are able to hear.
Ulf Dittmer
Marshal

Joined: Mar 22, 2005
Posts: 39530
    
  27
No, that information is no longer in the class file.


Ping & DNS - updated with new look and Ping home screen widget
Jayesh A Lalwani
Bartender

Joined: Jan 17, 2008
Posts: 2051
    
  22

You can deobfuscate an obfuscated jar file manually. Unfortunately, you need a mind of a Vulcan to do it. So, until humanity discovers space travel, gets in contact with an alien race of superior intellect, that doesn't want to exterminate us, NO!
VinothKumar Kuttiappan
Greenhorn

Joined: Oct 01, 2009
Posts: 3
Thanks for the quick response

@Kemal Sokolovic Got third party jar want to know whats happening
@Jayesh :-)
fred rosenberger
lowercase baba
Bartender

Joined: Oct 02, 2003
Posts: 10905
    
  12

VinothKumar Kuttiappan wrote:
@Kemal Sokolovic Got third party jar want to know whats happening

I'd suggest you read a) their EULA and b) their documentation. Often, the EULA says that it is a violation to try and reverse engineer their code. Their documentation should tell you all you need to know.


There are only two hard things in computer science: cache invalidation, naming things, and off-by-one errors
Ivan Jozsef Balazs
Rancher

Joined: May 22, 2012
Posts: 865
    
    5
Ulf Dittmer wrote:No, that information is no longer in the class file.


Method names (and arg types) are present in the classfiles.
Paul Clapham
Bartender

Joined: Oct 14, 2005
Posts: 18110
    
    8

It's true, the method names are in the class files. But after the obfuscator gets through with its task of renaming method "getLastPayrollPeriod" to "d", all you have in the class files is "d" and "getLastPayrollPeriod" is nowhere to be found.
Mike Simmons
Ranch Hand

Joined: Mar 05, 2008
Posts: 2969
    
    9
fred rosenberger wrote:Their documentation should tell you all you need to know.

I think you may live in a different world than I do.
Ulf Dittmer
Marshal

Joined: Mar 22, 2005
Posts: 39530
    
  27
Ivan Jozsef Balazs wrote:Method names (and arg types) are present in the classfiles.

Vinoth is asking about human-comprehensible names (e.g., the original ones). In an obfuscated class, that information is not present.
fred rosenberger
lowercase baba
Bartender

Joined: Oct 02, 2003
Posts: 10905
    
  12

Mike Simmons wrote:
fred rosenberger wrote:Their documentation should tell you all you need to know.

I think you may live in a different world than I do.

In my defense....I did say "should"...
Rishi Shah
Ranch Hand

Joined: Sep 05, 2012
Posts: 43

Jayesh A Lalwani wrote:You can deobfuscate an obfuscated jar file manually. Unfortunately, you need a mind of a Vulcan to do it. So, until humanity discovers space travel, gets in contact with an alien race of superior intellect, that doesn't want to exterminate us, NO!


If you know the obfuscation tool used (e.g. ZKM), you can use byte code engineering (ASM/BCEL) to deob it (in ZKM's case, fix the flow control). If you don't know the method used, you can analyze it, and more times than not, it will be using a popular obfuscation tool.
VinothKumar Kuttiappan
Greenhorn

Joined: Oct 01, 2009
Posts: 3
Thanks all of you

One sample class, interested in knowing original class/method names

Ulf Dittmer
Marshal

Joined: Mar 22, 2005
Posts: 39530
    
  27
Again:
Ulf Dittmer wrote:No, that information is no longer in the class file.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: How to deobfuscate jar file
 
Similar Threads
Deobfuscators
WA #1.....word association