This memory area can be used for storing any data required for application protection, including: hardware algorithm descriptors, license tables, key words, data sets, constants, code blocks, etc.

You can create fields of various types, edit their contents and delete them.

Important information

All models of available modern Guardant dongles contain several default hardware algo-rithm descriptors and protected items.

From within an application data stored in the area of free purpose fields is accessed using the Guardant API functions.

Types and main properties of free purpose fields:

Field typeSize, bytesContentsHardware locksWorking with field from within the application (Guardant API)
AlgorithmField size is defined by the size of algorithm descriptorHardware algorithm descriptorMandatory read/write locks
  1. GrdTransform, GrdCrypt, GrdHash, GrdCodeInit
  2. GrdPI_Activate, GrdPI_Deactivate, GrdPI_Read, GrdPI_Update
  3. GrdTRU_DecryptQuestion, GrdTRU_EncryptAnswer, GrdTRU_ApplyAnswer
Protected itemArbitrary size into the modern dongles; 1 – 255 + service fields into the old modelsProtected item descriptorMandatory read/write locksGrdPI_Activate, GrdPI_Deactivate, GrdPI_Read, GrdPI_Update
License tableGuardant Sign Net/ Time Net/ Net III1 or 2 per ele-ment+ service fields (not more than 254 bytes)
  1. Actual license resource
  2. Information on the software modules number and license limit of each module
Mandatory read/write locksGrdPI_Activate, GrdPI_Deactivate, GrdPI_Read, GrdPI_Update
Guardant Net II / Net1 or 2 per element 127 modules maximumInformation on the software modules number and license limit of each moduleMandatory write locksGrdRead
Integer1, 2, 4, 8Integer or unsigned integerWrite locks (when necessary)GrdRead, GrdWrite
StringRandom sizeCharacter sequence in ANSI or Unicode encodingWrite locks (when necessary)GrdRead, GrdWrite
Counter1, 2, 4, 8Unsigned integer. Increments automatically on each operation of writing a mask into the dongle memoryWrite locks (when necessary)GrdRead, GrdWrite
DumpRandom sizeBinary dumpWrite locks (when necessary)GrdRead, GrdWrite

 

 

There is a certain order of free purpose fields. This is because there are fields which require mandatory protection by hardware restrictions. Moreover, a special thing about hardware restrictions is that they can only be placed in the beginning of the free purpose fields area (starting with 14UAM address) and form a continuous block.

Thus,

  • The fields protected by hardware algorithms with default read and write locks are grouped in the beginning of free purpose fields’ area: hardware algorithms, protected items and license table of Net III format (Fields of two last types can be created only in Guardant Stealth III / Net III dongles). Whereas GrdUtil.exe does not allow for inserting fields of different type between them.
  • The fields protected by write locks are allocated after fields protected by read and write locks. For example, license table of Guardant Net II/ Net format.
  • Further, fields of other types can be placed in random order: integer, string, dump, and counter. Whereas GrdUtil.exe does not allow for inserting fields between them, which must be protected by hardware restrictions by default.

New field is added into mask before the field selected from the list.

To create a new field select a Free memory field from the list (or any other created field from the area of free purpose ones) and select Edit | Add new field.

Add new field dialog box will appear. Select a field type and specify its name and size.

Properties dialog box control elements for each type of fields:

Field typeInterface elementDescription of purpose
Dump


Hexadecimal editor windowEnter the dump contents
OEM flagSelect Windows/DOS encoding. Windows (ANSI) encoding is used by default – OEM option is off
[Load] buttonLoad dump from *.dmp file
[Save] buttonSave dump into *.dmp file
StringEntry windowEnter the string value
ANSI/Unicode switchSelect ANSI/Unicode encoding. ANSI encoding is used by default
Integer

Unsigned integer flagSelect field subtype: integer/unsigned integer
Number representation listSelect numerical system
Value fieldEnter the value
CounterNumber representation listSelect numerical system
Value fieldEnter the value

Sizes of fields of various types:

Field typePossible field size, bytes
DumpArbitrary size
String
Integer1, 2, 4, 8
Counter


Add new field dialog box:

  

  

 

 

Add new field dialog box control elements:

Interface elementDescription of purpose
NameSpecifies any valid name for the field being created
Size in bytesSelects possible / sets arbitrary field size. Size depends on the selected field type.
Field typeSelects field type out of list of possible types

The dialog box interface may slightly differ depending on the mask type and field being created.

After filling in the current dialog box you need to click [Next] to move the field properties dialog box.

More detailed information on creating and working with fields of various types is given in respective chapters. 

To change field contents or to edit its properties, select a field of the current mask and execute command Edit | Field properties.

Make the required changes in the Field properties dialog box that will appear.

More detailed information on editing fields of various types is given in respective chapters. 

To delete a field and its contents, select a field from the mask and execute command Edit | Delete field. A dialog box will appear to confirm the deletion:

  

Important information

Any changes in the mask – creation, deletion or editing of field contents – will be written to the dongle memory only after executing command Dongle | Write into the Dongle.

In order to view and edit a field’s dump and also to save it as a file, choose the required field in a mask, pull up the context menu by right-mouse clicking it and select Show full field dump item:

 

  • No labels