User`s manual

Table Of Contents
7
7
Chapter 7 Software Lock
“Software Lock” is an innovative technology developed by the Moxa engineering force. It can be
adopted by a system integrator or developer to protect his applications from being copied. An
applicaion is compiled into a binary format bound to the embedded computer and the operating
system (OS) that the application runs on. As long as one obtains it from the computer, he/she can
install it into the same hardware and the same operating system. The add-on value created by the
developer is thus lost.
Moxa engineering force has developed this protection mechanism for your applications via data
encryption. The binary file associated with each of your applications needs to undergo an
additional encryption process after you have developed it. The process requires you to install an
encryption key in the target computer.
1. Choose an encryption key (e.g.,”ABigKey”) and install it in the target computer by a preutility
program, ‘setkey’.
#setkey ABigKey
Note: set an empty string to clear the encryption key in the target computer by:
#setkey ““
2. Develop and compile your program in the development PC.
3. In the development PC, run the utility program ‘binencryptor’ to encrypt your program with
an encryption key.
#binencryptor yourProgram ABigKey
4. Upload the encrypted program file to the target computerby FTP or NFS and test the program.
The encryption key is a computer-wise key. That is to say, a computer has only one key installed.
Running the program ‘setkey’ multiple times causes the key to be overrided.
To prove the effectiveness of this software protection mechanism, prepare a target computer that
has not been installed an encryption key or install a key different from that used to encrypt your
program. In any case, the encrypted program fails immediately.
This mechanism also allows the computer with an encryption key to bypass programs that are not
encrypted. Therefore, in the development phase, you can develop your programs and test them in
the target computer cleanly.