UniKey Enveloper Tool: Difference between revisions

From SecuTech Wiki
Jump to navigationJump to search
Joseph (talk | contribs)
Mapril (talk | contribs)
 
(38 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<!--
[[category:UniKey Manuals]]
TODO
==<b>UniKey Enveloper User Guide</b>==
Move and link to "UniKey Envelop Protection Solution"
Second tense?
Technologies used for protection of software?
Hierarchy: Solutions, Projects
Update images to full resolution, missing images
Links to other articles
Check license upgrade
Insert device mode
-->
[[category:UniKey_Tools]]  


== About UniKey Enveloper ==
<b><i>Version 8.4</i></b>


The UniKey Enveloper is a powerful anti-piracy protection tool that can protect your software from unauthorized copy and usage. Usage of the tool can be likened to securing your application by wrapping it in a protective shell.
<table class="wikitable">
<tr>
  <td style="background-color: red;"><b style="color: #fff;">Version</b></td>
  <td>1.0</td>
  <td>1.1</td>
  <td>1.2</td>
  <td>1.3</td>
  <td>2.0</td>
  <td>2.1</td>
  <td>2.2</td>
  <td>3.0</td>
  <td>4.0</td>
  <td>5.0</td>
  <td>6.0</td>
  <td>7.0</td>
  <td>7.1</td>
  <td>7.3</td>
  <td>8.0</td>
  <td>8.1</td>
  <td>8.2</td>
  <td>8.3</td>
  <td>8.4</td>
</tr>
<tr>
  <td style="background-color: red;"><b style="color: #fff;">Date</b></td>
  <td>2006.1</td>
  <td>2006.8</td>
  <td>2006.10</td>
  <td>2006.12</td>
  <td>2007.2</td>
  <td>2007.4</td>
  <td>2007.8</td>
  <td>2008.5</td>
  <td>2008.8</td>
  <td>2009.3</td>
  <td>2010.4</td>
  <td>2010.6</td>
  <td>2010.8</td>
  <td>2010.9</td>
  <td>2012.3</td>
  <td>2012.4</td>
  <td>2016.5</td>
  <td>2016.7</td>
  <td>2016.12</td>
</tr>
</table>


UniKey Enveloper provides the fastest and easiest automatic software protection solution to safeguard your executables, DLLs and data used in and by your application. The greatest advantage of using the UniKey Enveloper is that access to the source code of the application is not needed.
==About UniKey Enveloper==
UniKey Enveloper is a powerful tool that can protect your software from illegal usage. It secures your application by wrapping it in a shell. UniKey Enveloper provides the fastest and easiest automatic software solution to protect your executables, DLLs and data used in and by your applications.


With this tool, protection parameters can be enabled and configured, and after wrapping software in a 'secure shield', mechanisms including anti-debugging will automatically protect the application/s, rendering those who intend to reverse engineer your software incapable.
The greatest advantage of using UniKey Enveloper is that you do not have to access the source code of your application. By running this tool and setting up the protect parameters, you can wrap your software in a secure shield, which can guarantee that no one else without your permission can use this protected software. Meanwhile, when you are using Enveloper to protect your application, an anti-debug mechanism will automatically be added to you application, rendering pirates who want to use reverse engineering method to hack your software impossible.


The Enveloper tool for UniKey STD, PRO and Time can be located in the UniKey SDK under the directory
==What can be Protected?==
You can apply protection directly to data files, executables and DLLs. The protection can be applied by the Enveloper directly which is easy and fast to implement.


<code>UniKey SDK\Utilities\Enveloper\Envelop Tool\</code>
===Protection Procedure===
Protecting software with UniKey Enveloper is simple; users can enable it by following the procedure described below:
# Start UniKey Enveloper in the <code>SDK\Utilities\Enveloper\UniKey Envelop Tool</code>
# Specify the program which you want to protect
# Set protection parameters for the program and execute
# Send your protected software together with the corresponding UniKey to your customer


The Enveloper tool for UniKey Drive can be located in the UniKey Drive SDK under the directory
==The Structure of the UniKey Enveloper Interface==
The Enveloper is stored in <code>UniKey_SDK\Utilities\Enveloper\</code> To launch the Enveloper, double click on the Enveloper icon, and the Enveloper control panel will appear.


<code>UniKey Drive SDK\Utilities\Enveloper\Envelop Tool\</code>
[[File:enveloper interface.png|500px|alt=UniKey Enveloper interface]]


=== What Can Be Protected? ===
The UniKey Enveloper provides two different interface modes (Guide Mode and Professional Mode) to accommodate different user preferences. Users can switch between the two modes by clicking on the button in the upper right corner of the main panel or alternatively select the working mode from the View menu in the menu bar.


Enveloper protection can be directly applied to
Guide Mode is specially designed for beginners, as the system will guide users step by step to configure their desired setting. Guide Mode is a simple way to get started. Professional Mode is suitable for advanced users who are familiar with the UniKey system. You can modify settings by selecting the specific parameters from the solution window (left hand window). By default, when you start the Enveloper, the main interface will be displayed in Guide Mode, as shown in the following pictures.


* Executables - Almost all application executables, including both PE and DotNet (2.0, 3.0, 3.5, 4.0) files.
===Guide Mode Interface Components and Layout===
* DLLs
* Data files.


=== Protection Procedure In a Nutshell ===
[[File:enveloper guide mode.png|500px|alt=UniKey Enveloper guide mode layout]]


Note: It is recommended to run the UniKey Enveloper Tool on a 32-bit system. Few applications to be protected may not be successful when using the tool on a 64-bit system. Enveloped applications can be either for use on 32-bit or 64-bit systems.
Guide Mode's interface consists of the:
# menu bar;
# input window;
# progress navigation bar and
# output window.


Users can perform protection of software with UniKey Enveloper by following the procedure described below:
====Menu Bar====


# Launch the UniKey Enveloper tool (Please note the Enveloper tool for UniKey Drive, while similar, is different to UniKey STD, PRO and Time).
<table class="wikitable" style="max-width: 800px;">
# Specify the application which to protect.
<tr>
# Set protection parameters for the program.
  <td>
# Execute.
<b>File menu</b>


After the envelope procedure, the end user can only access the protected software with the corresponding UniKey device; you may send your protected software together with the corresponding UniKey to your customer.
[[File:enveloper file menu.png|alt=Enveloper file menu list]]
  </td>
  <td>
* <b>New Solution</b>: Create a new software protecting solution.
* <b>Close Solution</b>: Close the currently open solution.
* <b>Add a Project</b>: Add a project to the currently open solution.
* <b>Delete current Project</b>: Delete the project that is currently selected.
* <b>Open</b>: Open a previously saved solution.
* <b>Save</b>: Save all configurations of the currently open solution, to the current working directory.
* <b>Save as: </b>Save to a specified location.
* <b>Import</b>: Open a configuration file created by a previous version of the Enveloper
* <b>Exit</b>: Close the Enveloper program.
  </td>
</tr>
<tr>
  <td>
<b>Protect menu</b>


== Enveloper Interface Structure ==
[[File:enveloper protect menu.png|alt=Enveloper protection menu list]]
  </td>
  <td>
* <b>Protect Project</b>: Execute Enveloper to shield your selected project.
* <b>Protect All Projects</b>: Execute Enveloper to shield all the projects in the current solution.
  </td>
</tr>
<tr>
  <td>
<b>View menu</b>


To launch Enveloper, double-click on the Enveloper executable and the Enveloper Control Panel will appear; no installation is required.
[[File:enveloper view menu.png|alt=Enveloper view menu list]]
  </td>
  <td>
* <b>Guide Mode</b>: Switch the Enveloper interface to Guide Mode, which is best used by new users.
* <b>Professional Mode</b>: Switch the Enveloper interface to Professional Mode.
* <b>Solution Window:</b> Choose whether to display the solution window or not (only in professional mode).
* <b>Output Window</b>: Choose whether to display the output window or not.
  </td>
</tr>
<tr>
  <td>
<b>About menu</b>


[[Image:UniKey_Envelop_Tool_Pic01.jpg]]
[[File:enveloper about menu.png|alt=Enveloper about menu list]]
  </td>
  <td>
* <b>About</b>: Provides information about the Enveloper, such as version number, etc.
  </td>
</tr>
<tr>
  <td>
<b>Drop down list</b>


The UniKey Enveloper provides two different interface modes, Guide mode and Professional mode, to accommodate different user requirements and/or preferences. Users can switch between the two modes by clicking on the button in the upper-right corner of the main panel or selecting the interface mode from the [View] menu in the menu bar.
[[File:enveloper drop down list.png|alt=Enveloper drop down list]]
  </td>
  <td>
* <b>Drop down list</b>: Lets you select the current project to configure for your overall solution.
  </td>
</tr>
<tr>
  <td>
<b>Protect button</b>


Guide mode is specifically designed for beginner users to allow uncomplicated use. In this mode, the tool will guide the user step by step in configuring desired settings.
[[File:enveloper protect button.png|alt=Enveloper protection button]]
  </td>
  <td>
* <b>Clicking on the Protection button</b>: Executes protection for your software.
  </td>
</tr>
<tr>
  <td>
<b>Working mode switch button</b>


Professional mode is suitable for advanced users who are familiar with the UniKey system. A greater variety of options is available to the user's disposal, and settings can be modified by selecting the specific parameters from the Solution window.  
[[File:enveloper working mode switch.png|alt=Enveloper switch working mode button]]
  </td>
  <td>
* <b>Working mode switch button</b>: Helps you switch between the two different types of working modes (Guide Mode and Professional Mode) conveniently.
For example, if you are currently using Professional Mode, the working mode button will display Guide Mode, and by clicking on it, the system will toggle to Guide mode, and vice versa.
  </td>
</tr>
</table>


Upon launching the Enveloper, the interface will default to Professional mode. After creating a solution, the interface automatically switches to Guide mode.
====Input Window====
In Guide mode, the input window lets you specify options step by step, guided by system.


=== Guide Mode Interface and Layout ===
====Progress Navigation Bar====
The Progress navigation bar is a user-friendly tool that helps guide users in completing their configurations and indicates their current progress. The users progress will be highlighted by a yellow box.


The Guide mode interface consists of:
====Output window====
The output window displays information about errors and the Envelopers running status.


#'''Menu bar.'''
<div style="page-break-before:always"></div>
#'''Input window.''' In Guide mode, the Input window lets you specify options step by step, guided by tool.
==Professional Mode Interface and Layout==
#'''Progress navigation bar.''' The progress navigation bar visually communicates the user's current progress during configuration process, highlighting the current stage in yellow.
Professional Mode consists of the following four components:
#'''Output window.''' The output window displays information including the Enveloper's running status and arisen errors.
# menu bar;
# solution window;
# input window;
# output window.  
The function and content of 1) menu bar and 4) output window in Professional Mode are the same as Guide mode, for more details about these sections please refer to the above section.


