1

This looks like an extremely silly question even to me, but anyway, I'm curious:

Is there a way to protect an Adobe Air application with hardware key (aka Software Protection Dongle)?

I'm looking into developing a certain application that would require such key as a protection from being pirated (I can't change that fact), and it looks like that using Adobe Flash is the easiest way to write what this particular application should do.

Alexander Gladysh
  • 39,865
  • 32
  • 103
  • 160
  • How application must communicate with the dongle? This task may be easy or impossible depending of this. – alxx Feb 18 '11 at 15:00
  • Well, I need dongle to protect the application from being pirated (this is a requirement from the customer), I do not need any communications with dongle (or maybe I'm missing something). – Alexander Gladysh Feb 18 '11 at 15:11
  • If app don't communicate with it, how it supposed to protect it? I just wonder why do you think Flash is easiest way, with no USB or any other bus support to detect dongle. – alxx Feb 18 '11 at 19:06
  • Easiest way to code the *application business logic*, not to implement the protection. – Alexander Gladysh Feb 18 '11 at 20:31
  • About protection: well, the usual: encryption. Note that I'm not going to implement myself the actual protection code in the Flash, that would be silly. I suppose that such protection, if it does exist, should be built in into the Adobe Air itself (or, maybe, use some kind of generic OS-specific application security means). – Alexander Gladysh Feb 18 '11 at 20:35
  • Actually, AIR application (swf file) are quite easily decompiled. Unprotected swf is almost equivalent to exposed source code. That's way protection tools like SecureSWF exist. – alxx Feb 20 '11 at 06:35

2 Answers2

4

If you are writing purely in Flash then you could use a product like SWF Studio (or Zinc ) which encrypts the flash file and produces and executable file. It needs to be encrypted because in a standard flash executable file the swf data can easily be extracted. Then you can protect this executable file using a Shell wrapper which ties it to a dongle. I did this using SWF Studio and Dinkey Dongles with my flash executable and it worked very well.

Links:

SWF Studio

Dinkey Dongles

Nick Smith
  • 146
  • 2
0

AIR applications have no support for hardware dongles and don't even possess decent protection from decompiling. I imagine the dongle can be detected with some helper application called with NativeProcess, but this will require different helper for each OS. Also, without obfuscation all this will be pointless. See Trillix SWF Decompiler for decompilation and SecureSWF for obfuscation.

alxx
  • 9,897
  • 4
  • 26
  • 41