|
Using a Memory Stick as a Dongle (= Copy Protection Device) Overview: Most USB-devices do contain a unique hardware serial number! By definition of the standards commitees, this must be a vendor-unique serial number! After reading the serials from quite a lot of memory devices (many memory sticks and USB-hard-disk-drives) it turned out: it’s true! (If you don’t believe it, you can use the demo program for USBFind(..) to check for yourself!) After realizing that, my first thought was: Why don’t we use cheap memory sticks instead of those expensive and hard-to-interface dongles? After some experiments with memory sticks our copy protection solution worked just fine for single workstation HFClassic and HyperFileSQL multiuser. This enables us to buy cheap protection devices - simple standard memory sticks - in small quantities. One of the problems for software houses doing copy protection is to have to initially buy large quantities of expensive dongles (100 pieces minimum) while no one knows whether that program would be sold more often than a few times. A) The principle: (there are two parts, a program for handling the licenses on memory sticks like putting / storing / retrieving licenses and a procedure which does the license-checking within a user program) 1 - Format a memory stick, put a unique volume name on it2 - Put an encrypted license file on it which contains
- the hardware serial number of the USB-memory-stick- name / address of the user or company- your copyright + name + address, maybe.- features to enable / disable software add-ons- a check-sum for the data file on the memory stick
3 - each time when starting the program, look for a connected memory stick with that volume name, read / uncrypt the license, show licensee name, copyright and enable / disable features. Compare serial number of the memory stick with serial number within the license file and decide whether the software is ‘Demo only’ or ‘licensed copy’. Q + A sectionQ: Could a malicious user format a memory stick from the same vendor and copy the license file to it in order to use our software on a second computer?A: No, because the serial number from the license file will be compared with the actual hardware serial number of the memory stick. Q: One can buy / get software that makes e.g. a USB-memory-stick on a remote computer locally accessible. Such software will even provide a drive letter! Am I going to be an easy prey of clever customers?A: no, because we exclude ‘network drives’ from our validation process. Please note: This is NOT a full and ready-made licensing / copy protect solution! This one is to be understood rather as a demo or as a starting point for developing your own solution. At least you should use different methods of encryption and of calculation of the check-sum! Add data fields, features etc. Be aware of the fact that everybody - bad boys inclusive! - can read this article and download the demo programs which are showing the complete how-to-do ! download demo project of licensing software: Download demo project of a protected program (Choice of HFSQL Classic or HFSQL Client/Server): To be continued ...
|