[[Image:UniKey_Envelop_Tool_Pic02.jpg]]  
[[File:enveloper professional mode layout.png|500px|alt=UniKey Enveloper professional mode layout]]


==== Menu bar ====
===Solution Window===
The solution window displays every project in the solution, and all the steps for setting each project in a tree view. By click on the settings in the solution window, you can easily access every setting.


[[Image:UniKey_Envelop_Tool_Pic03.jpg]]
* Device Type: The drop down allows you to change the type of UniKey device you want to protect the program with.


*New Solution: Create a new software protection solution.
* Insert Device Mode: By default, the box is checked, and hence a UniKey is required to be present in the local port when protecting the software. If unchecked, under the option "Bind HID with selected HID", Add and Delete buttons are unlocked for you to add into the HID database for protection of software programs without needing to have the UniKey present.
*Close Solution: Close the current open solution.
*Add a Project: Add a project to the current open solution.
*Open: Open a previous solution.
*Save: Save all configurations of the current open solution, to the current working directory.
*Save as: Save the current solution to a specified location.
*Import: Open the configuration file created by a previous version of Enveloper.
*Exit: Close the Enveloper program.


==== Protect menu ====
[[File:Enveloper-untick-insert-device-mode.png|400px]]


[[Image:UniKey_Envelop_Tool_Pic04.jpg]]
[[File:Enveloper-add-not-connected-unikey-hid.png|400px]]


