Solved

Hiding Trial Period Information

Posted on 2008-06-10
12
338 Views
Last Modified: 2010-04-21
Hi Experts,

Just a simple quick question. Where is the best place to hide the start date of the applications trial phase?
0
Comment
Question by:reynaldio
  • 4
  • 3
  • 3
  • +2
12 Comments
 
LVL 6

Expert Comment

by:JapyDooge
ID: 21750465
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
 
LVL 18

Expert Comment

by:Johnjces
ID: 21751563
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
 
LVL 13

Expert Comment

by:rfwoolf
ID: 21753872
...yes, but would that work in VISTA?
0
Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

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.

 
LVL 18

Expert Comment

by:Johnjces
ID: 21753916
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
 
LVL 2

Expert Comment

by:Ustin19
ID: 21766416
Storing keys\trials in HKCR does search and freezing trial slower. For example, Ka$persky Antivirus V5 stored it's key information there
0
 
LVL 2

Author Comment

by:reynaldio
ID: 21768013
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
 
LVL 2

Expert Comment

by:Ustin19
ID: 21777453
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
 
LVL 2

Accepted Solution

by:
Ustin19 earned 200 total points
ID: 21777487
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
 
LVL 2

Expert Comment

by:Ustin19
ID: 21777508
Combination of prewiours posts guarantee your exe from kiddies at all, but not from patching jmp to nop
0
 
LVL 18

Assisted Solution

by:Johnjces
Johnjces earned 200 total points
ID: 21779396
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
 
LVL 2

Author Comment

by:reynaldio
ID: 21779747
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
 
LVL 2

Author Closing Comment

by:reynaldio
ID: 31465697
thanks guys :)
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Drag & Drop... Data from one grid to another 2 42
eclipse apache tomcat admin console 52 122
java example issue 5 25
Bot application - advice 3 38
Creating an auto free TStringList The TStringList is a basic and frequently used object in Delphi. On many occasions, you may want to create a temporary list, process some items in the list and be done with the list. In such cases, you have to…
Have you ever had your Delphi form/application just hanging while waiting for data to load? This is the article to read if you want to learn some things about adding threads for data loading in the background. First, I'll setup a general applica…
Viewers will learn about the different types of variables in Java and how to declare them. Decide the type of variable desired: Put the keyword corresponding to the type of variable in front of the variable name: Use the equal sign to assign a v…
Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:

831 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