delphi 7 copy protection

I have a delpi app thats worth rather a lot of money ($10k+) and I will be selling it 20 or so times.   I would like to put in rather hefty copy protection to do my BEST To make sure its not ripped off.   While it is a client/server app and the server portion is well protected as well, I just want to cover my bases.  :)

I like free solutions but I am open to anything.   let the suggestions begin!
Who is Participating?

Improve company productivity with a Business Account.Sign Up

gwalkeriqConnect With a Mentor Commented:

1) Dongle

2) Require access to Internet and have application phone home, this is often good enough if there are updates from the Internet that the application needs.

3) Something like OnGuard

4) AdHoc solutions

Dongle is best protection, it is easy to put into your program, and its very hard to hack. Disadvantages are extra expense (not a big factor in a $10K app) and customer resistance -- There is no customer that likes them and you will almost be guaranteed to be seen as a greedy bastard by some of them. I suspect you can live with that. If you use a dongle, at least be upfront about it

Internet access can be hacked around, but if you are giving valuable updates via the Internet, customers will inclined to stay honest. This can be combined with other techniques.

OnGuard is free, and relatively effective if the number of copies of your software is low. Large numbers of copies essentially guarantee cracks.

Ad Hoc -- This is in reality security through obscurity. If you sell few copies, and software is not expensive, this may way -- to be honest it is worthless against any cracker of any talent and most with no talent because of the cracker tools that are available.

I find that using a "dongle", like the one from Microcomputer Applications:

Is good protection. It forces the software to act as a "book"...i.e. you must have the dongle to read it.
I've used it with much success. You can save all sorts of info into it, and it also can protect against backdating and expiring. There are parallel port and USB versions!

Hope that helps!
I should point out that dongles are most certainly not unbreakable (some are relatively easy to break). There are also cracker sites and programs that are fairly effective at cracking dongles too.

This site took me about 1 minute to find and it discusses dongle cracking pretty openly (though a little lacking in detail). It also gives good advice to you if you are planning on using a dongle.

Word of warning, much of the cracker world is steeped in malware, porn, etc.
Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

hibbidijiAuthor Commented:
I am leaning towards a combination of solutions based on onguard at the moment.   I will leave the question open overnight to be sure I've got the best answers though.  Thanks for your tips so far
You must remember every possible security protection is crackable. Thus it is important to use the latest copy protection (i.e in the form of the above suggestions) but you should make your program have the ability to change security protection regularly since this will make it harder to distribute illegally and also to crack.


If you sell your software to 10K you surely give support. That (in itself) is enough copy protection. You can devise a way (license number etc.) to check support requests.
Sorry to say, but support will not stop copying. I know of cases where companies (even competitors) would pool money to buy 1 copy of software and run the support through the official company.

My personal advice would be never give support, always sell support. Sell your software cheaper, don't discount the cost & value of support. If you bundle NNN dollars of support with sale, that is ok. You are still selling the support, customer can reduce cost by cutting back on the bundled support.

Besides if software is well-written, support will be minimized.
Wim ten BrinkSelf-employed developerCommented:
Let me see...

Dongles? AFAIK, all existing dongle solutions have been cracked already. Even worse, there are special dongle emulators that will just tell your system that a dongle has been installed but all it has done is making a copy of an existing dongle so you don't have to connect it anymore... I've known several system managers who are using this kind of software just because they don't want to waste all the USB/Serial/Parallel ports on dongles. They only want to connect useful hardware. And the dongles are just stored in the safe...

Access to Internet required? Also a bad solution because the hacker will just monitor the traffic, then write something to emulate the call home or just modifies your binaries with the use of a debugger. Besides, many people are behind firewalls and other stuff that might make the internet connection useless. Or worse, their internet connection is down. This is a very impopular solution.

OnGuard and other copy protection tools have also been cracked. It's just a matter of time before the next copy protection schemes will be cracked. There are people out there cracking for a living.

In general, with a low number of copies you don't need such powerful protection anyway. Best thing to do is Sell it for the 10K that it's worth and make sure you display your company logo in the application, in the about box and have some link in there that the user can click on to visit your website. This way, if people do make illegal copies, you get some free advertisements. If you include free support for a year for your customers only then people might be tempted to buy it after they've played with the "free copy" first.
Give the software away for free if you like, but sell support! Companies consider support more important than buying just the software. Include free updates as part of the support, for as long as the support contract lasts.
hibbidijiAuthor Commented:
A combination of the onguard tools and some of my own code are better than nothing.  The solution I found based on this package will be non-intrusive.  I agree that support is the best solution and I plan on giving it.  Thanks all for the contributions

I really dont like onguard - I ried it and it was very messy.

I do like OneWay at - say hello to Mark from me $39 well spent

Also try which looks good and is low cost I havent tried it myself.


Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.