*Protect Project: Execute Enveloper to protect the selected project.
===Input Window===
*Protect All Projects: Execute Enveloper to protect all the projects in the current solution.
For every setting, the input window provides an interface for users to specify desired settings. Users can use the solution window to configure the content in the input window.


==== View menu ====
==Enveloper Settings==


[[Image:UniKey_Envelop_Tool_Pic05.jpg]]
<table class="wikitable" style="max-width: 800px;">
<tr>
  <td colspan="2" align="center" style="background-color: red;"><b style="color: #fff;">Parameters</b></td>
</tr>
<tr>
  <td><b>Source File</b></td>
  <td>The executable file or .DLL to be protected.</td>
</tr>
<tr>
  <td><b>Data File</b></td>
  <td>Data file associated with the source file.</td>
</tr>
<tr>
  <td><b>Output Location</b></td>
  <td>The destination folder where the protected file will be saved.</td>
</tr>
<tr>
  <td><b>Password</b></td>
  <td>UniKey has two-level security permissions by using four passwords. Login as a user by providing the first two passwords or as a vendor by providing all four passwords. When using the Enveloper to protect software, you must input all four passwords.</td>
</tr>
<tr>
  <td><b>Module settings</b></td>
  <td>Let you assign a module number for your protected software. When the specified module number in the UniKey device is enabled, the protected software can be started or accessed.
*No Bind Module
*Bind Module
:When the sepcified module number is enabled( the module value is not zero), the protected software can be started.
*Set Running Count Limits
:When write running count into the specified module number, the count will decrease when the protected software is started, and then the protected software can not be started if the count is zero. BTW, warning message can be shown as your setting.
*Bind Module&Set Limits
:When the sepcified module number is enabled( the module value is not zero), the protected software can be started. And then write running count into another module, the count will decrease when the protected software is started, and the protected software can not be started if the count is zero. Warning settings as before.


*Guide Mode: Switch the Enveloper interface to Guide mode layout, suitable for beginner users.
</td>
*Professional Mode: Switch the Enveloper interface to Professional mode layout, suitable for experienced users.
</tr>
*Solution Window: Display or hide the Solution window.
<tr>
*Output Window: Display or hide the the Output window.
  <td><b>Time settings</b></td>
  <td>The UniKey time model has 16 time modules. You can bind your software to a specific time module, and indicate the expiration date or time duration.
*No Bind Time
*Bind a Expiration Date
:Indicate the expiration date into the specified time module.The protected software can not be started after the expiration date.
*Bind a Duration Time
:Indicate a duration time into the specified time module.The protected software can not be started when the duration time is 0 day and 0 hour.
</td>
</tr>
<tr>
  <td><b>HID settings</b></td>
  <td>The UniKeys unique identification number. You can bind your software to this number to ensure that only when the corresponding UniKey is presented, the protected software can run.
*No Bound HID
*Bind HID with connected device
:Bind the connected device, the protected software can run only with the corresponding Unikey inserting.
*Bind HID with selected HID
:Bind the HID in HID database,the protected software can run only with the corresponding Unikey inserting.
</td>
</tr>
<tr>
<td><b>SID settings</b></td>
  <td>The UniKeys soft identification number. You can bind your software to this number to ensure that only when UniKey with the corresponding SID is presented, the protected software can run.
*No Bound SID
*Bind a single SID
:Bind one SID, the protected software can run only with the Unikey of this SID inserting.  
*Bind a SID Group
:Bind a group of SID,the protected software can run only with the Unikey of the correct SID inserting.
</td>
</tr>
<tr>
  <td><b>Background settings</b></td>
  <td>When the protected software starts working, the software will check the UniKey device every Loop Time (self-defined) in seconds. This ensures that the UniKey device must be connected to the computer while the protected software is under use (not supported on Linux).</td>
</tr>
<tr>
  <td><b>Debugger settings</b></td>
  <td>
This function lets you protect your software from being cracked by using debugger techniques, such as:
* Basic
* Advanced
* Kernel
* IDE
* Virtual PC
  </td>
</tr>
<tr>
  <td><b>Network settings</b></td>
  <td>
UniKey PRO, Time and Drive provide software protection in a local network environment. When this function is enabled the UniKey device will search through the network. The software will only work properly if the right device is detected. To use the network function, the following parameters need to be configured:
<b>Working Mode</b>
* <b>Network Only</b>: The protected software will only search for the UniKey through the network.
* <b>Local-&gt;Network</b>: The protected software will search for the UniKey from the local computer firstly, and if it is not found, the software will search the network.
* <b>Network-&gt;Local</b>: The protected software will search for the UniKey on the network first, and if it is not found, the software will search the local computer.


==== About menu ====
<b>Access Mode</b>
* <b>Per Thread</b>: Protected software can log in to the UniKey many times.
* <b>Per Process</b>: Protected software can log in to the UniKey only once.
* <b>Per IP</b>: For each IP address, only one instance of the protected software can be launched.


[[Image:UniKey_Envelop_Tool_Pic06.jpg]]
<b>Searching Mode</b>
* <b>Direct Only</b>: The protected software will search for the UniKey from the specified IP address only
* <b>Direct-&gt;Broadcast</b>: The protected software will search the specified IP address for the UniKey, and if the UniKey cannot be found, the software will automatically search the entire network for the UniKey.
* <b>Broadcast-&gt;</b>;Direct: The protected software will search the entire network for the UniKey, and if the UniKey cannot be found, the software will search the specified IP address for the UniKey.


*About: Displays information about the Enveloper tool, such as version number.
<b>Server IP</b>: The Server IP address where the UniKey is connected.


==== Project drop-down list ====
<b>Server Port</b>: The port number used for the connection between server and client.


*Project drop-down list: Displays the current project, and Helps you select the project which you are going to edit from the same solution
<b>Time Out</b>: Defines the time-out value of the communication between the server and clients.
  </td>
</tr>
<tr>
  <td><b>Start Dialog Settings</b></td>
  <td>Enable or disable the start screen display function.</td>
</tr>
<tr>
  <td><b>Warning Message</b></td>
  <td>Define the warning and error output message.</td>
</tr>
</table>


==== Protect button ====


*Protect: Execute protection parameters of the project Enveloper.
<div style="page-break-before:always"></div>


