After the code compilation and producing the .bin file the developer needs to send the binary code to GrdUtil.exe for it to be processed and written into the dongle. The Loadable Code Settings dialog box serves this purpose.
This dialog box permits the:
Further, this dialog box provides additional services that simplify working with the loadable code.
Clicking the Import code from a .bin file button located in the top right corner of the Loadable code settings page launches a dialog box for selecting the .bin file from the required project.
Upon importing, GrdUtil.exe reads from the project_name.bmap file settings describing the dongle’s memory occupied by the loadable code. After importing, the following appears in the dialog box:
Status indicator | Purpose |
---|---|
RAM in use | Indicates the dongle’s RAM allocated for the loadable code, its start and end address |
Flash in use | Indicates the dongle’s Flash memory allocated for the loadable code, its start and end address as well as the number of the item storing the descriptor of the loadable code |
Free memory is indicated by a green color, whereas the allocated memory – with blue. Addresses are displayed in hexadecimal format.
Considering the confidentiality of the loadable code, it must not be transmitted “outside” in an open format.
Therefore, an effective routine for preparing code for writing into the dongle and the safe transfer of loadable code updates to end users was implemented in GrdUtil.exe.
GrdUtil.exe automatically converts the binary code into the .GCEXE file format containing:
Whereas the counterpart of the ECC keys pairs, used during the binary code conversion, is stored in the loadable code descriptor (prot. item):
This allows the dongle to successfully check, decrypt and execute loadable code upon addressing it.
Conversion of the code into GCEXE format is done with GrdUtil.exe utility automatically upon writing a mask into the dongle (or upon clicking the Export GCEXE button). This does not require any actions on the part of the developers for its execution, besides the setting of ECC160 key pair. |
Clicking the Loadable code encryption settings button launches a dialog box for working with key pairs.
The dialog box is designed for generating, importing and exporting ECC160 key pairs, which are used during the conversion of binary code into GCEXE format (see previous item).
The private and open ECC160 No.2 keys used for verifying the digital signature of encrypted code appear in the top of the dialog box (on the left and on the right, respectively).
ECC160 No.1 key pair for encrypting the binary code appears in the bottom of the dialog box (private key – to the left, public – to the right).
Additionally, the dialog box is provided with buttons that permit the generation of new key pairs, exporting them into external files for use in applications and importing key pair files from other projects.
The export of .GCEXE into an external file may be required in the event a developer needs to update the loadable code into the dongle at the end user’s location.
In this case a developer needs to follow the routine described below:
****
After adjusting the loadable code settings, you need to close the dialog box and execute the Dongle | Write into dongle command. This will generate and write the following into the dongle: