Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

poppero

macrumors member
Original poster
Jun 26, 2009
67
0
I'm trying to understand some software registration tecnique on mac and I thought to search these information about software I already have installed and registered on my mac but I don't know where start searching...
i.e. I have registered copy of softwares like Acorn, Espresso, AppDelete, Hyperspaces, Img2Icns, Mariner Write, ShoveBox, Twiterrific, WhatSize, WebSnapper, Parallels 5, VMWare Fusion, Candybar, and many others...
Does anybody know where are registration informations about these software?
 
I'm trying to understand some software registration tecnique on mac and I thought to search these information about software I already have installed and registered on my mac but I don't know where start searching...
i.e. I have registered copy of softwares like Acorn, Espresso, AppDelete, Hyperspaces, Img2Icns, Mariner Write, ShoveBox, Twiterrific, WhatSize, WebSnapper, Parallels 5, VMWare Fusion, Candybar, and many others...
Does anybody know where are registration informations about these software?

There's no common place for it, I don't think. Plenty of places it could be stored, too... inside the .app folder, inside a folder in your Library, or any number of other places.
 
There's probably no universal place to put it, nor a standard format. If there was, than it would be too easy for your users to pirate your software by copying the registration file and giving it to someone else (or downloading someone else's registration data and entering it as their own).

So, you want this data to be as difficult to locate as possible. The actual string of data should be encrypted, too, so that your users can't stumble upon the text data somewhere on their hard drive.
 
I already thought about this possibility but it's weird there is not a state of the art, a guideline, a pattern to follow in building licence protected software...
which paths are mostly used to store hidden encrypted reg-files? where are those databases? and, above all, where are stored information to recover registration information? I guess they can't be stored directly in the binaries for several reasons, but this implies that the software should read reg-file location by another file... it doesn't seem to be not a big deal...
 
There's no common place for it, I don't think. Plenty of places it could be stored, too... inside the .app folder, inside a folder in your Library, or any number of other places.

I realize you aren't suggesting this, but just to be clear: don't store stuff inside .apps. It will break code signing, and is generally a bad idea.
 
:) would be too simple to get rid of any restriction... not at all!
when I was developing in windows we used to generate codes with hardware components serials and checking it at every lauch of the application but I always pushed the programmer I worked for to find a better method.
Now I'm tring to do things alone on mac because he doesn't mind other platforms or languages and I NEED to solve this problem.
How do mac programmers manage questions like this? Is there a book, web-page, documentation, anything that can teach me how to face this kind of problem? Maybe it's hidden in Apple documentation but I did'n find anything...
 
You might want to have a look at Aquaticprime. It's not exactly Fort Knox, but it should give you a decent starting place. It depends on the kind of App you're writing of course, but in most cases it's usually a waste of time/money/resources trying to really lock things down beyond what it takes to get the average person to buy it.
 
I've always wondered by software licenses aren't stored as a keychain. I had a hard drive go south a few weeks back, and luckily all the licenses were recovered except for one. No quibbles with the developer, who resent the license code, but it seems like the keychain is the place for this to go. Or am I missing something?

mt
 
i'm starting thinking that the only way to understand how to protect my software would be understand software cracking procedures...
 
One of the tools they use is fscript. Because Objective-C has a runtime, they are able to use tools like that to dynamically observe your App's objects, method calls, inject code, and do other things (this is why you should never use Objective-C for your registration code). Did you look at Aquatic Prime?
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.