1

I have a Delphi/Vcl application that is now being ported to FireMonkey for cross platform usage. In the Vcl application the licence security is based on the disk serial number, but I have only code for getting this in Windows. Although I would expect very many Delphi developers to need this kind of code also for OSX and iOS, I have not been able to find any code on internet.

So, what I need is Delphi/FireMonkey code that returns a unique hardware id on any iPad or Mac that can run a FireMonkey application (any Intel Mac as far as I know).

If I should be uanable to find such code, I would be grateful for any other creative code dealing with the license security issue.

1 Answers1

1

There is no way.

Binding a thirdparty app to a specific unique hardware is againnst the fondation rule for user expirience. If a user brought ir app over the app store, then he has the right to install it to all his devices. The number of devices per user is limitedand and is subject to decent protection against abuse.

Helge Becker
  • 3,219
  • 1
  • 20
  • 33
  • 2
    There's no mention of app store here. Also, your answer is surely false. Intel Mac's have disk serial number that is obtainable. – David Heffernan Nov 29 '12 at 09:09
  • I didn't mention app store, but if that's how it's done in the iOS world, that is certainly relevant for me. I was aware of app store, but not of the license security side of it (I'm a total newbie here). Maybe I can live with this for the iOS, but is it also common to rely on this for OSX software? – Jørgen Opsand Nov 29 '12 at 09:54
  • Macs are heading the iOS way, so the UID on the desktops will be unavailable too in a foreseeable time. You could create a own UID. Store it in the App documents and flag it dontBackUp. That way you can identify a single installation on a given machine. – Helge Becker Nov 29 '12 at 10:08
  • But - will this provide copy protection? Can the file not just be copied to another Mac? If the genarated UID is unique to the physical Mac in a way that can be checked by my program, then I understand, but then I would need the Pascal code to generate the UID. – Jørgen Opsand Nov 29 '12 at 11:46
  • Sorry, but there is no copy protection that can prevent this. – Helge Becker Nov 29 '12 at 16:11
  • Is that a general answer or a Mac specific answer? If it's a general statement, I totally agree. Every copy protection seem to be hackable. But my question is more pragmatic. Does the Mac platform inherently provide less possibilities for copy protection than what is readily available in Windows? My Vcl app protection is based on the disk serial number, and this has so far been "good enough" for me. I am looking for Delphi code that can provide a similar level of protection on the Mac, either through hardware identification or by some other means. – Jørgen Opsand Nov 29 '12 at 21:20
  • I do not need to tie my program to one single Mac. I allready allow my customers to run it on upto 3 PCs, so if App Store can help me apply a limit of X units owned by the same customer, that may be good enough for me. – Jørgen Opsand Nov 29 '12 at 21:32
  • http://stackoverflow.com/questions/2019244/how-to-get-serial-number-from-mac-hard-disks – Whiler Nov 30 '12 at 10:46