c++ - Prevent time cheating of Trial Product: Which Files to monitor? -
i reading on trial products , challenge of user forwarding time before installing product not expire long time. 1 of strategies read checking modified time files , compare current time , see difference if makes sense. question is, best files use task in both windows , linux? why think best task?
since don't remember url of site (was reading in phone , cannot reproduce url right now), appreciate link on subject or answer in case missed it!
dynamically embed date , time of download in setup installer package.
tell customer activate trial product before 48 hours or so. (after activation can use entire trial period)
then, @ time of installation, check whether system time (client machine time) matching date time of installer.
if not matching, not allow installation.
edit:
it can done in following ways.
1. using encryption:
create xml file download time stamp when download button clicked.
create private key using cryptography library such openssl
extract public key private key.
encrypt xml file using private key, generates signature file.
ship exe file, xml file, public key file , signature file client.
when client tries install, exe verifies signature , xml file using public key.
if signature matches, checks whether system time stamp not greater more 48 hours. , shouldn't less download time stamp.
if hack attempt made change xml, signature wouldn't match, there preventing installation / subsequent usage of product.
2. patching
patching exe may done although not recommended. can web server dynamically generate executable on fly?
it may resource intensive.
Comments
Post a Comment