I wanted to know if there is a standard way of making licenses on Mac OS 10.6. For exemple, if I am creating an application and I want to create a licensing system, do I leave a file somewhere in the system that my application can read/write?


Mac OS X Applications, tend to be limited due to the UNIX “open” nature of the operating system. Contrary to Windows for example, where one could bury an entry into the Registry under any name, provided you’re given Admin privileges (which is very natural in Windows).

Under OS X, applications are forced to use dedicated locations for storing settings and preferences. ~/Library and /Library.

With that being said, this doesn’t stop some applications to use other mechanisms in conjunction with that.

I cannot name them all primary because I don’t know all of the existing ways, but I can tell you some common forms:

Serial Number / License Key: These are the typical. The program stores an “encrypted” copy of these values in its preferences (sometimes even unencrypted), usually located in:

  • ~/Library/Preferences or /Library
  • The Application Bundle itself
  • Some value in the user’s Home folder (possibly hidden by a .)

The problem with these are obvious, the serials get published/shared/copied and you have no way to stop it. Some applications have a “blacklist” of serials that although perfectly formatted, are internally hardcoded to be bad.

Online Activation: Less common (and usually more annoying), these require the app to connect to an online host to “activate” or “validate” the license. This prevents a lot of fraud and usually ends with the application cracked by some genius, where the code that does the validation is simply modified to always return “ok” making the application believe that the internet stuff went ok. Read: Adobe Products.

In any case, the program has to store the value somewhere, and the usual locations apply.

Tied with Hardware ID This is common too, they extract your drive’s serial number and some other parameters (Network card MAC Address for example) and they create a serial number that checks for those. So even if you “copy” the license, the new machine won’t have the same values and it will fail. This is annoying because if your hard drive crashes and you boot from a backup, you’ll have to re-register.


I assume you want to continue reading about this, so instead of believing me, follow these links:

| improve this answer | |

There is no set "standard way", you would have to either build your own from scratch or use one of the online store frameworks.

It sounds like what you want would be best suited by the Mac App Store. You'll need to join the Mac Developer Program to get access to it. It's $99 a year.

| improve this answer | |

DRM is handled by apple automatically if you use the appledev store submittal. The DRM apple uses is extremely kept information, obviously the record labels and video studios demand this, as apple would love to not deal with it, per Steves frequent emails and other public letters.

I need more info regarding what you want to DRM, type of content, iOS app, or perhaps you need a simple license /registration procedure, for an OSX.app. Please be verbose

Tefrota Ho

| improve this answer | |
  • He seems to be talking about applications not necessarily DRM like iTunes. – Martin Marconcini Dec 2 '10 at 9:35

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .