Page 3 of 7

Posted: Wed Dec 17, 2003 5:43 pm
by Karbon
If you were deleting YOUR program and *only* your program when you detected something you didn't like then I can't see the problem. If you do any more than that then you're asking for trouble!

Posted: Thu Dec 18, 2003 1:46 am
by PB
> If you were deleting YOUR program and *only* your program when
> you detected something you didn't like then I can't see the problem

As long as no DATA files of your app are deleted... you can't let the user
sit there and work with your app for 30 days, then delete all his work,
especially if the deleted data is important. For example, you can't have
a banking app delete all his bank records that he entered over the past
30 days during the trial period... he may not have this data anywhere
else in electronic form, and you've screwed him over big time.

But deleting your own files (say the *.exe) is easily fixed... I'd just have
a batch file recreate them from a copy that has another name. ;)

Posted: Thu Dec 18, 2003 3:00 am
by Karbon
you can't let the user
sit there and work with your app for 30 days, then delete all his work,
especially if the deleted data is important.
What you can and can't do legally really depends on the license that covers your software I suppose. If someone was attempting to crack your software and triggered an uninstall I don't think they'd be screaming about their lost data. I understand what you're saying, though..

The license your distribute with your software SHOULD have many clauses about how you're not responsible should anything happen to the data files either on purpose or on accident. Not because you want to destroy the user's machine but because you need to cover your butt from potential legal trouble if something should happen resulting from a bug (or feature!) in your program.

Regardless of any of that I would never write in protection that deletes everything when it suspects some attempt at cracking the program has been made. In the end it wouldn't get you anything and it's a great big can of worms that could be opened innocently.

Doot!

Posted: Mon Aug 30, 2004 9:35 pm
by techjunkie
In the old days, i.e Commodore 64 days - The GEOS system used a smart protection system.

They executed code in the video memory during load to transfer code to the 1541 disk drive and then they executed the code (6502) locally on the disk drive and used that for protection. What I remember - they also used self modifying code.

Posted: Wed Nov 10, 2004 11:38 pm
by dracflamloc
Another option is to require a SQL database lookup on YOUR server for anyone trying the demo so the data is not changable by the client. That way you can keep track of everything on your side. Yet again though, nothing will stop an adept with SoftICE. At any rate, good luck.

Posted: Thu Nov 11, 2004 2:05 am
by Kale
An oldie, but a goldie:

http://inner-smile.com/nocrack.phtml

I would go for a MD5FileFingerprint(Filename$) solution. Compile your app, get a MD5 finger print then poke it into the app's exe to check itself against. Never tried it but it should work fine! :twisted:

Posted: Thu Nov 11, 2004 2:49 am
by Henrik
uhm Kale, is poke=write in to file?
then if you do that the MD5FileFingerprint() of the Poked file would change :wink:

Best regards
Henrik

Posted: Thu Nov 11, 2004 12:08 pm
by Kale
Henrik wrote:uhm Kale, is poke=write in to file?
then if you do that the MD5FileFingerprint() of the Poked file would change :wink:
Damn! :twisted:

Posted: Fri Nov 12, 2004 11:45 pm
by ivory
Here is what I did for one my MsgBox Demo.

Instead of making it good for 50 uses only, I made the demo version good throw up a nag screen after 25 screen updates (this demo was for a msgbox tool). Everytime you restart the program it restarts the counter, I never save it anywhere. So in effect, if you have a program that only needs it for a few uses each time, its free to use.

Licensing had to be handled with an encrypted license file. Whenever someone purchased a license, I multiplied thier name by a secret number to place in a license file. If they share the license file, it contains their name encrypted in the license number.

Posted: Fri Nov 12, 2004 11:49 pm
by ivory
Karbon wrote:
you can't let the user
sit there and work with your app for 30 days, then delete all his work,
especially if the deleted data is important.
What you can and can't do legally really depends on the license that covers your software I suppose. If someone was attempting to crack your software and triggered an uninstall I don't think they'd be screaming about their lost data. I understand what you're saying, though..

The license your distribute with your software SHOULD have many clauses about how you're not responsible should anything happen to the data files either on purpose or on accident. Not because you want to destroy the user's machine but because you need to cover your butt from potential legal trouble if something should happen resulting from a bug (or feature!) in your program.

Regardless of any of that I would never write in protection that deletes everything when it suspects some attempt at cracking the program has been made. In the end it wouldn't get you anything and it's a great big can of worms that could be opened innocently.

Doot!
Another approach for what to do, is to let them think they got away with it, but randomly introduce bugs. I know one game manufacturer that did that to identify pirated CD's. People who bought pirated CD's were constantly complaining to tech support with the same problems.

Posted: Fri Nov 12, 2004 11:54 pm
by PB
> Another approach for what to do, is to let them think they got away with it,
> but randomly introduce bugs. I know one game manufacturer that did that
> to identify pirated CD's. People who bought pirated CD's were constantly
> complaining to tech support with the same problems.

Sounds good in theory, but runs the risk that the app gets a bad reputation:

Pirate1: "I've heard that AppX is great for doing [whatever]?"
Pirate2: "Nah, don't use that, it had heaps of bugs when I tried it."
Pirate1: "Okay, what do you recommend?"
Pirate2: "I use AppY now, it's faster and has no bugs like AppX."

:?

Posted: Sat Nov 13, 2004 12:13 am
by thefool
one major problem is that if the app doesnt have appropriate debugger and disassembler protection, the cracker just disables whatever you do to protect it. How to get appropriate protection? Make freeware 8)
PB wrote: Sounds good in theory, but runs the risk that the app gets a bad reputation:

Pirate1: "I've heard that AppX is great for doing [whatever]?"
Pirate2: "Nah, don't use that, it had heaps of bugs when I tried it."
Pirate1: "Okay, what do you recommend?"
Pirate2: "I use AppY now, it's faster and has no bugs like AppX."


or even worse:

NOTpirate: "I've heard that AppX is great for doing [whatever]?"
Pirate: "Nah, don't use that, it had heaps of bugs when I tried it."

Thinstall...

Posted: Sun Nov 14, 2004 5:36 am
by StarHawk
One word is all you need to know....Thinstall

It costs an arm and leg, but, to date, is crack/hack proof and provides the functionality (plus more) of what you are looking for.

Latest version even has anti-SOFTICE and attached debugger technology that prevents your code from being hacked once it's loaded into memory and broken into with break points.

Thinstall is used by the U.S. Department of Defense and big whigs like Exxon because of it's lock tight security. If you can fit it into the expense column of your companies budget, it is well worth the cost.

Re: Thinstall...

Posted: Sun Nov 14, 2004 6:40 am
by PB
> One word is all you need to know....Thinstall

Yes, but at US $1475 to purchase... it's an arm and a leg, like you said. :)

Posted: Sun Nov 14, 2004 11:29 am
by thefool
TElock will freely protect you from a lot of crackers. i dont say that it protects from all, but for free, its the best piece of protecting software i have ever found. http://www.softpedia.com/public/cat/5/2/5-2-6.shtml

Use it together with your own encryption/protection (like conditional jumps and using the RET command to perform a jump from stack etc.)