Loadable code, unlike data items and hardware algorithm descriptors, is stored in another dongle memory area, for which other principles of addressing are used. Therefore special Guardant API functions exist for loading the code into dongle memory, its execution and other operations.
In order to be loaded into the dongle the loadable code is converted into a file of special format (GCEXE – Guardant Code Executable) providing protection against forgery, replacement and analysis. This protection is provided by encrypting with tamperproof algorithms and EDS. Such protection makes the loadable code safe update in the dongle possible, including the transfer of files via public channels or through public networks.
GCEXE format file is generated based on the loadable code descriptor’s data, compiled code and mapfile by GrdUtil.exe dongle programming utility.
Once generated the file can be used for writing into the dongle by the same utility. If presale programming is done using proprietary tools, the file with loadable code can be written into the dongle using GrdCodeLoad() function.
Function | Access code | Purpose |
---|---|---|
GrdCodeGetInfo | Private Read | Request the information from the loadable code descriptor |
GrdCodeLoad | Private Read | Loading GCEXE-file into Flash dongle memory |
GrdCodeRun | Private Read | Executing the loadable code |
GrdSetDriverMode | Private Read | Switching USB mode of a dongle |
See details in GrdAPI.chm.