Java Image Formats

Welcome to another edition of my personal multimedia research scratchpad. Diego Biurrun forwarded some intelligence about some custom Java image formats. It seems that a company named eyewonder has seen fit to develop a streaming video technology aimed at delivering obnoxious short ads delivered via Java applets.

So, custom Java image formats. Or, more likely, a slightly customized image format that is presently only decodable via some proprietary Java class. As is typical, it is difficult to glean any useful technical details from the website. But if the marketing literature is to be believed, this stuff has caught on in a big way.

Here are some quick links for study.

First step: Unpack the JAR file. Use either the official ‘jar’ command line utility from the 90MB+ JDK download; or, use WinRAR (much smaller download if you do not care about a Java development environment). Other alternatives, particularly for Linux, are welcome.

Update: Thanks again to Diego for helpfully pointing out that the stock ‘unzip’ Unix utility handles JARs just nicely.

There are 11 .class files in the archive: Eyelet.class, a.class, b.class… all the way up to j.class. Next step: Start feeding the .class files into the JAD software. Of course they are obfuscated. The specific obfuscator is named 4thpass SourceGuard Enterprise 4.0, according to the MANIFEST.MF file also distributed in the archive. 4thPass’ site is here and speaks much of secure content delivery and DRM. This source obfuscator is probably there somewhere.

This episode reinforces the need for an automated Java de-obfuscator. Time to think about that task again. Meanwhile, the only thing I have picked up from digging into the decompiled Java source is that whatever algorithm is used seems awfully float-heavy (does that make sense?).

2 thoughts on “Java Image Formats

  1. Multimedia Mike Post author

    Hmm, I wonder if they would be willing the open source their previous solution?

Comments are closed.