==== Interface layout button ====
==Protect Software using Enveloper==
Enveloper protects software without changing the source code. At any time you can start the Enveloper to adjust settings and perform upgrades to your protected software.


*Guide/Professional Mode: Toggle between Guide mode and Professional mode.
===New Solution===
Create a solution by selecting the File&#8594;New Solution from the menu bar, and the following window will appear.


=== Professional Mode Interface and Layout ===
[[File:enveloper new solution.png|400px|alt=create new solution with the UniKey Enveloper]]


The Professional mode interface consists of the components:
Select the UniKey Type you are going to use to protect your software. Enter a name and description for your newly created solution, and select the destination folder where the solution file will be stored. Click on the OK button to confirm your settings. The window will close and the Enveloper main panel will switch to Guide Mode automatically, as shown in the following picture.


#'''Menu bar'''.
[[File:enveloper create new project.png|500px|alt=Enveloper main panel guide mode]]
#'''Solution window.''' The solution window displays every project in the solution, and all the steps for setting each project in a tree view. By click on the settings in the solution window, you can easily access every setting.
#'''Input window.''' For every setting, the input window provides an interface for users to specify the setting desired. Users can use the solution window to configure the content in the input window.
#'''Output window.''' The output window displays information including the Enveloper's running status and arisen errors.


[[Image:UniKey Envelop Tool Pic23.jpg|382px]]
The system will create a new project called [your solution name]_1 automatically.


