Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17


delphi 7 copy protection

Posted on 2004-08-02
Medium Priority
Last Modified: 2010-04-04
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!
Question by:hibbidiji
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Expert Comment

ID: 11699488
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!

Accepted Solution

gwalkeriq earned 1000 total points
ID: 11699626

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.


Expert Comment

ID: 11699706
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.
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Author Comment

ID: 11699714
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

Expert Comment

ID: 11700268
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.



Expert Comment

ID: 11704500
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.

Expert Comment

ID: 11704785
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.
LVL 17

Expert Comment

by:Wim ten Brink
ID: 11706843
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.

Author Comment

ID: 11711549
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

Expert Comment

ID: 11958560

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.



Featured Post

On Demand Webinar - Networking for the Cloud Era

This webinar discusses:
-Common barriers companies experience when moving to the cloud
-How SD-WAN changes the way we look at networks
-Best practices customers should employ moving forward with cloud migration
-What happens behind the scenes of SteelConnect’s one-click button

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A lot of questions regard threads in Delphi.   One of the more specific questions is how to show progress of the thread.   Updating a progressbar from inside a thread is a mistake. A solution to this would be to send a synchronized message to the…
Introduction The parallel port is a very commonly known port, it was widely used to connect a printer to the PC, if you look at the back of your computer, for those who don't have newer computers, there will be a port with 25 pins and a small print…
Have you created a query with information for a calendar? ... and then, abra-cadabra, the calendar is done?! I am going to show you how to make that happen. Visualize your data!  ... really see it To use the code to create a calendar from a q…
We’ve all felt that sense of false security before—locking down external access to a database or component and feeling like we’ve done all we need to do to secure company data. But that feeling is fleeting. Attacks these days can happen in many w…
Suggested Courses

722 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question