Search code examples
androiddictionarycopy-protection

Contents protection (licensing) for a Dictionary app for Android


We are developing a dictionary application for Android. We have bought authorized dictionary contents from authoritative presses and would have them bundled in the app. Protection of the contents after shipment of the app is a must. For performance efficiency and ease of development, we would want to store the dictionary contents as SQLite database tables.

We plan to pre-install the dictionary app together with the dictionary contents for tablets - we have a customer who is an android tablet vendor, and continue to provide customer with upcoming dictionary titles via Android Market or some other on-line purchase mechanism.

My question is:

  1. For the case where the app and the contents is pre-installed on the Android tablets, what encryption mechanism is safe enough to protect the contents from being hacked.
  2. For the case where the newly added titles for on-line purchase, is there a good example for us to follow?

Solution

  • You can do nothing to prevent the contents from being "hacked". If the Android OS can decode and use the contents of the database then so can anyone else if they reverse engineer your app. You could, I suppose, put some effort into protecting the data, so that your supplier is happy that you've made casual hacking harder/impossible, but they're deluding themselves if they believe that any company they've licensed their IP to can guarantee that any protection scheme will protect their data.

    You must consider keeping the data on a server somewhere, and only access it remotely using an app if protection is more important than convenience.