• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 344
  • Last Modified:

Hiding Trial Period Information

Hi Experts,

Just a simple quick question. Where is the best place to hide the start date of the applications trial phase?
0
reynaldio
Asked:
reynaldio
  • 4
  • 3
  • 3
  • +2
2 Solutions
 
JapyDoogeCommented:
What i did in the past

A regkey with another name
md5 of install date (date only)

program starts and does md5 to the last 30 days in history in a while
as long as the md5 is not valid, its exceeded

offcourse u can use more than 30
0
 
JohnjcesCommented:
I have created a bizarre registry key that made little sense but only to me and then did a fairly simple encryption of the start and/or end date.

Generally under HKLM.

This by no means is fool proof but works for the majority of people and keeps most people honest.

John
0
 
rfwoolfCommented:
...yes, but would that work in VISTA?
0
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

 
JohnjcesCommented:
Absolutely not UNLESS you have done all of the Vista UAC preparations, proper manifest, created a helper application or a COM dll to retrieve the information from that part of the registry.

Guess we should have stated works for XP and 2000 but Vista is a different "animal".

John
0
 
Ustin19Commented:
Storing keys\trials in HKCR does search and freezing trial slower. For example, Ka$persky Antivirus V5 stored it's key information there
0
 
reynaldioAuthor Commented:
hi,

so it is common to put the information under windows registry.  i was thinking to put this information in a file and hide it in the windows system folder. is it a good idea?
0
 
Ustin19Commented:
it is easy to sniff all registry and file operations, but it is a few more hard to be not obfuscated by HKCR registry branch naming rules - and if application uses any COM\OLE, it becomes not so trivial. And if it will be polymorphian name (e.g. lastruntime depended, in advanced case - patching exe file with random value before start or using external checksum storage) - it will be good obfuscation for majority of lamers.
Maybe, some distructive code (it is very hard variant, use it only if program is semiprivate) solutions you choose
0
 
Ustin19Commented:
next advice:
default value in registry is "" or not present.
Fill it during installation (xor, md5, GOSTR, RSA1024 as you wish of _installation_ date), then (at start) check encrypt(today), encrypt(today-1), ... encrypt(today-trialperiod) {it is not so long :) } and, if no of this functions returns true, assume end of trial period and delete storage for preventing of aposteriory analysists
0
 
Ustin19Commented:
Combination of prewiours posts guarantee your exe from kiddies at all, but not from patching jmp to nop
0
 
JohnjcesCommented:
Here's a link that may help you out a bit more. It is a delphi.about.com article on the subject. MOre links, software and one free version that does quite a bit.

http://delphi.about.com/od/objectpascalide/a/aa012803a.htm

John
0
 
reynaldioAuthor Commented:
Hi all,

thank you for all your advices.
Johnjces -> thank you for the great links you gave me.
I have problems assigning the points since there are no right or wrong answers here.
but i'm gonna give the points to John for his links and Ustin19 for a more complete ideas :)

Thanks,

Reynaldi
0
 
reynaldioAuthor Commented:
thanks guys :)
0

Featured Post

Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

  • 4
  • 3
  • 3
  • +2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now