For interface component descriptions, see [[#Menu bar|Guide Mode]] above.
===Select Files===
Click on the Add button to add the software you want to protect to the current project, you can add software through the file explorer. Once a file has been added you can click Edit to bring up a File Editor window.


== Enveloper Settings ==
[[File:enveloper file editor.png|400px|alt=Enveloper file editor window]]


=== Source File ===
[[File:... button.png|middle|alt=... (locate) button]]
This button next to the Source File input box allows you to locate the software you want to protect, or input the software location directly. If there are some data files associated with your software, you can protect these data files by clicking on the Add button to add them into the data files box. The similar button next to the Output Location input box allows you to specify where the protected software will be stored or input the destination folder directly. Click on OK to finalize the file settings for this software.  You can add one or more executable(s) or DLL file(s) to each project. To add another program, please repeat the steps described above, you can add zero or more data files associated with one executable or DLL file.


The executable file or .DLL file to be protected.
===Device Settings===


=== Data File ===
[[File:enveloper device settings.png|500px|alt=UniKey Enveloper device settings]]


Data file(s) associated with the source file.
Device Settings consist of:
* Password
* Bind Module
* Bind Time
* Bind HID
* Bind SID
* Background Check
To use a UniKey device to protect your software, you must input the correct password to the UniKey device. Click on Setting next to the password option, and the interface will switch to the Password Setting interface, click on Guide Mode in the top right corner to go back at any time. To enable a setting, just check the option box following the respective setting. When the colour of a check mark &#10004; changes to green, the setting is enabled. For more detailed options, click on the Setting button. Settings with a shaded check mark &#10004; means that the corresponding setting is not enabled. More settings please refer to [[#Enveloper Settings]].


=== Output Location ===
[[File:usb icon.png|middle|alt=USB icon]]
Use this icon in the progress navigation bar to switch to Device Settings


The destination folder where the protected file will be saved to.
===Password Settings===


=== Password settings ===
[[File:enveloper password settings.png|left|thumb|500px|alt=UniKey Enveloper password settings|Setting a password is essential to ensure that the Enveloper works correctly]]


UniKey utilizes a two-level permission system using four passwords, named password 1, password 2 up to password 4. Users can login as a User by logging on with the first two passwords, i.e. password 1 and password 2, or as a Vendor by logging on with all four passwords, i.e. passwords 1 to 4. Usage of the Enveloper to protect software requires the user to log onto the corresponding UniKey device as a Vendor with all four (correct) passwords.
<div style="clear:both;"></div>
Enter the correct four passwords, and then continue to next settings or click Guide Mode to switch back to the previous window.


=== Module settings ===
===Module Settings===


Modules refer to a particular aspect of a software application. Assigning a module number for a particular component allows, when enabled on the UniKey device, the specified module or corresponding function of an application to be executed or accessed.
Module settings please refer to [[#Enveloper Settings]], and then continue to next settings or click Guide Mode to switch back to the previous window.


=== Time settings (UniKey Time) ===
===Time Settings===
Time settings please refer to [[#Enveloper Settings]], and then continue to next settings or click Guide Mode to switch back to the previous window.


The UniKey Time model employs 16 time modules. Specific aspects of an application can be bound to a specific time module, and be used to indicate, for example, the duration time or expiration date.
===HID Settings===


=== HID settings ===
HID settings please refer to [[#Enveloper Settings]], and then continue to next settings or click Guide Mode to switch back to the previous window.


The Hardware ID (HID) refers to a unique, immutable ID assigned to an individual UniKey device, with no two UniKey devices containing the same HID. Options include binding with a single or selected set of UniKey devices with a specified HID. Binding software to a certain HID ensures only with a specific UniKey device(s) can HID-bound software be accessed.
===SID Settings===


=== SID settings ===
SID settings please refer to [[#Enveloper Settings]], and then continue to next settings or click Guide Mode to switch back to the previous window.


The Software ID (SID) refers to an modifiable ID of a UniKey device specified when burnt. Options include binding with a single SID or a SID range.
===Background Settings===


=== Background settings ===
Background settings please refer to [[#Enveloper Settings]]. For ease of use, the system provides some default settings, therefore if you want to use the default settings, you can check the option box to enable the function directly. For example, the system will automatically enable background checks by default.


When enabled, the background check setting refers to the time interval which the UniKey device is queried to confirm it is still plugged in. This function ensures that the UniKey device must be connected to the computer while the protected software is been used.
[[File:setting icon.png|middle|alt=settings icon]]
After you have finished with all device settings, click on this icon to begin configuring system settings.


If the UniKey device is disconnected when queried, the program will freeze and the "No license" warning message (see [[UniKey Envelop Tool#Warning Message]]) notification window will appear twice before aborting the application.
===System Settings===


=== Debugger settings ===
[[File:enveloper system setting.png|500px|alt=UniKey Enveloper system settings]]


This function lets you protect your software from been cracked by using debugger techniques.  
System Settings consists of:
* Start Dialog
* Network
* Anti-Debugger, this is enabled by default
* Warning Message
You can choose to enable and configure any protection function by checking the corresponding tick box and clicking on the setting button. If you enable network functionality, you must click on the corresponding setting button to set the server address. Please note that only the UniKey Pro, Time, and Drive support this function.


*Basic
[[File:final step icon.jpeg|middle|alt=build icon]]
*Advanced
Click on this icon to go to the final step.
*Compress
*Kernel
*IDE
*Virtual PC


=== Network settings (UniKey Pro, Time, Drive) ===
===Build Project===


With network functionality, UniKey Pro, Time and Drive can provide protection of software through a local or remote network environment, allowing protected software to run with the UniKey device physically connected as well as restriction of access. When network functionality enabled, the protected software will search for the UniKey device on the network and execute only if the correct UniKey device is found.
[[File:enveloper build project.png|500px|alt=UniKey Enveloper build project details]]


To use the Network function, the following parameters need to be configured:
The input window displays all the details about your solution. You can check your configuration from this window, and click on the Protect button to execute your software protection with the Enveloper tool.


==== Working mode ====


Working mode refers to the location precedence of the UniKey device to be used.
<div style="page-break-before:always"></div>
==Professional Mode==
Professional Mode provides an interface for advanced users to set the UniKey hardware and system configuration. To switch to Professional Mode, after creating a new solution, click on the Professional Mode button.


*Network Only: The protected software will only search for the appropriate UniKey on the network.
===Solution===
*Local → Network: The protected software will first search for the appropriate UniKey on the local computer, and if not found, will then search the network.
*Network → Local: The protected software will search for the UniKey on network first, and if i not found, will then search on the local computer.


==== Access mode ====
[[File:enveloper display solution.png|500px|alt=UniKey Enveloper display solution details]]


Access mode refers to the access restrictions of protected software running through the network.
By clicking on the parameters in the solution window, you can start to configure the parameters in the input window directly. After finishing all configurations, click on the protect button to execute protection.
 
<!--Check-->*Per Thread: No restrictions.
*Per Process: Protected software can log onto the UniKey only once.
*Per IP: For each IP address, only one instance of the protected software can be run.
 
==== Searching Mode ====
 
Searching mode refers to the method of locating the corresponding UniKey device on the network.
 
*Direct Only: The protected software will search for the UniKey from the specified IP address only.
*Direct → Broadcast: The protected software will search for the UniKey from the specified IP address, and if not found, will search for the UniKey on the local network.
*Broadcast → Direct: The protected software will search for the UniKey from the local network, and if not found, will find the UniKey from the specified IP address.
 
Server IP: Defines the IP address of the server where the UniKey is connected.
 
Server Port: Define the port number used for the connection between server and client.
 
Time Out: Defines the timeout value in seconds of communication between the server and clients.
 
<!--Obselete?
=== DotNet Settings ===
 
This function lets you protect your .NET application according to the operating system in which the .NET application runs. It can generate protected applications for both x86 and x64 platforms.
-->
=== Start Dialog Settings ===
 
Enable or disable the start screen display function. When enabled, a start dialog will displayer upon executing the program.
 
=== Warning Message ===
 
Define the warning and error output message. There are two messages in the event of an authorization error which can be configured:
 
* Dialog Box Title: The title of the dialog box which contains the error message.
* No license: The message that appears when the corresponding UniKey device could not be located.
* License expired: The message that appears when the corresponding module is expired.
<!--=== License Upgrade ===-->
 
== Protecting Software using Enveloper ==
 
The Enveloper tool can be used to the adjust settings of and perform upgrades to a solution before protecting software at any time, regardless of the software development state of an application(s). During use of the Enveloper tool, the interfaces Guide mode and Professional mode can be used interchangeably.
 
=== Guide Mode ===
 
To begin using Enveloper in Guide mode, double-click on the Enveloper executable to start Enveloper, if not already open, and click on the [Guide Mode] button in the upper-right corner of the main panel or selecting [Guide Mode] from the [View] menu in the menu bar.
<!--Screenshot of Enveloper in Guide Mode-->
 
==== New Solution ====
 
Create a solution by clicking [File], [New Solution] from the menu bar. The "New Solution" window will appear.
 
[[Image:UniKey Envelop Tool Pic09.jpg]]
 
Select the UniType device type under "UniKey Type" that is to be used to protect the software. Enter the Solution Name and Description for the newly created solution in the appropriate fields, and select the destination folder where the new solution file will be stored. Click [OK] to confirm. The window will close and the Enveloper main panel will switch to Guide mode automatically, as shown in the following picture.
 
[[Image:UniKey Envelop Tool Pic10.jpg]]
 
The new project created by Enveloper will be automatically renamed to [Solution Name]_1.
 
==== Select Files ====
 
Click on the [Add] button to include the executable program (.exe or .dll) to protect.
 
With an added file from the list selected, clicking on [Edit] will open the "File Editor" window, as shown below.
 
[[Image:UniKey Envelop Tool Pic11.jpg]]
 
The "Source File" field refers to the pathname of the selected file to protect, and can be modified by clicking [...].
 
Data files associated with the executable can too be protected by clicking [Add] to add them under "Added Data Files".
 
The "Output Location" field allows refers to the output directory of the resulting protected application, and can be modified by clicking [...].
 
Click [OK] to confirm settings.
 
Repeat the above steps for adding additional executable files and associate data files. Each executable or DLL file can be associated with zero or more data files.
 
Click on the following icon
 
[[Image:UniKey_Envelop_Tool_Pic13.jpg]]
 
in the progress navigation bar to switch to Device Settings and progress to the next step.
 
==== Device Settings ====
 
Device settings refers to settings concerning the hardware device, and consist of:
 
*[[#Password_settings|Password]]
*[[#Module settings|Bind Module]]
*[[#Time settings (UniKey Time)|Bind Time]]
*[[#HID settings|Bind HID]]
*[[#SID settings|Bind SID]]
*[[#Background settings|Background Check]]
 
[[Image:UniKey_Envelop_Tool_Pic12.jpg]]
 
To enable an option, tick the checkbox next to the option. Additional parameters of an option can be configured by clicking [Setting], switching over to the corresponding option under Professional mode. Options with a green tick are enabled, shaded ticks are not enabled.
 
To be able to use a UniKey device to protect software, the correct password of the corresponding UniKey device must be entered. To do so at this point, click [Setting] next to "Password", and input the corresponding password of the UniKey device in Professional mode.
 
[[Image:UniKey_Envelop_Tool_Pic14.jpg]]
 
Enter the correct four passwords, and then click [Guide Mode] to switch back to Guide mode.
 
To simplify user operation, default settings are already applied, e.g. enable background check by default.
 
Click on the following icon
 
[[Image:UniKey_Envelop_Tool_Pic15.jpg]]
 
in the progress navigation bar to switch to System Settings and progress to the next step.
 
==== System Settings ====
 
System settings refers to settings concerning the protected executable program, and consist of:
 
*[[#Start Dialog Settings|Start Dialog]]
*[[#Network settings (UniKey Pro, Time, Drive)|Network]] - UniKey Pro, Time and Drive only.
*[[#Debugger settings|Anti-Debugger]]
*[[#Warning Message|Warning Message]]
 
[[Image:UniKey_Envelop_Tool_Pic16.jpg]]
 
To enable an option, tick the checkbox next to the option. Additional parameters of an option can be configured by clicking [Setting], switching over to the corresponding option under Professional mode. Options with a green tick are enabled, shaded ticks are not enabled.
 
If you enable the [Network] function, you must click on the corresponding [Setting] button to configure the server address and related network parameters.
 
Click on the following icon
 
[[Image:UniKey_Envelop_Tool_Pic17.jpg]]
 
in the progress navigation bar to switch to Protect Project and progress to the next step.
 
==== Build Project ====
 
[[Image:UniKey_Envelop_Tool_Pic18.jpg]]
 
The input window displays all the details about your solution. After check configuration settings from this window, click on the [Protect] button to begin executing Enveloper to protect the project.
 
[[Image:UniKey_Envelop_Tool_Pic19.jpg]]
 
After the encryption operation has completed, the "Encryption successful" will appear in the output window. The project has now completed successfully and output folder
 
=== Professional Mode ===
 
To begin using Enveloper in Professional mode, double-click on the Enveloper executable to start Enveloper, if not already open, and click on the [Professional mode] button in the upper-right corner of the main panel or selecting [Guide Mode] from the [View] menu in the menu bar (Enveloper launches in Professional mode by default).
<!--Screenshot of Enveloper in Professional Mode-->
 
==== New Solution ====
 
Follow [[#New Solution|[New Solution] in Guide mode]].
 
Afterwards, switch to Professional mode.
 
==== Configure Parameters ====
 
[[Image:UniKey_Envelop_Tool_Pic20.jpg]]
 
All configurable settings are available on the left-hand side by clicking on the parameters in the solution window.
 
After all settings have been configured, click on the [Protect] button to begin executing Enveloper to protect the project.
<!--J
Check!
==== Remote Update ====
 
<!--
[3:19 PM] Apple: yes , however you need to make sure you do insert device mode first , and save the project , then the HID will be recorded into the list , then next time you can use non device inserted mode
--><!--
Remote update allows updating the UniKey device's settings without physical access to the device, typically after the device has been deployed and no longer in possession of the software developer.
 
Typically, if settings on a software protection dongle need to be modified or updated, the device must be sent back to the software developer so that settings can be modified directly to the device by developer then sent back to the client - a process that is costly and time consuming.
 
UniKey Enveloper provides the ability to update a UniKey device's settings without access to the device, remotely.
 
To start protect application without dongle, switch UniKey Enveloper to Professional mode.
 
[[Image:UniKey_Envelop_Tool_Pic21.jpg]]
 
'''Uncheck''' the '''Insert Device Mode''' operation, for the remaining configurations please follow the Protect Software using Enveloper instruction.
 
As there is no UniKey device connect to Enveloper, if you want bind your application to a specified HID, the only way to do that is to select bind HID with Selected HID, and then select the specified HID value from the database where you saved the value before you sent the UniKey to the end users (Later version will be added HID management part).
 
[[Image:UniKey_Envelop_Tool_Pic22.jpg]]
 
UniKey Enveloper is a tool to provide application protection, if you want to a update license remotely, please use the "Update Generator Tool", the general procedure is:
 
# Double click on the Generator Icon
## In "Basic Settings", set the correct password for the client's dongle.
## In "Basic Settings", check the "Bind Update Tag", and enter the current tag of our client's dongle.
## In "Basic Settings", also check the "New Update Tag" and enter a new Tag, so that after your client runs the updater, his dongle's tag will change (and because the update is bound to the old tag - item b - he will only be able to update his dongle once).
##In "Module Settings", set the value of Module 0 to the count limit (if desired), and check the "Auto decrement" box
# In "UPT File", click "Generate" and choose the destination for the upt2 file.
# Send the upt2 file and the "Updater" tool to your client, and ask him to run the Updater tool with the upt2 file with the dongle connected.
# Send the enveloped software to your client, together with the dlls.
 
For further UniKey Generator instructions please refer to UniKey Generator part in the UniKey tools manual.
-->

Latest revision as of 14:21, 13 August 2018

UniKey Enveloper User Guide

Version 8.4

Version 1.0 1.1 1.2 1.3 2.0 2.1 2.2 3.0 4.0 5.0 6.0 7.0 7.1 7.3 8.0 8.1 8.2 8.3 8.4
Date 2006.1 2006.8 2006.10 2006.12 2007.2 2007.4 2007.8 2008.5 2008.8 2009.3 2010.4 2010.6 2010.8 2010.9 2012.3 2012.4 2016.5 2016.7 2016.12

About UniKey Enveloper

UniKey Enveloper is a powerful tool that can protect your software from illegal usage. It secures your application by wrapping it in a shell. UniKey Enveloper provides the fastest and easiest automatic software solution to protect your executables, DLLs and data used in and by your applications.

The greatest advantage of using UniKey Enveloper is that you do not have to access the source code of your application. By running this tool and setting up the protect parameters, you can wrap your software in a secure shield, which can guarantee that no one else without your permission can use this protected software. Meanwhile, when you are using Enveloper to protect your application, an anti-debug mechanism will automatically be added to you application, rendering pirates who want to use reverse engineering method to hack your software impossible.

What can be Protected?

You can apply protection directly to data files, executables and DLLs. The protection can be applied by the Enveloper directly which is easy and fast to implement.

Protection Procedure

Protecting software with UniKey Enveloper is simple; users can enable it by following the procedure described below:

  1. Start UniKey Enveloper in the SDK\Utilities\Enveloper\UniKey Envelop Tool
  2. Specify the program which you want to protect
  3. Set protection parameters for the program and execute
  4. Send your protected software together with the corresponding UniKey to your customer

The Structure of the UniKey Enveloper Interface

The Enveloper is stored in UniKey_SDK\Utilities\Enveloper\ To launch the Enveloper, double click on the Enveloper icon, and the Enveloper control panel will appear.

UniKey Enveloper interface

The UniKey Enveloper provides two different interface modes (Guide Mode and Professional Mode) to accommodate different user preferences. Users can switch between the two modes by clicking on the button in the upper right corner of the main panel or alternatively select the working mode from the View menu in the menu bar.

Guide Mode is specially designed for beginners, as the system will guide users step by step to configure their desired setting. Guide Mode is a simple way to get started. Professional Mode is suitable for advanced users who are familiar with the UniKey system. You can modify settings by selecting the specific parameters from the solution window (left hand window). By default, when you start the Enveloper, the main interface will be displayed in Guide Mode, as shown in the following pictures.

Guide Mode Interface Components and Layout

UniKey Enveloper guide mode layout

Guide Mode's interface consists of the:

  1. menu bar;
  2. input window;
  3. progress navigation bar and
  4. output window.

File menu

Enveloper file menu list

  • New Solution: Create a new software protecting solution.
  • Close Solution: Close the currently open solution.
  • Add a Project: Add a project to the currently open solution.
  • Delete current Project: Delete the project that is currently selected.
  • Open: Open a previously saved solution.
  • Save: Save all configurations of the currently open solution, to the current working directory.
  • Save as: Save to a specified location.
  • Import: Open a configuration file created by a previous version of the Enveloper
  • Exit: Close the Enveloper program.

Protect menu

Enveloper protection menu list

  • Protect Project: Execute Enveloper to shield your selected project.
  • Protect All Projects: Execute Enveloper to shield all the projects in the current solution.

View menu

Enveloper view menu list

  • Guide Mode: Switch the Enveloper interface to Guide Mode, which is best used by new users.
  • Professional Mode: Switch the Enveloper interface to Professional Mode.
  • Solution Window: Choose whether to display the solution window or not (only in professional mode).
  • Output Window: Choose whether to display the output window or not.

About menu

Enveloper about menu list

  • About: Provides information about the Enveloper, such as version number, etc.

Drop down list

Enveloper drop down list

  • Drop down list: Lets you select the current project to configure for your overall solution.

Protect button

Enveloper protection button

  • Clicking on the Protection button: Executes protection for your software.

Working mode switch button

Enveloper switch working mode button

  • Working mode switch button: Helps you switch between the two different types of working modes (Guide Mode and Professional Mode) conveniently.

For example, if you are currently using Professional Mode, the working mode button will display Guide Mode, and by clicking on it, the system will toggle to Guide mode, and vice versa.

Input Window

In Guide mode, the input window lets you specify options step by step, guided by system.

Progress Navigation Bar

The Progress navigation bar is a user-friendly tool that helps guide users in completing their configurations and indicates their current progress. The users progress will be highlighted by a yellow box.

Output window

The output window displays information about errors and the Envelopers running status.

Professional Mode Interface and Layout

Professional Mode consists of the following four components:

  1. menu bar;
  2. solution window;
  3. input window;
  4. output window.

The function and content of 1) menu bar and 4) output window in Professional Mode are the same as Guide mode, for more details about these sections please refer to the above section.

UniKey Enveloper professional mode layout

Solution Window

The solution window displays every project in the solution, and all the steps for setting each project in a tree view. By click on the settings in the solution window, you can easily access every setting.

  • Device Type: The drop down allows you to change the type of UniKey device you want to protect the program with.
  • Insert Device Mode: By default, the box is checked, and hence a UniKey is required to be present in the local port when protecting the software. If unchecked, under the option "Bind HID with selected HID", Add and Delete buttons are unlocked for you to add into the HID database for protection of software programs without needing to have the UniKey present.

Input Window

For every setting, the input window provides an interface for users to specify desired settings. Users can use the solution window to configure the content in the input window.

Enveloper Settings

Parameters
Source File The executable file or .DLL to be protected.
Data File Data file associated with the source file.
Output Location The destination folder where the protected file will be saved.
Password UniKey has two-level security permissions by using four passwords. Login as a user by providing the first two passwords or as a vendor by providing all four passwords. When using the Enveloper to protect software, you must input all four passwords.
Module settings Let you assign a module number for your protected software. When the specified module number in the UniKey device is enabled, the protected software can be started or accessed.
  • No Bind Module
  • Bind Module
When the sepcified module number is enabled( the module value is not zero), the protected software can be started.
  • Set Running Count Limits
When write running count into the specified module number, the count will decrease when the protected software is started, and then the protected software can not be started if the count is zero. BTW, warning message can be shown as your setting.
  • Bind Module&Set Limits
When the sepcified module number is enabled( the module value is not zero), the protected software can be started. And then write running count into another module, the count will decrease when the protected software is started, and the protected software can not be started if the count is zero. Warning settings as before.
Time settings The UniKey time model has 16 time modules. You can bind your software to a specific time module, and indicate the expiration date or time duration.
  • No Bind Time
  • Bind a Expiration Date
Indicate the expiration date into the specified time module.The protected software can not be started after the expiration date.
  • Bind a Duration Time
Indicate a duration time into the specified time module.The protected software can not be started when the duration time is 0 day and 0 hour.
HID settings The UniKeys unique identification number. You can bind your software to this number to ensure that only when the corresponding UniKey is presented, the protected software can run.
  • No Bound HID
  • Bind HID with connected device
Bind the connected device, the protected software can run only with the corresponding Unikey inserting.
  • Bind HID with selected HID
Bind the HID in HID database,the protected software can run only with the corresponding Unikey inserting.
SID settings The UniKeys soft identification number. You can bind your software to this number to ensure that only when UniKey with the corresponding SID is presented, the protected software can run.
  • No Bound SID
  • Bind a single SID
Bind one SID, the protected software can run only with the Unikey of this SID inserting.
  • Bind a SID Group
Bind a group of SID,the protected software can run only with the Unikey of the correct SID inserting.
Background settings When the protected software starts working, the software will check the UniKey device every Loop Time (self-defined) in seconds. This ensures that the UniKey device must be connected to the computer while the protected software is under use (not supported on Linux).
Debugger settings

This function lets you protect your software from being cracked by using debugger techniques, such as:

  • Basic
  • Advanced
  • Kernel
  • IDE
  • Virtual PC
Network settings

UniKey PRO, Time and Drive provide software protection in a local network environment. When this function is enabled the UniKey device will search through the network. The software will only work properly if the right device is detected. To use the network function, the following parameters need to be configured: Working Mode

  • Network Only: The protected software will only search for the UniKey through the network.
  • Local->Network: The protected software will search for the UniKey from the local computer firstly, and if it is not found, the software will search the network.
  • Network->Local: The protected software will search for the UniKey on the network first, and if it is not found, the software will search the local computer.

Access Mode

  • Per Thread: Protected software can log in to the UniKey many times.
  • Per Process: Protected software can log in to the UniKey only once.
  • Per IP: For each IP address, only one instance of the protected software can be launched.

Searching Mode

  • Direct Only: The protected software will search for the UniKey from the specified IP address only
  • Direct->Broadcast: The protected software will search the specified IP address for the UniKey, and if the UniKey cannot be found, the software will automatically search the entire network for the UniKey.
  • Broadcast->;Direct: The protected software will search the entire network for the UniKey, and if the UniKey cannot be found, the software will search the specified IP address for the UniKey.

Server IP: The Server IP address where the UniKey is connected.

Server Port: The port number used for the connection between server and client.

Time Out: Defines the time-out value of the communication between the server and clients.

Start Dialog Settings Enable or disable the start screen display function.
Warning Message Define the warning and error output message.


Protect Software using Enveloper

Enveloper protects software without changing the source code. At any time you can start the Enveloper to adjust settings and perform upgrades to your protected software.

New Solution

Create a solution by selecting the File→New Solution from the menu bar, and the following window will appear.

create new solution with the UniKey Enveloper

Select the UniKey Type you are going to use to protect your software. Enter a name and description for your newly created solution, and select the destination folder where the solution file will be stored. Click on the OK button to confirm your settings. The window will close and the Enveloper main panel will switch to Guide Mode automatically, as shown in the following picture.

Enveloper main panel guide mode

The system will create a new project called [your solution name]_1 automatically.

Select Files

Click on the Add button to add the software you want to protect to the current project, you can add software through the file explorer. Once a file has been added you can click Edit to bring up a File Editor window.

Enveloper file editor window

... (locate) button This button next to the Source File input box allows you to locate the software you want to protect, or input the software location directly. If there are some data files associated with your software, you can protect these data files by clicking on the Add button to add them into the data files box. The similar button next to the Output Location input box allows you to specify where the protected software will be stored or input the destination folder directly. Click on OK to finalize the file settings for this software. You can add one or more executable(s) or DLL file(s) to each project. To add another program, please repeat the steps described above, you can add zero or more data files associated with one executable or DLL file.

Device Settings

UniKey Enveloper device settings

Device Settings consist of:

  • Password
  • Bind Module
  • Bind Time
  • Bind HID
  • Bind SID
  • Background Check

To use a UniKey device to protect your software, you must input the correct password to the UniKey device. Click on Setting next to the password option, and the interface will switch to the Password Setting interface, click on Guide Mode in the top right corner to go back at any time. To enable a setting, just check the option box following the respective setting. When the colour of a check mark ✔ changes to green, the setting is enabled. For more detailed options, click on the Setting button. Settings with a shaded check mark ✔ means that the corresponding setting is not enabled. More settings please refer to #Enveloper Settings.

USB icon Use this icon in the progress navigation bar to switch to Device Settings

Password Settings

UniKey Enveloper password settings
Setting a password is essential to ensure that the Enveloper works correctly

Enter the correct four passwords, and then continue to next settings or click Guide Mode to switch back to the previous window.

Module Settings

Module settings please refer to #Enveloper Settings, and then continue to next settings or click Guide Mode to switch back to the previous window.

Time Settings

Time settings please refer to #Enveloper Settings, and then continue to next settings or click Guide Mode to switch back to the previous window.

HID Settings

HID settings please refer to #Enveloper Settings, and then continue to next settings or click Guide Mode to switch back to the previous window.

SID Settings

SID settings please refer to #Enveloper Settings, and then continue to next settings or click Guide Mode to switch back to the previous window.

Background Settings

Background settings please refer to #Enveloper Settings. For ease of use, the system provides some default settings, therefore if you want to use the default settings, you can check the option box to enable the function directly. For example, the system will automatically enable background checks by default.

settings icon After you have finished with all device settings, click on this icon to begin configuring system settings.

System Settings

UniKey Enveloper system settings

System Settings consists of:

  • Start Dialog
  • Network
  • Anti-Debugger, this is enabled by default
  • Warning Message

You can choose to enable and configure any protection function by checking the corresponding tick box and clicking on the setting button. If you enable network functionality, you must click on the corresponding setting button to set the server address. Please note that only the UniKey Pro, Time, and Drive support this function.

build icon Click on this icon to go to the final step.

Build Project

UniKey Enveloper build project details

The input window displays all the details about your solution. You can check your configuration from this window, and click on the Protect button to execute your software protection with the Enveloper tool.


Professional Mode

Professional Mode provides an interface for advanced users to set the UniKey hardware and system configuration. To switch to Professional Mode, after creating a new solution, click on the Professional Mode button.

Solution

UniKey Enveloper display solution details

By clicking on the parameters in the solution window, you can start to configure the parameters in the input window directly. After finishing all configurations, click on the protect button to execute protection.