User's Manual
26
In the case of Windows-based programs, cryptography makes it possible to avoid exporting and unlawful copying of
one's resources. This is necessary, because there are many Windows-based programs that allow extraction of their
resources (icons, cursors, dialogues, menus, bitmaps, toolbars, etc.) and also the copying and reuse of such resources.
8.3.4 Parameter-based protection
SmartKey users can use a protection based on a multiplicity of parameters in addition to that offered by cryptography.
This ensures that the protected program operates only when the dongle being used is the same as the one originally used
for creating the file. This is because each dongle has a unique set of parameters including Id-Code, Label, Password and
Memory.
However, parameter-based protection is an option that can be easily disabled, except for the Label. Use of the Label is
obligatory. When a protected program is operating and the dongle's optional parameters are disabled, only the Label is
controlled, while the other parameters are overlooked. With a good combination of labels only, the program is
successfully executed.
8.3.5 Message displayed in absence of the dongle (key)
If the protected program is activated in the absence of the relevant SmartKey, it stops and the following default message
is shown:
No Key
.
This message is not fixed. In common with messages associated with other functions, the GSS.EXE utility makes it
possible to also replace the standard message with a personalized one.
8.3.6 Limitation of number of executions and licenses
Use of SmartKey is not limited just to programs protected against unauthorized accesses. SmartKey also enables you to
set the number of executions and licenses permitted for the protected program. This function is particularly useful for
issuing demo versions of a program. It provides users with the possibility of limited use of the program. When the set
number of executions is reached, the program stops operating.
Moreover, the possibility of limiting the number of licenses guarantees that the program is used inline with the licenses
policy. This function is available with the SmartKey NET version.
8.3.7 Automatic cryptography of data files
To make a program completely safe against unauthorized accesses, not only must one protect the executable program,
but also all the relevant data/databases (.DBF, .DAT, etc.) associated with it. Thanks to GSS technology, SmartKey now
lets you do all this.
When a data string is sent to the dongle, the pre-programmed algorithm is used to encrypt it. The GSS utility is used
mainly for this purpose. When it is being started, the encrypted program automatically decrypts the encrypted files.
When not in use, these files are again encrypted.
8.3.8 Protection of programs on a network
In addition to protecting programs operating in standalone mode, SmartKey also provides security for programs based
on a Local Area Network. As a protected program is used in an absolutely transparent way for the end-user, both a local
and a network dongle can be used. The GSS technology first searches for the device on the local ports. If it does not find
a dongle, it begins to communicate with a Lan device.
SmartKey NET was developed in particular with this in mind. The software supplied with the dongle enables networked
computers to send the request to a single SmartKey NET. Consequently, there is no longer any need to use as many
dongles as the number of stations connected to the network.
8.3.9 Protecting files executable in series
It may sometimes be necessary to automatically protect several executable files, in a single operation. In this situation,
GSSLINE.EXE, which is the DOS line command version of the GSS.EXE utility, is very useful.
This is the syntax for executing GSSLINE:
gssline CFG_FILE EXE_FILE [DATA_FILE...] DESTINATION_DIR
CFG_FILE The configuration file.
EXE_FILE or DATA_FILE The name of the .EXE or data file to be protected.
DESTINATION_DIR The path where the final protected .EXE file is located.
Table 6
When typing in the command line, the following must be considered: