Thats a damn good question. Here's a few I've used in the past...
i) Serial Numbers
Supply the product with a serial number - standard stuff. When the product
is installed ask the user for it. The user enters the number and you write a
file. As you suggest, the file can be written into a 'safe' place. If the
file name is obscure and so is the data it contains, then the 'chance' of it
being found is minimal. This doesn't protect against anyone 'giving' the
product away with the original serial number or just posting the serial
number as can be seen on many 'Warez' sites.
ii) Encoded Serial Numbers
I believe Metacard use this system. The user registers with you (so you know
who they are). You provide a coded serial number based on their name and
company. They install the software. If they 'loan' the software to someone
else it won't work purely on the serial number. You have to type in the
correct name and company. This makes people more reluctant to 'borrow'
software, especially if you splash a large start up screen displaying the
licensing information.
iii) Either of the above with Internet check
Each time they run the software the user info (and other bits such as IP
address) can be sent via the internet to you. Users don't like this.
However, if the software is destined for business users who are on permanent
connections then its a little more appropriate. Depending on the nature of
the application and size of market this can provide a wealth of information,
and tracking.
iv) Dongle
And nothing beats it. Lets face it if the big boys were serious about
software piracy every product would be shipped with a Dongle. However, once
users get a 'hooky' product they are 'addicted' and there you go, one more
user. They may not buy the product initially but when they become dependant
they may purchase an upgrade or justify the 'trial' period by purchasing a
legit version. Dongles are little bits of hardware that the software first
checks its serial number against to see if its there. So, one physical piece
of kit can't be in two places at the same time, so no copying.
Rainbow have helped greatly in the past http://www.rainbow.com/ with their
Sentintel products ... sorry, 'Authentication Licensing and Digital Rights
Mangement Solutions'
As for the specific function queries, check them out in the Help section of
Metacard (if you haven't already) or even the MetaClass tutorials at
http://www.xworlds.com/metacard/metaclass.htm
which provide an *excellent* grounding in MC...
Hope the above is of some use.
Regards
Gary Rathbone
on 6/6/01 10:18 pm, Raymond E. Griffith at [EMAIL PROTECTED] wrote:
> My client has a program with rather sensitive information on it. He would
> like it if the program installed on a computer be unable to be copied to
> another computer. Failing that, he would like the copied program on the
> other computer to fail to work without registration. That way he could know
> that another copy was around somewhere.
>
> So what is the best way to do this? I can think of putting files into the
> preferences file on a Mac, but what would I do with Windows? Or is there a
> better way?
>
> For example, I have seen the functions "queryRegistry" and "setRegistry",
> but I have no idea how these work or what I should do in order to be safe.
>
> I also note that there are such features as platform(), machine(),
> processor() and systemVersion(). A combination of these might work
> partially, but not completely.
>
> So I need some advice? Help, anyone?
>
> No, he is not paranoid. There is just a very limited market. If the software
> is freely able to be copied, then he loses his investment.
>
> Thanks
>
> Raymond
>
>
> Archives: http://www.mail-archive.com/[email protected]/
> Info: http://www.xworlds.com/metacard/mailinglist.htm
> Please send bug reports to <[EMAIL PROTECTED]>, not this list.
>
Archives: http://www.mail-archive.com/[email protected]/
Info: http://www.xworlds.com/metacard/mailinglist.htm
Please send bug reports to <[EMAIL PROTECTED]>, not this list.