I'm hoping for Eclipse integration of Proguard.

On Aug 24, 12:38 am, Trevor Johns <[email protected]> wrote:
> So far, in all the cases of cracked apps we've seen, it's been because of
> the following:
>
> 1. The developer did not run a code obfuscating tool (such as ProGuard) on
> their application; and,
> 2. The developer implemented the LVL as a drop-in library, without making
> any modifications to the library code or API.
>
> Let be clear here: the LVL is not a panacea. As shipped, it will protect
> against casual copying. However, if somebody is determined enough to take a
> decompiler to your APK, you have to be a bit more diligent about how you
> integrate it.
>
> There's a reason that we ship the LVL as source code rather than as a JAR
> file. We encourage you to do things like change the entry/exit points,
> subtly tweak the logic in LicenseChecker and LicenseValidator, and even move
> all the entire library into your project's package. Think of the LVL as a
> framework for a license check mechanism: it's an excellent starting point,
> and all the tools (or rather, APIs) you need are there, but don't treat it
> as a black box.
>
> And I *strongly* encourage you to run a code obfuscater, such as ProGuard.
> If you decompile an application and see symbols like allow(), dontAllow(),
> LICENSED, NOT_LICENSED, etc., it gives crackers a pretty good hint what they
> need to modify.
>
> On top of that, pay attention to how you integrate the LVL in your
> application. For example, if your application displays a dialog on license
> failure, imagine what would happen if a cracker disabled the call to display
> your dialog (invoking a method is a single line of bytecode, not difficult
> to comment out). Will your application still terminate if the "Exit" button
> in that dialog never gets pressed?
>
> And even with all of this, I need to be clear: This is a client-side license
> check. It's not bulletproof -- this is the nature of client-side code.
> However, implemented properly, it will make your application *difficult* to
> crack.
>
> And as long as it's not possible to create an auto-crack that works on your
> application (which, if you follow the rules above, shouldn't be possible),
> then it's still an improvement over the old copy protection model, which
> only required a rooted phone to bypass.
>
> And if you feel this still isn't enough protection: If your application has
> an online component to it (for example, a multiplayer game), it's entirely
> possible to upload the license response to your server and perform a
> server-side validation there. (Remember: License responses are
> cryptographically signed. Even if the application has been cracked, the
> actual license response data cannot be tampered with.) You could then refuse
> to serve the online component of your application. Since this is all
> happening on the server-side (read: trusted code), this would be absolutely
> secure against attack.
>
> And yes, we'll be publishing some articles soon on how to use ProGuard and
> other techniques for securing your code against attack -- we do mention
> ProGuard in our documentation, but we should probably be more explicit about
> how to use it.
>
> --
> Trevor Johns
> Google Developer Programs, Androidhttp://developer.android.com
>
>
>
> On Mon, Aug 23, 2010 at 4:31 PM, Jonas Larsson <[email protected]> wrote:
> > An official response would great.
>
> > As I (and many others) see it the main reason for Android app
> > piracy is paid app unavailability in most countries. When most
> > users have the option of being honest and pay, most would.
> > Until Google enables the full Market in all countries the
> > incitement to crack and distribute apps remains.
>
> > When LVL was announced I played with it a bit to see how
> > easy it was to crack. The fact is; it's much easier than the
> > article on AndroidPolice shows. No need to analyze switch
> > statements etc. There is a much better place to modify the
> > disassembled code that makes it trivial to implement a generic
> > patcher using available open source tools and shell scripts.
> > As to where in the (potentially obfuscated code) I refer to
> > I leave that as an exercise for the crackers. Google surely knew
> > all this even before LVL was announced...
>
> > The official response, or lack thereof, will be interesting.
>
> > On Aug 23, 11:50 pm, Brad <[email protected]> wrote:
> > > Well, just as I was finishing adding LVL support to my apps, I come
> > > across this article:
>
> > >http://www.androidpolice.com/2010/08/23/exclusive-report-googles-andr...
>
> > > Of course we all knew that this new copy protection could be broken
> > > (as is the case for all DRM), but I guess I had hoped that it would
> > > take a little more effort.   Looks like this will turn out to be a
> > > "one-click" crack.
>
> > > Will Google up the ante?  Is it a lost cause on such an open platform?
>
> > --
> > You received this message because you are subscribed to the Google
> > Groups "Android Developers" group.
> > To post to this group, send email to [email protected]
> > To unsubscribe from this group, send email to
> > [email protected]<android-developers%[email protected]>
> > For more options, visit this group at
> >http://groups.google.com/group/android-developers?hl=en
>
> --
> Trevor Johns

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to