Re: Get time difference without time()

new topic     » goto parent     » topic index » view thread      » older message » newer message

> Let me guess, You are wanting to do this to prevent the
> following scenario:
> 
> Joe Blow downloads your shareware (time-limited) software.
> Joe Blow sets his computer clock to 5 years ahead.
> Joe Blow installs your software.
> Joe Blow sets his computer clock back to normal time...
> ... thus defeating your time-limit.
> 
> The truth is, I think the user can change any time that you
> can check with your program. However, if you use date() then
> check to make sure that your saved-time is actually AFTER
> the current time, that should prevent Joe Blow from
> preventing you from preventing him from using your software
> more than the specified amount of time.

Simple as this, record the date the program was first run. Check for 
negative days (in this case, just go and deny the program to run 
anymore), check for it running past any number of days (deny the 
program to run afterward?). Best way to do this is either:

1) Put the key into the registry. A tad trickier to defeat such a 
problem, but it can still be defeated by even a weak cracker-jocker 
like me, and some free programs on the web (Sysinternals RegMon).

1a) If you do put a key into the registry, modify some key that 
_looks_ highly important (Anything regarding Windows/IE* seems 
important to me, no doubt someone was crafty enough to slip 
something like that by me), but it isn't (i.e. delete it, and nothing 
noticable happens). This'd throw me off :)

2) If you're good with executables, particularly win.com or even 
VxDs, toss into their headers, wherever unused, the date code. 
Deleting any such system file could cause the OS to cease 
function/retire life, and it'd be VERY hard for just anyone to crack 
such a eval deal. (I _might_ be able to do it - again, with a couple of 
free programs, SysInternals FileMon and Hackman, and even VC++ 
debug, perhaps)

3) Put a bug on the HD. With Filemon, its easy to track something 
like this down.

4) Self-modifying executable. Can't be done in Euphoria, however. 
(So I've heard).

So, any way you do it, you're screwed, it'll be cracked. But when 
you do implement such a deal, be very very crafty about it, and 
remember: It will be cracked. Oh well.

HTH,

--"LEVIATHAN"

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu