Advanced Key Data and Compatibility

Key Data is a 64-byte space in the Key that allows you to store data for any purposes such as configurations, username, password, etc. In basic operation, when issuing a License Key with encoded Key Data, the protected application simply replaces the new Key Data to the Key. In advanced operation, Key Data supports string addition that allows you to provide license upgrades through Key Data. Besides, the advanced Key Data is available in 2 modes: Data and Items.

Data Mode

With support for string addition, you can use Key Data to store custom licensing properties you may define such as upgradable values or credits for the protected application. In LicenseKey Manager and USB LicenseKey Manager / Key Properties / Advanced tab, the Add to existing Key Data option allows you to issue a License Key to add the new Key Data to the Key. In Data mode, the Key Data addition operates on a string of alphanumeric characters for each Key Data row that follows the rules specified below.

 

         New data replaces old data when the types are different, except new whitespace yields old data. For example,

Old Data

New Data

Result

1

A

A

A

1

1

<space>

A

A

<space>

1

1

A

<space>

A

1

<space>

1

 

         New alphabetic data replaces old alphabetic data. For example,

Old Data

New Data

Result

A

B

B

 

         New numeric data adds old numeric data. For example,

Old Data

New Data

Result

1

2

3

 

In addition, the numeric data and addition follows the rules specified below.

         Numeric data must not be over 16 digits (i.e. 16 bytes of a Key Data row).

         When more digits are needed, put 0s in front of the data. For instance, when 3 digits are needed, put 001.

         Use a space or alphabet to separate between two numeric data, e.g. 001 002m003n004.

         New and old numeric data must be aligned on the same byte positions. For example,

Old Data

New Data

Result

abc005xyz

<3space>007<3space>

abc012xyz

 

         The addition result cannot have more digits than the numeric data, or the maximum of 9999999999999999. Otherwise, it will be truncated. For example,

Old Data

New Data

Result

999

001

000

9999999999999999

0000000000000001

0000000000000000

Items Mode

The Items mode is an implementation under Key Data, which is specified with the square brackets [ and ] placed in the byte position 0 and 15, respectively, of a Key Data row, for example [abcdef01234567]. This gives a string of 14 hexadecimal characters in between that accordingly represent 56 binary digits for 56 Item IDs per row. So the whole Key Data provides up to 224 Item IDs. The Items mode allows you to easily enable/disable the Item IDs for item-based licensing for such as font types, images, languages, etc.

 

In LicenseKey Manager and USB LicenseKey Manager / Key Properties / Advanced tab, the Add to existing Key Data option allows you to issue a License Key to add the new Key Data to the Key. In Items mode, the Key Data addition operates on a string of hexadecimal characters for each Key Data row that follows the rules specified below.

 

         When new and old data are both in the Items mode, the addition is by OR bitwise operation. For example,

Old Data

New Data

Result

[AAAAAAAAAAAAAA]

[55555555555555]

[FFFFFFFFFFFFFF]

Compatibility

To use the advanced Key Data features including support for string addition and the Items mode, you must update and deploy ElecKey version 2.0.8.30 or higher to your system, including the protected application, KeyCheck API, LicenseGen SDK, and Activation Server. The table below lists the files that must be updated.

 

File

Version

Description

System Files:

Ekc3220.dll

2.0.8.30

System file for 32-bit Windows Applications

Ekc6420.dll

2.0.8.30

System file for 64-bit Windows Applications

Ekc1620.dll

2.0.8.30

System file for 16-bit Windows Applications

Ekc3220M.dll

2.0.8.30

System file for Windows Mobile Applications

Ekag20nt.exe

2.0.8.30

Local Key agent for Windows NT-based

Nkag20.exe

2.0.8.30

Network Key agent

Mkag20.exe

2.0.8.30

Mobile Key agent

Ekag20.exe

2.0.8.30

Local Key agent for legacy Windows

Activation Server and LicenseGen SDK:

Activation Manager

2.0.8.30

Activation Manager web application

LKGAsm2.dll

2.0.8.30

LKG .NET DLL

Lkgl3220.dll

2.0.8.30

LKG DLL for 32-bit Windows

Lkgl6420.dll

2.0.8.30

LKG DLL for 64-bit Windows

NetKey License Server:

NKLS40EK.exe

4.0.8.30

NetKey License Server

NetKey Manager .NET Component (To be recompiled with application):

Nrm.Comp.dll

2.0.8.30

NetKeyManager.NET Component

KeyCheck Class Library (To be recompiled with application):

All KeyCheck class library files

2.0.8.30

KeyCheck class library for any languages

KeyCheck .NET Component (To be recompiled with application):

Ekc.Comp.dll

2.0.8.30

KeyCheck .NET Component

Ekccf2_0.Comp.dll

2.0.8.30

KeyCheck .NET CF Component

Ekccf3_5.Comp.dll

2.0.8.30

KeyCheck .NET CF Component

KeyCheck ActiveX:

Ekas20.exe

2.0.8.30

Local Key ActiveX

Nkas20.exe

2.0.8.30

Network Key ActiveX

KeyCheck SDK for macOS (To be recompiled with application):

KeyCheck SDK for Mac

2.0.8.30

Keycheck SDK for macOS

Utilities (Generated by ElecKey system V 2.0.8.30 up):

UKMake20.exe

2.0.8.30

USB LicenseKey Maker

Ekupd20.exe

2.0.8.30

Automatic Software Updater

 

noteNOTE: The advanced Key Data features including support for string addition and the Items mode do not support DOS applications.