Copy Protection/Licensing Registration for Word Global Template?

Posted on 2013-12-19
Last Modified: 2013-12-19
I'm marketing a global template (.dotm saved in AppData...\Word\STARTUP) and would like to add some kind of protection so it can't be copied to additional machines without my knowledge.  Currently I have the file packaged in an .msi installer along with other files needed for the system to operate.  A client company will need to install this on several machines within their organization, but I want to limit their ability to give/resell it beyond their own company.  

I believe I can add licensing registration to my installer (I use Advanced Installer), but once the files are installed, I don't think that prevents someone from copying the files themselves.  Is there a package out there, or some VBA code I can add within the template itself that will bind it to the current machine so that it won't work if transferred to another machine?  I need to allow the client to install on as many machines as they need, but not be able to distribute beyond that.

Thanks for any ideas
Question by:versatilebb
  • 2
  • 2
LVL 76

Expert Comment

ID: 39729567
This is a perennial problem. You can input some metrics of the PC (e.g. system disc serial number) into a hash process (e.g. MD5 with your own modification) at installation time and save it in the registry. This would be checked when the code is run.

The snag is that the process might be discovered. Also it might not survive hardware changes.

Author Comment

ID: 39730328

Can you point me somewhere I can learn more about the "hash process (e.g. MDS with your own code modification)"?
LVL 76

Accepted Solution

GrahamSkan earned 500 total points
ID: 39730473
MD5 is a well-known hashing algorithm. It will convert any text string into a 16 byte number. It is usually presented in Hex and is sometimes provided in that form as a key to unlock software, the provider having calculated it from some text that the customer has provided. For example, this is the key to the string 'alphabetic' from a free on-line provider:

Wiki has an article here.

If you Google for 'MD5 VB6', you will be able to find several sets of code that implement the algorithm. I just Googled 'MD5 VB' and got a .Net version which  seems to indicate that the algorithm is built-in to that platform.

By your 'own modification', I mean that you can garble the input in your own repeatable way, e.g. reversing all or some of the text, appending some fixed text or anything of that sort. It would then not be possible for the user to simply run the algorithm with their own inputs.

All this supposes that your code is protected. VBA code protection is thought to be weak. There are third party products that claim to work better. Otherwise you might want to provide the functionality in your template as a compiled add-in (needs VB6, .net or some other stand-alone development application)

Author Closing Comment

ID: 39730649
Thanks, I'll have a look.

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
Excel 2016 lost MRU list 8 69
Desktop in File-open on Excel 7 34
Modify Array formula - Reduce Calculation Time 4 31
Help to find the duplicates 8 18
Outlook Free & Paid Tools
This article descibes how to create a connection between Excel and SAP and how to move data from Excel to SAP or the other way around.
The viewer will learn how to use a discrete random variable to simulate the return on an investment over a period of years, create a Monte Carlo simulation using the discrete random variable, and create a graph to represent the possible returns over…
Learn how to make your own table of contents in Microsoft Word using paragraph styles and the automatic table of contents tool. We'll be using the paragraph styles in Word’s Home toolbar to help you create a table of contents. Type out your initial …

749 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