Интерфейс защиты
Если в контейнере с размещённым интерпретатором присутствует файл имя_библиотеки_интерпретатора.dat (далее файл с секретными данными), то при инициализации такому интерпретатору дополнительно передаётся интерфейс INCT_Connect.
INCT_Connect - интерфейс, который обеспечивает доступ интерпретатора к данным из файла с секретными данными. При этом файл с данными не извлекается из контейнера и поэтому доступен для чтения только через переданный интерпретатору интерфейс.
Интерпретатор нужно разрабатывать таким образом, чтобы его работа была обеспечена только после прохождения проверки данных, полученных через интерфейс INCT_Connect. Места проверок, их количество и алгоритм определяются разработчиком самостоятельно.
Описание методов интерфейса:
Метод |
Описание метода |
Описание использования |
Get_Count |
Функция возвращает количество байт, содержащихся в файле с секретными данными (целое число). |
Пользуясь предложенными методами необходимо выполнить проверку данных, размещённых разработчиком интерпретатора в контейнере, с данными, передаваемыми SprutCAM интерпретатору (должны совпадать). Если разработчик разместил в контейнере файл sample.dat (библиотека интерпретатора называется sample.dll), размером 5 байт и следующими данными: 12345 Функция Get_Count вернёт значение 5. Функция Get_Data(0) вернёт значение 1, Get_Data(2) вернёт значение 3, Get_Data(4) вернёт значение 5. Функция Get_SCData вернёт указатель на память с размещёнными данными 12345. |
Get_Data |
Функция возвращает байт из файла с секретными данными, с номером, заданным во входном параметре. Входные параметры: Index (целое число) - номер возвращаемого байта. Нумерация байт от 0. Выходные параметры: Байт из файла с секретными данными, с номером, заданным в параметре Index. |
|
Get_SCData |
Функция возвращает указатель на секретные данные из файла (указатель). |