Метод GrdProtect позволяет установить аппаратные запреты на чтение/запись заданной области памяти ключа, а также назначить в ключе количество аппаратных алгоритмов и защищенных ячеек (Protected Item). Для сетевых ключей Guardant Net, в случаях когда используется система управления лицензиями, метод также задает адрес (для Net II) или номер защищенной ячейки (для Sign Net / Time Net), где хранится таблица лицензий LMS. Аппаратные запреты можно устанавливать на непрерывную область памяти ключа, начиная с адреса 44 SAM. Параметр writeProt задает адрес первого байта, не защищенного от записи. Если значение параметра равно 0, это означает отсутствие запретов на запись. Параметр readProt задает адрес первого байта, не защищенного от чтения. Если значение параметра равно 0, это означает отсутствие запретов на чтение. Параметр numFunc задает количество аппаратных алгоритмов в ключе, а также (для Sign / Time) защищенных ячеек, включая таблицу лицензий LMS. Все эти алгоритмы и защищенные ячейки должны быть предварительно созданы, т.е. в память ключа должны быть записаны их дескрипторы. Параметр tableLMS задает SAM-адрес первого байта таблицы лицензий LMS (для Guardant Net I/II) или номер защищенной ячейки, в которой хранится таблица лицензий LMS (для Sign Net / Time Net). Метод GrdProtect используется на завершающем этапе реорганизации памяти сетевого ключа «вручную» (без помощи программы GRDUTIL). Сначала методом GrdInit память ключа инициализируется, затем в нее заносится таблица размещения алгоритмов, дескрипторы алгоритмов и защищенных ячеек. И, наконец, методом GrdProtect устанавливаются запреты на память, занятую дескрипторами, и назначается количество созданных в ключе алгоритмов и защищенных ячеек. Программа GRDUTIL позволяет проделать ту же работу быстрее и проще, поэтому не рекомендуется пользоваться методами GrdInit и GrdProtect без особой необходимости. |