Hi All,
I have a product now, invoicing software with in-built inventory and accounts module. I have sold this to 10 companies...now my problem is how to prevent it by making copies or piracy...
Please give your suggestions...
Printable View
Hi All,
I have a product now, invoicing software with in-built inventory and accounts module. I have sold this to 10 companies...now my problem is how to prevent it by making copies or piracy...
Please give your suggestions...
Do you want to prevent them from copying the floppy/CD? Do you want to prevent them from installing the program on a PC you haven't authorized them from installing it on? Do you want to prevent them from selling it as their own? What kind of protection are you looking for?
Also bear in mind that Microsoft's products are pirated all the time. If with their power and their money, they can't prevent it, then you may be facing a tough task.
I know, they can not simply copy it and make it run....I dont want them to install it and use it without my knowledge...hence, they can not sell even...
could you help me..
I want to do something, so that when they install or run in their system, it check for some identity or key something like that and then only it allows the user to run...
Look into using a hardware dongle if the app is expensive enough to warrant it. That lets them run on one computer at a time - any computer they want, but only one at a time. If they want to run 2 installations at once they have to buy another dongle from you.
They can pirate the dongle, but it's genrerally cheaper for them to buy one from you than to copy one themselves. They'd need a good engineer and at least a small hardware lab. If your app is $50,000 this might not work, but for a few hundred or less it wouldn't pay for them to duplicate the dongle.
that looks nice and seems to be ok...Quote:
Look into using a hardware dongle if the app is expensive enough to warrant it. That lets them run on one computer at a time - any computer they want, but only one at a time. If they want to run 2 installations at once they have to buy another dongle from you.
They can pirate the dongle, but it's genrerally cheaper for them to buy one from you than to copy one themselves. They'd need a good engineer and at least a small hardware lab. If your app is $50,000 this might not work, but for a few hundred or less it wouldn't pay for them to duplicate the dongle.
could you give me more details about that dongle...where to buy, how to configure and how to incorporate into my app...please
thanks for the links...will check later and get back to you...
Another possibility I used for a cheap application was to have the application read some platform specific values from the system registry, manipulate them with an algoritmus that yelds an activation key from the resulting string, and show the string to the user.
The user will then give you the so obtained string. Since you know the algoritmus you can produce and deliver the activation key to the customer.
I once did it so and seemed to work just fine...
i've been looking into securing my software before release. Dongles offer no more protection than software based portection systems. This russian site offers dongle emulators for all the major providers http://www.sporaw.com/work/index.htm
The approach i am thinking of taking is to separate out part of the code and run this on a separate server that my client software will connect to. It is far easier to authenticate users, server side, and protecting code on a server is easier as you retain control. If you distribute the whole code and then try to protect it, it will always be defeated by debugging tools like softice. You can encrypt all you like but softice debugs in the memory where nothing is encrypted. All current protection eventually comes down to an accept / reject decision and once found these are easily patched. My solution does of course mean you need an always-on internet connection so isn't suitable for all programs.
This thread helped me:
http://www.vbforums.com/showthread.php?t=250436
BG.
Desaware make an excellent licensing product for .NET applications...that is what I would use in your situation.
An option we use is a monthly connect to our servers. Then we get location/computer name/key/this/that/ other thing sent up and we send down verification code based on a somewhat complex alogrithim.
This works with our stuff because information is constantly being updated and tweaked by our end customer. Also, the theft of a comptuer with our software could be used to make some cash illegally. Some functionality will shut down after only a couple uses w/o a verified connect.
Also, we can see what computer is connecting and what version they have and are updating to. It would seem odd if the same computer started updating from an old version to the new version 100 times.
In this day of heightened security awareness and firewalls? You'll lose a lot of customers, some of whom just can't access the internet without the IT department getting involved.Quote:
Originally Posted by cash4questions