Category:UniKey FAQ: Difference between revisions

From SecuTech Wiki
Jump to navigationJump to search
Joseph (talk | contribs)
Bao (talk | contribs)
mNo edit summary
 
(36 intermediate revisions by 3 users not shown)
Line 5: Line 5:
[[category:Software Protection]]
[[category:Software Protection]]
Frequently Asked Questions on UniKey.
Frequently Asked Questions on UniKey.
==General==
===What is UniKey?===
UniKey is a software protection dongle. Developers can utilize UniKey to protect their executables and data files such that only those with the correct UniKey hardware device(s) can run the protected application - those without the correct UniKey device cannot execute the protected application. Moreover, UniKey provides protection from decompilers and debuggers, thwarting attempts to reverse engineer protected applications, allowing software developers to safeguard intellectual property.
===What protection methods does UniKey support?===
UniKey offers two protection methods; The UniKey Enveloper and The UniKey API.
The UniKey Enveloper seamlessly protects executables and DLL files by the use of different protection schemes without the need for programming or additional changes to the files. Without the correct UniKey device(s), the protected software cannot be executed. The UniKey Application Programming Interface (API) permits greater customization and variation of control of software functionality through the various protection schemes, drawing from a large library of APIs in various programming languages. On top of Enveloper and API protection, Flash and video files can be protected with Flash Protection with the Enveloper, and Video Protection with UniKey Video Protector respectively.
===What licensing models does UniKey support?===
UniKey supports a diverse range of licensing models appropriate to business needs. These include: feature-based, rental, subscription, floating and/or time-based, perpetual, try-before-you-buy, pay-per-use, volume licensing, and custom licensing schemes.
===What are the differences between UniKey models?===
Please see [https://esecutech.com/unikey-product-comparison UniKey Product Comparison].
===How can I begin using UniKey?===
Please see the [http://files.esecutech.com/marketing-materials/ProductsDoc/UniKey/UniKeyQuickStartGuide.pdf UniKey Quick Start Guide].
===Where can I receive resources or assistance?===
Please see [[#Additional resources|Additional resources]].


==Hardware==
==Hardware==


===What does "driverless" refer to?===
===What are the physical hardware specifications of UniKey?===
 
See [[UniKey_Hardware_Physical_Specifications_Image|UniKey Hardware Specifications]].


UniKey devices is driverless, meaning usage of UniKey requires no installation of drivers or additional software. Supported operating systems already possess drivers needed by UniKey to operate and are automatically installed upon the first connection of the UniKey device, significantly reducing the problems associated with driver-dependent devices.
===What does 'driverless' refer to?===
 
UniKey devices are driverless, meaning usage of UniKey requires no installation of drivers or additional software. Supported operating systems already possess what is required by UniKey to operate and are automatically installed when a UniKey device is first connected, significantly reducing the problems associated with driver-dependent devices.


===What does the LED light on the UniKey device indicate? ===
===What does the LED light on the UniKey device indicate? ===


If the LED light on the UniKey device is continually on, it is recognised by the computer and should be functioning correctly. If the LED light on the UniKey device is flashing, the UniKey device is not recognised by the computer.
If the LED light on the UniKey device is continually on, it has been recognized by the computer and should be functioning correctly. If the LED light on the UniKey device is flashing, the UniKey device has not been recognized by the computer.


===What should I do if the LED light is flashing?===
===What should I do if the LED light is flashing?===


A flashing LED light indicates the UniKey device is not recognised by the computer. Under normal circumstances, the LED light should not be flashing when used under Windows, Mac OSX, MinGW, MIPS, ARM, FreeBSD and Linux; however, if it is, reconnect the UniKey device to the computer to attempt to resolve the problem.
A flashing LED light indicates the UniKey device is not recognized by the computer. Under normal circumstances, the LED light should not be flashing when used under Windows, Mac OSX, MinGW, MIPS, ARM, FreeBSD and Linux; however, if it is, reconnect the UniKey device to the computer to attempt to resolve the problem. A situation where the LED light on the device may be flashing is if you are using UniKey on a Virtual Machine. Please check if the UniKey Device is mounted onto the system. When the device is mounted, keep the device plugged in and reboot the system under the Virtual Machine. After the Virtual Machine has restarted, the device should now be recognized by the system.
 
A situation where the LED light on the device may be flashing is if you are using UniKey on a Virtual Machine. Please check if the UniKey Device is mounted onto the system. When the device is mounted, keep the device plugged in and reboot the system under the Virtual Machine. After the Virtual Machine has restarted, the device should now be recognized by the system.
 
Should the problem remain unresolved, please contact us at http://www.esecutech.com/support.


<!--Otherwise, see hardware troubleshooting guide-->
Should the problem remain unresolved, please see the [[UniKey Hardware Troubleshooting|UniKey Hardware Troubleshooting Guide]] or [[#Where_can_I_receive_further_assistance.3F|contact us]].


===Are UniKey devices certified to work in USB 3.0 ports?===
===Are UniKey devices certified to work in USB 3.0 ports?===


Yes. UniKey devices are backward compatible with USB 3.0 ports.
Yes. UniKey devices are compatible with USB 3.0 ports.


===What does the ten digit number on the USB plug head refer to?===
===What does the ten digit number on the USB plug head refer to?===


The ten digit number engraved on the USB head of UniKey devices is not the hardware ID number, contrary to most inital expectations, but the product's serial number. It is for internal use only, and, as such, supplementary information if requested cannot be provided.
The ten digit number engraved on the USB head of UniKey devices is not the hardware ID number; contrary to most initial expectations, but the product's serial number. It is for internal use only, and, as such, supplementary information if requested cannot be provided.


===What steps does SecuTech take to ensure UniKey is environmentally friendly?===
===What steps does SecuTech take to ensure UniKey is environmentally friendly?===
Line 38: Line 67:
SecuTech is committed to supplying products that are environmentally sustainable. All parts and production processes of UniKey devices are lead-free and ROHS-compliant.
SecuTech is committed to supplying products that are environmentally sustainable. All parts and production processes of UniKey devices are lead-free and ROHS-compliant.


==Compatibility==
===What is the Harmonized System (HS) Code for UniKey (and UniToken, UniMate, UniReader)?===
 
<table class="wikitable">
<tr>
<th></th>
<th width="20%">UniKey</th>
<th width="20%">UniToken</th>
<th width="20%">UniMate</th>
<th width="20%">UniReader</th>
</tr>
<tr>
<td>Chapter</td>
<td colspan="4">Chapter 85 "Electrical machinery and equipment and parts thereof; sound recorders and reproducers, television image and sound recorders and reproducers, and parts and "accessories of such articles"</td>
</tr>
<tr>
<td>Heading</td>
<td colspan="4">Heading 85.23 "Discs, tapes, solid-state non-volatile storage devices, "smart cards" and other media for the recording of sound or of other phenomena, whether or not recorded, including matrices and masters for the production of discs, but excluding products of Chapter 37."</td>
</tr>
<tr>
<td>Subheading</td>
<td>Semiconductor media: Solid-state non-volatile storage devices</td>
<td colspan="3">Semiconductor media: "smart cards"</td>
</tr>
<tr>
<td>HS Code</td>
<td>8523.51</td>
<td colspan="3">8523.52</td>
</tr>
</table>


===What operating systems does UniKey support?===


UniKey supports operating systems Windows 98SE, Windows ME, Windows 2000, Windows XP, Windows 2003, Windows Vista, Windows 7, both 32-bit and 64 bit, Mac OSX, FreeBSD and Linux (2.2 and above). Libraries and associated API samples are provided for using UniKey with each operating system.
==Development==


===Does UniKey require drivers to work under Windows 8?===
===What operating systems does UniKey support?===


No. UniKey is driver-independent and will work under Windows 8. However, as Windows 8 is currently under development, conditions may arise where UniKey may not work with Windows 8 as intended. If any difficulties should be encountered when using UniKey with Windows 8, please contact us at support@esecutech.com or directly by opening a new ticket at http://esecutech.com/support.
UniKey supports operating systems Windows 98SE, ME, 2000, XP, 2003, Vista, 7, 8, 8.1, and 10, Windows Server 2008/2012 (both 32- and 64 bit), Mac OS X (excluding UniKey Drive), FreeBSD and Linux (2.2 and above). Libraries and associated API samples are provided for using UniKey with each operating system.


===What programming languages does UniKey support?===
===What programming languages does UniKey support?===


UniKey supports programming languages Access, AutoCAD, Borland C++ Builder, Clarion, dBaseFortran, Delphi, Director, FileMaker, Fortran, Java, LabView, LabWindows, Matlab, MinGW, NSIS, PowerBuilder, PureBasic, Realbasic, Visual Basic, Visual Basic.NET, Visual C#.NET, Visual C++, Visual C++.NET, Visual DataFlex, Visual FoxPro, Visual Object Cobol, WinDEV and otherwise any compiler that works with DLL/LIB.
UniKey supports programming languages Access, AutoCAD, Borland C++ Builder, Clarion, dBaseFortran, Delphi, Director, FileMaker, Fortran, Java, LabView, LabWindows, Matlab, MinGW, NSIS, PowerBuilder, PureBasic, Realbasic, Visual Basic, Visual Basic.NET, Visual C#.NET, Visual C++, Visual C++ .NET, Visual DataFlex, Visual FoxPro, Visual Object Cobol, WinDEV and otherwise any compiler that works with DLL/LIB.


===What programming languages on respective operating systems are available in UniKey's libraries?===
===What programming languages on respective operating systems are available in UniKey's libraries?===


As of UniKey SDK version 5.4.8 (2012-06-04)
As of UniKey SDK version 6.4.2 (2016-07-26). Please note that many more languages are supported).


<table border='1'>
<table class="wikitable">
<tr>
<tr>
<th>Operating System</th>
<th>Operating System</th>
<th>Programming Lanuage</th>
<th>Programming Language</th>
</tr>
</tr>
<tr>
<tr>
Line 70: Line 126:
</tr>
</tr>
<tr>
<tr>
<td>Mac OS (32- and 64-bit)</td>
<td></td>
<td>FORTRAN</td>
</tr>
<tr>
<td>Mac OS X (32- and 64-bit)</td>
<td>C</td>
<td>C</td>
</tr>
</tr>
Line 87: Line 147:
<tr>
<tr>
<td>Windows (32-bit)</td>
<td>Windows (32-bit)</td>
<td>Boardland C++ Builder</td>
<td>Delphi</td>
</tr>
</tr>
<tr>
<tr>
<td></td>
<td></td>
<td>C++ Builder</td>
<td>Pure C</td>
</tr>
</tr>
<tr>
<tr>
<td></td>
<td></td>
<td>C++ Helper Class</td>
<td>RealBasic</td>
</tr>
<tr>
<td>Windows (32- and 64-bit)</td>
<td>ActiveX</td>
</tr>
</tr>
<tr>
<tr>
<td></td>
<td></td>
<td>Delphi</td>
<td>Arx</td>
</tr>
</tr>
<tr>
<tr>
<td></td>
<td></td>
<td>PureC</td>
<td>C#</td>
</tr>
</tr>
<tr>
<tr>
<td></td>
<td></td>
<td>RealBasic</td>
<td>FORTRAN</td>
</tr>
</tr>
<tr>
<tr>
<td>Windows (64-bit)</td>
<td></td>
<td>.NET DLL</td>
<td>Java</td>
</tr>
</tr>
<tr>
<tr>
<td>Windows (32- and 64-bit)</td>
<td></td>
<td>ActiveX</td>
<td>MinGW</td>
</tr>
</tr>
<tr>
<tr>
<td></td>
<td></td>
<td>DLL</td>
<td>Visual C++</td>
</tr>
</tr>
<tr>
<tr>
<td></td>
<td></td>
<td>Fortran</td>
<td>Matlab</td>
</tr>
</tr>
<tr>
<tr>
<td></td>
<td></td>
<td>Java</td>
<td>Python</td>
</tr>
</tr>
<tr>
<tr>
<td></td>
<td></td>
<td>MinGW</td>
<td>LabView</td>
</tr>
<tr>
<td>FreeBSD (32- and 64-bit)</td>
<td>C</td>
</tr>
</tr>
<tr>
<tr>
<td></td>
<td></td>
<td>Visual C++</td>
<td>Java</td>
</tr>
</tr>
</table>
</table>


===Does UniKey support C#.NET?===
===Is UniKey Windows 8 and 10 compatible?===


<!--Change-->Yes. Please use the UniKey DotNet libraries. Samples are provided to illustrate use with UniKey APIs.
Yes. For users who are working with previous versions of the UniKey SDK, please download the latest SDK from our [https://esecutech.com/downloads/ SDK downloads page].
 
===Does UniKey support SUSE 10?===


===Does UniKey support DotNet?===
Yes. Libraries and associated API samples are provided for using UniKey STD/PRO/Time with SUSE 10. When using UniKey with SUSE 10, ensure su permissions are used.


Yes. UniKey STD/PRO/Time has native UniKey Win32_64.DotNetDll library support and support .NET versions 2.0, 3.0, 3.5, 4.0. UniKey Drive also includes DLL libraries which can be used for integration with DotNet applications.
===Does UniKey support C# .NET?===


Please note UniKey Drive's libraries is built with C, whereas UniKey STD/PRO/Time's libraries is built with .NET.
Yes. Please use the respective UniKey .NET DLLs. Samples are provided to illustrate use with UniKey APIs.


===Which of the 32-bit and 64-bit versions of the DotNet libraries should be used?===
===Does UniKey support .NET?===


When using UniKey STD/PRO/Time, only one version of the UniKey DotNet library is needed for use with both 32-bit and 64-bit systems.
Yes. UniKey STD/PRO/Time has native .NET library support and supports .NET versions 2.0, 3.0, 3.5, 4.0, and 4.5. UniKey Drive also includes DLL libraries which can be used for integration with .NET applications. Please note UniKey Drive's libraries are built with C, whereas UniKey STD/PRO/Time's libraries are built with .NET.


When using UniKey Drive, both versions of the DLL libraries are needed for their respective 32-bit and 64-bit systems.
===Which of the 32- and 64-bit versions of the .NET libraries should be used?===


===Where in a DotNet project should the DotNet DLL libraries be imported into?===
When using UniKey STD/PRO/Time, only one version of the UniKey .NET library is needed for use with both 32- and 64-bit systems.


All necessary DotNet DLL libraries should be imported into the working directory of the DotNet project. Often, the DLL libraries can be imported into the same directory as the executable file(s).
When using UniKey Drive, both versions of the DLL libraries are needed for their respective 32- and 64-bit systems.


===Does UniKey support SUSE 10?===
===Where in a .NET project should the .NET DLL libraries be imported into?===


Yes. Libraries and associated API samples are provided for using UniKey STD/PRO/Time with SUSE 10. When using UniKey with SUSE 10, ensure su permissions are used.
All necessary .NET DLL libraries should be imported into the working directory of the .NET project. Often, the DLL libraries can be imported into the same directory as the executable file(s).


===Does UniKey support VB.NET?===
===Does UniKey support VB.NET?===


Yes. Please use the UniKey DotNet libraries. Samples are provided to illustrate how to use the UniKey APIs.
Yes. Please use the UniKey .NET libraries. Samples are provided to illustrate how to use the UniKey APIs.
 
===Are you able to provide the ARM-cross-compiled version of your library for EABI version 4?===
 
Yes, we can provide cross-compilation for the UniKey Library. Please contact our support team at [mailto:support@esecutech.com support@esecutech.com] along with the cross compilation tool chain so that we may be able to provide you with the cross-compiled library.
 
 
==Network==


==Development==
===How many concurrent users can be connected to a UniKey device?===
 
The maximum number of concurrent users connected to a UniKey device over the network is 64511 (that is, the total number of ports [65535] minus the first 1024 reserved ports).


===I am using the ARM platform. Are you able to provide the ARM-cross-compiled version of your library for EABI version 4?===
<!--Check-->
Yes, we can provide cross-compilation for the UniKey Library. Please contact our support team at support@esecutech.com along with the cross compilation tool chain. We will be able to reply you with the the cross-compiled library as soon as possible.


==Security==
==Security==
Line 177: Line 253:
===Can I change the password of my UniKey dongle?===
===Can I change the password of my UniKey dongle?===


Yes. Please use UniKey Console Tool or the <code>UniKey_Generate_New_Password</code> API function for setting a new password for the UniKey dongle.
Yes. Please use the UniKey Console Tool or the <code>UniKey_Generate_New_Password</code> API function for setting a new password for the UniKey dongle. Please note there is a limit for generating a new password on a UniKey device.


===Is there a limit to the number of login attempts?===
===Is there a limit on how many times a new password can be generated on a UniKey device?===


There is not limit on the number of login attempts after a password is set on a UniKey device.
For security reasons, each UniKey device can only generate a new password <b>twice</b>. Afterwards, the password cannot be changed.


===Is there a limit on how many times a new password can be generated on a UniKey device?===
===Can I set my UniKey devices with the same password?===


For reasons of security, each UniKey device can only generate a new password '''twice'''.
Yes. If you wish to use the same password for all, or a set of UniKey devices, use the same seed value when generating the password for your UniKey device. Please note that UniKey STD/PRO/Time's password system is different from UniKey Drive, as UniKey Drive uses 8-digit long passwords.


===Can I set my UniKey devices with the same password?===
===Is there a limit to the number of login attempts?===


Yes. If you wish to use the same password for all or a set of UniKey devices, use the same seed value for generating the password for your UniKey device. Please note that UniKey STD/PRO/Time's password system is different from UniKey Drive, as UniKey Drive implements eight digit password length.
There is no limit on the number of login attempts after a password is set on a UniKey device.


===Can the UniKey device be duplicated?===
===Can the UniKey device be duplicated?===
Line 195: Line 271:
No. The UniKey device cannot be duplicated.
No. The UniKey device cannot be duplicated.


<!--===Java doesn't support the "UniKey Generate Password Type" function. How can I overcome this?===
<!--START COMMENT
===Java doesn't support the "UniKey Generate Password Type" function. How can I overcome this?===


You may be able to resolve this with the following code:
You may be able to resolve this with the following code:


<code>
<pre>
short[] p1 = new short[1];
short[] p1 = new short[1];


Line 225: Line 302:


long retval = mUniKey.UniKey_Vender_Logon(handle,p1,p2,p3,p4);
long retval = mUniKey.UniKey_Vender_Logon(handle,p1,p2,p3,p4);
</code>
</pre>


===VB6 IDE doesn't support the "UniKey Drive Generate Password Type" function. How can I overcome this?===
===VB6 IDE doesn't support the "UniKey Drive Generate Password Type" function. How can I overcome this?===


A tool for generating small value passwords for UniKey Drive with VB6 can be provided upon request. Please contact support@esecutech.com.-->
A tool for generating small value passwords for UniKey Drive with VB6 can be provided upon request. Please contact support@esecutech.com.
END COMMENT-->


==UniKey Time==
==UniKey Time==


===How could I use UniKey Time Features?===
===How can I use UniKey Time Features?===
 
Please refer to the UniKey Real Time Clock Protection Solution from


SecuTech Wiki -> Software Protection -> UniKey Application Solution
Please refer to the [[UniKey RTC API Protection Solution|UniKey Real Time Clock Protection Solution]]
 
This article will guide you on how to use UniKey RTC Protection Solution from the beginning.


===How many Time Modules does UniKey Time provide?===
===How many Time Modules does UniKey Time provide?===
Line 245: Line 319:
Each UniKey Time dongle has 16 time modules.
Each UniKey Time dongle has 16 time modules.


===What is the purpose of the UniKey time modules?===
===What is the purpose of the UniKey Time modules?===


Each time module adds certain functionality. For example, the software expiry date can be set with a time module. A start time and an end time for Time Module No. 1, for example, can be set and then bound to with your software.
Each time module adds certain functionality. For example, the software expiry date can be set with a time module. A start time and an end time for Time Module No. 1, for example, can be set and then bound to your software.


===Why does the UniKey Envelop Tool not save time module settings?===
===Why does the UniKey Enveloper Tool not save time module settings?===


Currently, the UniKey Envelop Tool can only set time modules, but not read the time modules. Please note this, as even if you have saved the Envelop Project, it will not be able to read back the time module you have set.
Currently, the UniKey Enveloper Tool can only set time modules, but not read the time modules. Please note this, as even if you have saved an Enveloper Project, it will not be able to read back the time module you have set.


===What is the difference between the three UniKey_Check_Time_Module methods?===
===What is the difference between the three <code>UniKey_Check_Time_Module</code> methods?===


<code>UniKey_Check_Time_Module</code> references a given time.
<code>UniKey_Check_Time_Module</code> references a given time.
Line 260: Line 334:


<code>UniKey_Check_Time_Module_Now_PC</code> references the time from the host machine's system.
<code>UniKey_Check_Time_Module_Now_PC</code> references the time from the host machine's system.
===How long does UniKey Time's battery last for?===
Below is some empirical data taken from twelve UniKey Time device measurements.
Case 1: The UniKey Time device is not inserted in a USB port
<table class="wikitable">
<tr>
<th>Group No.</th>
<th>No. of Devices</th>
<th>Current (uA)</th>
</tr>
<tr>
<td>1</td>
<td>1</td>
<td>0.32</td>
</tr>
<tr>
<td>2</td>
<td>1</td>
<td>0.34</td>
</tr>
<tr>
<td>3</td>
<td>1</td>
<td>0.32</td>
</tr>
<tr>
<td>4</td>
<td>3</td>
<td>0.94</td>
</tr>
<tr>
<td>5</td>
<td>6</td>
<td>1.99</td>
</tr>
<tr>
<td></td>
<td>Average current per device</td>
<td>0.32</td>
</tr>
</table>
Case 2: The UniKey Time device is inserted in a USB port
<table class="wikitable">
<tr>
<th>Group No.</th>
<th>No. of Devices</th>
<th>Current (uA)</th>
</tr>
<tr>
<td>1</td>
<td>1</td>
<td>0.31</td>
</tr>
<tr>
<td>2</td>
<td>1</td>
<td>0.34</td>
</tr>
<tr>
<td>3</td>
<td>1</td>
<td>0.32</td>
</tr>
<tr>
<td>4</td>
<td>3</td>
<td>0.94</td>
</tr>
<tr>
<td>5</td>
<td>6</td>
<td>1.83</td>
</tr>
<tr>
<td></td>
<td>Average current per device</td>
<td>0.32</td>
</tr>
</table>
<u>Pre-conditions</u>
# the full capacity of a battery is 40mAH, i.e. 40000uAH
# the average capacity a battery is 90%
# the standby release of the battery is 1% per month, i.e. 0.033% per day
# the standby current and working current is the same, i.e. 0.32 uA
<u>Calculation</u>
<pre>
Let t be UniKey Time's battery life in days:
(t * 0.00033 * 40000) + (t * 0.32 * 24) = 40000 * 0.90
=> t = 1724.14
</pre>
From the above real-world experiments observing twelve UniKey Time devices, it is calculated the battery life of UniKey Time is 1724 days or 4.7 years.


===What happens when the battery within the UniKey Time device runs out?===
===What happens when the battery within the UniKey Time device runs out?===


During normal operation, the UniKey Time device draws power from the machine when in use, and uses its inbuilt battery when not plugged in. On battery alone, a typical UniKey device lasts for 3 years.
During normal operation, the UniKey Time device draws power from the machine when in use, and uses its inbuilt battery when not plugged in. On battery alone, a typical UniKey device lasts for a minimum 3 years. When the battery within the device runs out, the dongle will revert back to a UniKey PRO dongle, so as to function as and encompass all of the features of a UniKey PRO device. This will allow the device to continue to protect your software, however the real-time clock feature will cease to function and the date and time reported by the device will be its factory default: depending on the time modules set, modules will expire as a result, requiring the end user to contact you to replace the device if necessary.
 
When the battery within the device runs out, the dongle will revert that to a UniKey PRO dongle, so as to function as and encompass all of the features of a UniKey PRO device.


This will allow the device to continue to protect your software, however the real time clock feature will cease to function, requiring the end user to contact you to replace the device if necessary.


==Troubleshooting==
==Troubleshooting==
Line 273: Line 445:
===What steps should I take if my UniKey device isn't functioning or recognized?===
===What steps should I take if my UniKey device isn't functioning or recognized?===


:''See [[UniKey Hardware Troubleshooting]] and follow the UniKey Hardware Troubleshooting guide.'' If the problem cannot be resolved, please contact Secutech Technical Support with details including a description of and steps taken to resolve the problem at support@esecutech.com.
See [[UniKey Hardware Troubleshooting]] and follow the UniKey Hardware Troubleshooting guide. If the problem cannot be resolved, please [[#Where_can_I_receive_further_assistance.3F|contact us]].


===I cannot set a new password on my UniKey device after surpassing the limit of two maximum password resets. What should I do?===
===I cannot set a new password on my UniKey device after surpassing the limit of two maximum password resets. What should I do?===


Please contact Secutech Technical Support with your affected UniKey device’s hardware ID (obtainable using the [[UniKey Assist Tool|Assist Tool]]) at support@esecutech.com.
Please [[#Where_can_I_receive_further_assistance.3F|contact SecuTech Technical Support]] with your affected UniKey device’s hardware ID (obtainable using the [[UniKey Assist Tool|Assist Tool]]) at [mailto:support@esecutech.com support@esecutech.com].


===Why isn't UniKey Drive recognized under a Windows XP Non-Administrator User Account?===
===Why isn't UniKey Drive recognized under a Windows XP Non-Administrator User Account?===


Please use administrator permissions to recognize UniKey Drive under a Windows XP non-administrator user account.
Please use administrator permissions to locate a UniKey Drive under a Windows XP non-administrator user account.


===Why does the Linux sample produce unexpected results?===
===Why does the Linux sample produce unexpected results?===


Using Linux, you must add the UniKey udev information for your Linux system. You can find information specific to your system type in the UniKey SDK under directory <code>UniKey SDK\Samples\Linux32.C\Sample\Readme</code>.
Using Linux, you must add the UniKey udev information for your Linux system. You can find information specific to your system type in the UniKey SDK in the directory <code>UniKey SDK\Samples\Linux32.C\Sample\Readme</code>


===I receive an "Error 117" error message when using the UniKey Network Feature. How do I solve this error?===
===I received an "Error 117" error message when using the UniKey Network Feature. How do I solve this error?===


Error 117 indicates that the UniKey Network Service has not started on the machine. Please install the UniKey Network Server Service before clients connect to the server. The UniKey Network Server can be found in the UniKey SDK under direcory <code>UniKey SDK\Network\Server\Network.Server.ia32</code>.
Error 117 indicates that the UniKey Network Service has not started on the machine. Please install the UniKey Network Server Service before connecting to the server. The UniKey Network Server can be found in the UniKey SDK in the direcory <code>UniKey SDK\Network\Server\Network.Server.ia32</code>


===I receive an "Error 105" error message when using the UniKey Network Feature. How do I solve this error?===
===I received an "Error 105" error message when using the UniKey Network Feature. How do I solve this error?===


Error 105 indicates that UniKey client-side and server-side communication is blocked. This will occur when a firewall at either end is blocking communication. Turn off the firewall for both server side and client side while testing or otherwise open the respective ports, depending on configured parameters, on either end to allow communication between the server and client.
Error 105 indicates that UniKey client-side and server-side communication is blocked. This will occur when a firewall at either end is blocking communication. Turn off the firewall on both server and client sides while testing or otherwise open the respective ports, depending on configured parameters, on either end to allow communication between the server and client.


===I have reason to believe I have found a bug or an abnormality in a Secutech product. How can I get in touch to resolve this problem?===
===I have reason to believe I have found a bug or an abnormality in a SecuTech product. How can I get in touch to resolve this problem?===
 
All technical faults or suggestions that improve our products are welcome and appreciated. Please contact us at either [mailto:support@esecutech.com support@esecutech.com] or https://esecutech.com/support with a description and/or methodology of the discovered malfunction or problem.


All technical faults or suggestions that improve our products are welcome and appreciated. Please contact us at either support@esecutech.com or http://esecutech.com/support with a description and/or methodology of the discovered malfunction or problem.


==Sales==
==Sales==
Line 303: Line 476:
===What is the free evaluation kit?===
===What is the free evaluation kit?===


A free evaluation kit can be obtained by navigating to the link http://esecutech.com/order-evaluation/free-evaluation.html and filling out the corresponding form. The evaluation kit contains a fully functional UniKey PRO dongle and a Protection Software Kit CD. The evaluation kit can be used indefinitely without any limitation in features. Please allow between 3 to 5 working days to receive your evaluation kit.
A free evaluation kit can be obtained by navigating to the link https://esecutech.com/evaluate and filling out the corresponding form. The evaluation kit contains a fully functional UniKey PRO dongle and a Protection Software Kit CD. The evaluation kit can be used indefinitely without any limitation in features. Please allow between 3 to 5 working days to receive your evaluation kit. Please note that the free evaluation kit is only available to North America and Europe. For other countries, please contact [mailto:sales@esecutech.com sales@esecutech.com].


===Can I label the UniKey device with my logo?===
===Can I customize my UniKey?===


Yes. Please contact us at sales@esecutech.com or our distributor in your local area.
Yes. OEM customizations such as laser engraving, sticker labels, customized hardware IDs, hardware colors, device naming, [[UniKey_STD,_PRO_Waterproof_Rubber_Jacket_Photo|waterproof rubber cases]] (rubber case only available for UniKey STD and PRO) and others can be requested. Please note however that certain additional features are only available for minimum order number.


===Where can I find information on UniKey product pricing?===
===Where can I find information on UniKey product pricing?===


Please contact us at sales@esecutech.com for pricing on UniKey products. Bulk purchases attract discounts and are discounted in various bulk amounts. Requested additional features such as laser engraving, sticker labels, customised hardware IDs, hardware colours, device naming and others vary in additional costs. Please note however that certain additional features are only available for a minimum number of orders.
Please contact us at [mailto:sales@esecutech.com sales@esecutech.com] for pricing on UniKey products. Bulk purchases attract discounts and are discounted in various bulk amounts. Requested additional features such as laser engraving, sticker labels, customized hardware IDs, hardware colors, device naming and others vary in additional costs.


===How long does it take to receive a purchase?===
===How long does it take to receive a purchase?===
Times between a purchase and receiving the purchased goods depend on the quantity purchased.<br>
 
For orders of less than 1000 units, orders typically take 2 working days.<br>
Times between a purchase and receiving the purchased goods depend on the quantity purchased.
For orders between 1000 and 5000 units, orders typically take 3 working days.<br>
* Orders of less than 1000 units, typically take 2 working days.
For orders greater than 5000 units, orders may take between 1 or 2 weeks.
* Orders between 1000 and 5000 units, typically take 3 working days.
* Orders greater than 5000 units, may take between 1 or 2 weeks.
 


==Additional resources==
==Additional resources==
===Where can I find additional resources?===
Additional resources, including the UniKey Manual and related documents, can be found within the UniKey SDK, which can be downloaded from [https://esecutech.com/downloads Downloads]. Please read the "ReadMe.txt" located in the root directory and within other folders of the SDK. Please contact [mailto:support@esecutech.com support@esecutech.com] for the SDK archive file password.


===Where can I receive further assistance?===
===Where can I receive further assistance?===


We, at SecuTech, are dedicated to providing high-quality technical support to our customers. If you have any questions, please feel free to contact us at http://www.esecutech.com/support or support@esecutech.com.
We, at SecuTech, are dedicated to providing high-quality technical support to our customers. If you have any questions, please feel free to contact us at [mailto:support@esecutech.com support@esecutech.com] or directly by opening a new ticket at https://esecutech.com/support.

Latest revision as of 16:28, 10 August 2016

Frequently Asked Questions on UniKey.

General

What is UniKey?

UniKey is a software protection dongle. Developers can utilize UniKey to protect their executables and data files such that only those with the correct UniKey hardware device(s) can run the protected application - those without the correct UniKey device cannot execute the protected application. Moreover, UniKey provides protection from decompilers and debuggers, thwarting attempts to reverse engineer protected applications, allowing software developers to safeguard intellectual property.

What protection methods does UniKey support?

UniKey offers two protection methods; The UniKey Enveloper and The UniKey API.

The UniKey Enveloper seamlessly protects executables and DLL files by the use of different protection schemes without the need for programming or additional changes to the files. Without the correct UniKey device(s), the protected software cannot be executed. The UniKey Application Programming Interface (API) permits greater customization and variation of control of software functionality through the various protection schemes, drawing from a large library of APIs in various programming languages. On top of Enveloper and API protection, Flash and video files can be protected with Flash Protection with the Enveloper, and Video Protection with UniKey Video Protector respectively.

What licensing models does UniKey support?

UniKey supports a diverse range of licensing models appropriate to business needs. These include: feature-based, rental, subscription, floating and/or time-based, perpetual, try-before-you-buy, pay-per-use, volume licensing, and custom licensing schemes.

What are the differences between UniKey models?

Please see UniKey Product Comparison.

How can I begin using UniKey?

Please see the UniKey Quick Start Guide.

Where can I receive resources or assistance?

Please see Additional resources.


Hardware

What are the physical hardware specifications of UniKey?

See UniKey Hardware Specifications.

What does 'driverless' refer to?

UniKey devices are driverless, meaning usage of UniKey requires no installation of drivers or additional software. Supported operating systems already possess what is required by UniKey to operate and are automatically installed when a UniKey device is first connected, significantly reducing the problems associated with driver-dependent devices.

What does the LED light on the UniKey device indicate?

If the LED light on the UniKey device is continually on, it has been recognized by the computer and should be functioning correctly. If the LED light on the UniKey device is flashing, the UniKey device has not been recognized by the computer.

What should I do if the LED light is flashing?

A flashing LED light indicates the UniKey device is not recognized by the computer. Under normal circumstances, the LED light should not be flashing when used under Windows, Mac OSX, MinGW, MIPS, ARM, FreeBSD and Linux; however, if it is, reconnect the UniKey device to the computer to attempt to resolve the problem. A situation where the LED light on the device may be flashing is if you are using UniKey on a Virtual Machine. Please check if the UniKey Device is mounted onto the system. When the device is mounted, keep the device plugged in and reboot the system under the Virtual Machine. After the Virtual Machine has restarted, the device should now be recognized by the system.

Should the problem remain unresolved, please see the UniKey Hardware Troubleshooting Guide or contact us.

Are UniKey devices certified to work in USB 3.0 ports?

Yes. UniKey devices are compatible with USB 3.0 ports.

What does the ten digit number on the USB plug head refer to?

The ten digit number engraved on the USB head of UniKey devices is not the hardware ID number; contrary to most initial expectations, but the product's serial number. It is for internal use only, and, as such, supplementary information if requested cannot be provided.

What steps does SecuTech take to ensure UniKey is environmentally friendly?

SecuTech is committed to supplying products that are environmentally sustainable. All parts and production processes of UniKey devices are lead-free and ROHS-compliant.

What is the Harmonized System (HS) Code for UniKey (and UniToken, UniMate, UniReader)?

UniKey UniToken UniMate UniReader
Chapter Chapter 85 "Electrical machinery and equipment and parts thereof; sound recorders and reproducers, television image and sound recorders and reproducers, and parts and "accessories of such articles"
Heading Heading 85.23 "Discs, tapes, solid-state non-volatile storage devices, "smart cards" and other media for the recording of sound or of other phenomena, whether or not recorded, including matrices and masters for the production of discs, but excluding products of Chapter 37."
Subheading Semiconductor media: Solid-state non-volatile storage devices Semiconductor media: "smart cards"
HS Code 8523.51 8523.52


Development

What operating systems does UniKey support?

UniKey supports operating systems Windows 98SE, ME, 2000, XP, 2003, Vista, 7, 8, 8.1, and 10, Windows Server 2008/2012 (both 32- and 64 bit), Mac OS X (excluding UniKey Drive), FreeBSD and Linux (2.2 and above). Libraries and associated API samples are provided for using UniKey with each operating system.

What programming languages does UniKey support?

UniKey supports programming languages Access, AutoCAD, Borland C++ Builder, Clarion, dBaseFortran, Delphi, Director, FileMaker, Fortran, Java, LabView, LabWindows, Matlab, MinGW, NSIS, PowerBuilder, PureBasic, Realbasic, Visual Basic, Visual Basic.NET, Visual C#.NET, Visual C++, Visual C++ .NET, Visual DataFlex, Visual FoxPro, Visual Object Cobol, WinDEV and otherwise any compiler that works with DLL/LIB.

What programming languages on respective operating systems are available in UniKey's libraries?

As of UniKey SDK version 6.4.2 (2016-07-26). Please note that many more languages are supported).

Operating System Programming Language
Linux (32- and 64-bit) C
Java
FORTRAN
Mac OS X (32- and 64-bit) C
Java
MIPS C
STLinux (32-bit) C
Windows (32-bit) Delphi
Pure C
RealBasic
Windows (32- and 64-bit) ActiveX
Arx
C#
FORTRAN
Java
MinGW
Visual C++
Matlab
Python
LabView
FreeBSD (32- and 64-bit) C
Java

Is UniKey Windows 8 and 10 compatible?

Yes. For users who are working with previous versions of the UniKey SDK, please download the latest SDK from our SDK downloads page.

Does UniKey support SUSE 10?

Yes. Libraries and associated API samples are provided for using UniKey STD/PRO/Time with SUSE 10. When using UniKey with SUSE 10, ensure su permissions are used.

Does UniKey support C# .NET?

Yes. Please use the respective UniKey .NET DLLs. Samples are provided to illustrate use with UniKey APIs.

Does UniKey support .NET?

Yes. UniKey STD/PRO/Time has native .NET library support and supports .NET versions 2.0, 3.0, 3.5, 4.0, and 4.5. UniKey Drive also includes DLL libraries which can be used for integration with .NET applications. Please note UniKey Drive's libraries are built with C, whereas UniKey STD/PRO/Time's libraries are built with .NET.

Which of the 32- and 64-bit versions of the .NET libraries should be used?

When using UniKey STD/PRO/Time, only one version of the UniKey .NET library is needed for use with both 32- and 64-bit systems.

When using UniKey Drive, both versions of the DLL libraries are needed for their respective 32- and 64-bit systems.

Where in a .NET project should the .NET DLL libraries be imported into?

All necessary .NET DLL libraries should be imported into the working directory of the .NET project. Often, the DLL libraries can be imported into the same directory as the executable file(s).

Does UniKey support VB.NET?

Yes. Please use the UniKey .NET libraries. Samples are provided to illustrate how to use the UniKey APIs.

Are you able to provide the ARM-cross-compiled version of your library for EABI version 4?

Yes, we can provide cross-compilation for the UniKey Library. Please contact our support team at support@esecutech.com along with the cross compilation tool chain so that we may be able to provide you with the cross-compiled library.


Network

How many concurrent users can be connected to a UniKey device?

The maximum number of concurrent users connected to a UniKey device over the network is 64511 (that is, the total number of ports [65535] minus the first 1024 reserved ports).


Security

Can I change the password of my UniKey dongle?

Yes. Please use the UniKey Console Tool or the UniKey_Generate_New_Password API function for setting a new password for the UniKey dongle. Please note there is a limit for generating a new password on a UniKey device.

Is there a limit on how many times a new password can be generated on a UniKey device?

For security reasons, each UniKey device can only generate a new password twice. Afterwards, the password cannot be changed.

Can I set my UniKey devices with the same password?

Yes. If you wish to use the same password for all, or a set of UniKey devices, use the same seed value when generating the password for your UniKey device. Please note that UniKey STD/PRO/Time's password system is different from UniKey Drive, as UniKey Drive uses 8-digit long passwords.

Is there a limit to the number of login attempts?

There is no limit on the number of login attempts after a password is set on a UniKey device.

Can the UniKey device be duplicated?

No. The UniKey device cannot be duplicated.


UniKey Time

How can I use UniKey Time Features?

Please refer to the UniKey Real Time Clock Protection Solution

How many Time Modules does UniKey Time provide?

Each UniKey Time dongle has 16 time modules.

What is the purpose of the UniKey Time modules?

Each time module adds certain functionality. For example, the software expiry date can be set with a time module. A start time and an end time for Time Module No. 1, for example, can be set and then bound to your software.

Why does the UniKey Enveloper Tool not save time module settings?

Currently, the UniKey Enveloper Tool can only set time modules, but not read the time modules. Please note this, as even if you have saved an Enveloper Project, it will not be able to read back the time module you have set.

What is the difference between the three UniKey_Check_Time_Module methods?

UniKey_Check_Time_Module references a given time.

UniKey_Check_Time_Module_Now references the time from the inbuilt clock within the dongle.

UniKey_Check_Time_Module_Now_PC references the time from the host machine's system.

How long does UniKey Time's battery last for?

Below is some empirical data taken from twelve UniKey Time device measurements.

Case 1: The UniKey Time device is not inserted in a USB port

Group No. No. of Devices Current (uA)
1 1 0.32
2 1 0.34
3 1 0.32
4 3 0.94
5 6 1.99
Average current per device 0.32

Case 2: The UniKey Time device is inserted in a USB port

Group No. No. of Devices Current (uA)
1 1 0.31
2 1 0.34
3 1 0.32
4 3 0.94
5 6 1.83
Average current per device 0.32

Pre-conditions

  1. the full capacity of a battery is 40mAH, i.e. 40000uAH
  2. the average capacity a battery is 90%
  3. the standby release of the battery is 1% per month, i.e. 0.033% per day
  4. the standby current and working current is the same, i.e. 0.32 uA

Calculation

Let t be UniKey Time's battery life in days:
(t * 0.00033 * 40000) + (t * 0.32 * 24) = 40000 * 0.90
=> t = 1724.14

From the above real-world experiments observing twelve UniKey Time devices, it is calculated the battery life of UniKey Time is 1724 days or 4.7 years.

What happens when the battery within the UniKey Time device runs out?

During normal operation, the UniKey Time device draws power from the machine when in use, and uses its inbuilt battery when not plugged in. On battery alone, a typical UniKey device lasts for a minimum 3 years. When the battery within the device runs out, the dongle will revert back to a UniKey PRO dongle, so as to function as and encompass all of the features of a UniKey PRO device. This will allow the device to continue to protect your software, however the real-time clock feature will cease to function and the date and time reported by the device will be its factory default: depending on the time modules set, modules will expire as a result, requiring the end user to contact you to replace the device if necessary.


Troubleshooting

What steps should I take if my UniKey device isn't functioning or recognized?

See UniKey Hardware Troubleshooting and follow the UniKey Hardware Troubleshooting guide. If the problem cannot be resolved, please contact us.

I cannot set a new password on my UniKey device after surpassing the limit of two maximum password resets. What should I do?

Please contact SecuTech Technical Support with your affected UniKey device’s hardware ID (obtainable using the Assist Tool) at support@esecutech.com.

Why isn't UniKey Drive recognized under a Windows XP Non-Administrator User Account?

Please use administrator permissions to locate a UniKey Drive under a Windows XP non-administrator user account.

Why does the Linux sample produce unexpected results?

Using Linux, you must add the UniKey udev information for your Linux system. You can find information specific to your system type in the UniKey SDK in the directory UniKey SDK\Samples\Linux32.C\Sample\Readme

I received an "Error 117" error message when using the UniKey Network Feature. How do I solve this error?

Error 117 indicates that the UniKey Network Service has not started on the machine. Please install the UniKey Network Server Service before connecting to the server. The UniKey Network Server can be found in the UniKey SDK in the direcory UniKey SDK\Network\Server\Network.Server.ia32

I received an "Error 105" error message when using the UniKey Network Feature. How do I solve this error?

Error 105 indicates that UniKey client-side and server-side communication is blocked. This will occur when a firewall at either end is blocking communication. Turn off the firewall on both server and client sides while testing or otherwise open the respective ports, depending on configured parameters, on either end to allow communication between the server and client.

I have reason to believe I have found a bug or an abnormality in a SecuTech product. How can I get in touch to resolve this problem?

All technical faults or suggestions that improve our products are welcome and appreciated. Please contact us at either support@esecutech.com or https://esecutech.com/support with a description and/or methodology of the discovered malfunction or problem.


Sales

What is the free evaluation kit?

A free evaluation kit can be obtained by navigating to the link https://esecutech.com/evaluate and filling out the corresponding form. The evaluation kit contains a fully functional UniKey PRO dongle and a Protection Software Kit CD. The evaluation kit can be used indefinitely without any limitation in features. Please allow between 3 to 5 working days to receive your evaluation kit. Please note that the free evaluation kit is only available to North America and Europe. For other countries, please contact sales@esecutech.com.

Can I customize my UniKey?

Yes. OEM customizations such as laser engraving, sticker labels, customized hardware IDs, hardware colors, device naming, waterproof rubber cases (rubber case only available for UniKey STD and PRO) and others can be requested. Please note however that certain additional features are only available for minimum order number.

Where can I find information on UniKey product pricing?

Please contact us at sales@esecutech.com for pricing on UniKey products. Bulk purchases attract discounts and are discounted in various bulk amounts. Requested additional features such as laser engraving, sticker labels, customized hardware IDs, hardware colors, device naming and others vary in additional costs.

How long does it take to receive a purchase?

Times between a purchase and receiving the purchased goods depend on the quantity purchased.

  • Orders of less than 1000 units, typically take 2 working days.
  • Orders between 1000 and 5000 units, typically take 3 working days.
  • Orders greater than 5000 units, may take between 1 or 2 weeks.


Additional resources

Where can I find additional resources?

Additional resources, including the UniKey Manual and related documents, can be found within the UniKey SDK, which can be downloaded from Downloads. Please read the "ReadMe.txt" located in the root directory and within other folders of the SDK. Please contact support@esecutech.com for the SDK archive file password.

Where can I receive further assistance?

We, at SecuTech, are dedicated to providing high-quality technical support to our customers. If you have any questions, please feel free to contact us at support@esecutech.com or directly by opening a new ticket at https://esecutech.com/support.

This category currently contains no pages or media.