3

We know there are several moving parts to a system like the apple store or google play. At the very least;

  • The device has a unique hardware id or sim card
  • The user has a login/pass
  • The "store" site has some crypto

In what order and format (cypher/plaintext) is this data exchanged between the device and store software before content is installed?

1 Answer 1

3
+50

This is a very general question, and the answer will differ depending on the application interface you're using.

Generally:

  • Content is encrypted. You need a "key" to unlock it.
  • The "key" is attained by synchronizing the local profile with a master server.
  • Typical authentication methods are used to login to the master server.
  • All communication to the master server is typically over SSL/encrypted channels.
  • Your profile on the master server will contain all the purchases you have performed, and this is used to generate keys to unlock encrypted content.
  • Keys can be revoked by the master server if necessary.

Its also likely that all content, including free content, is encrypted, and requires a key from the master server to unlock and use/execute. This is all pretty standard authentication/DRM type mechanics.

3
  • Is the device id in this local profile?
    – jamesson
    Commented Aug 26, 2013 at 16:26
  • Would depend on whether you're intending on limiting your installs to a number of devices or not. EG: Steam appears to have a separate list of "authorized computers" which you can download content on, I don't know if actual installs per machine are tracked (possibly for stats, unlikely for DRM)
    – Matt D
    Commented Aug 26, 2013 at 23:30
  • Thamks for the comments. I will be awarding ypu this bounty. Would you mind if I PM/email you with any questions that arise in development that I cannot solve myself?
    – jamesson
    Commented Aug 27, 2013 at 0:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.