Мастер лицензирования и автоматической защиты Guardant.

Добрый день.

SDK 6.31

Задача: "авто" защитить приложение, используя "" алгоритм AES128 и ECC160.

Имеем запрограммированный ключ Guardant Sign со следующими защищенными ячейками (алгоритмами):
Числовое имя - описание
0..9 - алгоритмы AES128
10..19 - алгоритмы ECC160
137 - AES128
241 - ECC160
191 - AES128
173 - ECC160

То есть, всего 24 защищенных ячейки  (Для сетевых ключей также добавляется LMS в ячейке с числовым именем 101)

Для автозащиты планируется использовать алгоритмы с числовыми именами 137 (AES128) и 241 (ECC160).

Однако, утилита "Мастер лицензирования и автоматической защиты Guardant" не показывает все алгоритмы AES128 (видны только первые десять, с номерами от 0 до 9):
http://ib2.keep4u.ru/b/2014/05/07/1d/1d56fac879d8b903537fdb3c49d31343.png

Для ECC160, попытка указать номер алгоритма, равный 241, вызывает отображение хинта "не находится в диапазоне от 0 до 24", при этом дизэйблится кнопка "Продолжить":

http://ib2.keep4u.ru/b/2014/05/07/09/09265fdf7843a2b42f027b5bea6b6941.png

Возможно, здесь вместо числовых имен алгоритмов, по ошибке используется их индекс.

То есть, использовать утилиту "Мастер лицензирования и автоматической защиты Guardant" невозможно.

~~~~~~~~~~~~~~~~~~~~~

В то же время, утилита командной строки nwkey32.exe отлично работает как раз именно с числовыми именами: опция /GS3S=137:16:Id_ключа:241:Имя_Файла обрабатывается без проблем и защита строится так, как и должна.

~~~~~~~~~~~~~~~~~~~~~

Посмотрите, пожалуйста.

Спасибо.

Re: Мастер лицензирования и автоматической защиты Guardant.

Здравствуйте, vlad-mal.

Пришлите, пожалуйста, нам на e-mail техподдержки *.nsd-файл той маски, которая тут применяется.

Re: Мастер лицензирования и автоматической защиты Guardant.

Антон Тихиенко пишет:

Здравствуйте, vlad-mal.

Пришлите, пожалуйста, нам на e-mail техподдержки *.nsd-файл той маски, которая тут применяется.

Хорошо.

Подскажите, пожалуйста, где можно прочитать о формате *.nsd-файла для Guardant Sign/Guardant Sign Net, чтобы я смог правильно его сформировать?

PS: Данная маска сформирована с помощью Вашей библиотеки writemask, с использованием класса CWritemask (C++), так как Ваша утилита редактирования памяти ключа не позволяет задать или изменить числовой номер защищенной ячейки / алгоритма.

Re: Мастер лицензирования и автоматической защиты Guardant.

vlad-mal пишет:

Хорошо.
Подскажите, пожалуйста, где можно прочитать о формате *.nsd-файла для Guardant Sign/Guardant Sign Net, чтобы я смог правильно его сформировать?

Описания формата такого файла нет, это xml-файл формируемый утилитой программирования электронных ключей (GrdUtil), содержимое такого файла можно просмотреть стандартным Windows-блокнотом.

Что же касается наших утилит, то, по понятным причинам, работать с такими числовыми именами как "137", "241" и т.п., они не будут. К примеру, объем EEPROM-памяти электронного ключа Guardant Sign составляет 4Кб, а для размещения одного аппаратного алгоритма типа AES128 требует выделить 92 байта из памяти ключа, для ECC160 96 байт. По самым грубым подсчетам в памяти такого ключа не поместится более 50 аппаратных алгоритмов, и такие события обрабатываются нашими GUI-утилитами.

Для консольных утилит такая, нейтральная, реакция на числовые имена аппаратных алгоритмов, записанных при помощи Guardant API, скорее "фитча", нежели "баг". Однако мы проверим описанное поведение консольных утилит.

Спасибо за информацию.

(2014-05-08 13:44:36 отредактировано vlad-mal)

Re: Мастер лицензирования и автоматической защиты Guardant.

Антон Тихиенко пишет:

Для консольных утилит такая, нейтральная, реакция на числовые имена аппаратных алгоритмов, записанных при помощи Guardant API, скорее "фитча", нежели "баг". Однако мы проверим описанное поведение консольных утилит.

Наоборот, именно к консольным утилитам как раз никаких замечаний по работе нет   (кроме: https://forum.guardant.ru/post/2035/#p2035 ): с числовыми именами ячеек они работают отлично.

Речь об утилитах с графическим интерфейсом.

Антон Тихиенко пишет:

По самым грубым подсчетам в памяти такого ключа не поместится более 50 аппаратных алгоритмов, и такие события обрабатываются нашими GUI-утилитами.

Дело вовсе не в количестве.
У Вас в документации расписано преимущество использование числовых имен по сравнению с использованием физических адресом или индексов ячеек: например, в процессе формирования маски ключа в разных условиях удаление или добавление отдельных защищенных ячеек не меняет числовые имена остальных ячеек. Что очень удобно в некоторых случаях.

Ну, ладно: "консольные" утилиты работают правильно, лично мне этого достаточно.

Я всего лишь отчитался об обнаруженных ошибках ("ошибках" с моей точки зрения, конечно).

Спасибо.

Re: Мастер лицензирования и автоматической защиты Guardant.

vlad-mal пишет:

Я всего лишь отчитался об обнаруженных ошибках ("ошибках" с моей точки зрения, конечно).
Спасибо.

И Вам спасибо за проявленное внимание.

Re: Мастер лицензирования и автоматической защиты Guardant.

vlad-mal пишет:

Возможно, здесь вместо числовых имен алгоритмов, по ошибке используется их индекс.

Почему же "по ошибке", если напротив каждого, обведеного красным, поля, слева явно написано "номер алгоритма", а не его имя.

Re: Мастер лицензирования и автоматической защиты Guardant.

romik пишет:
vlad-mal пишет:

Возможно, здесь вместо числовых имен алгоритмов, по ошибке используется их индекс.

Почему же "по ошибке", если напротив каждого, обведеного красным, поля, слева явно написано "номер алгоритма", а не его имя.

Это не имеет отношения к реальности, ибо значения тупо транслируются в опции командной строки утилиты nwkey32.exe, в которой как раз используются именно числовые имена, а не индексы в таблице алгоритмов.

Re: Мастер лицензирования и автоматической защиты Guardant.

Провел несколько экспериментов и пришел к выводу, что в выбора номера алгоритма GSII64 или AES отображаются именно числовые имена ячеек. Но отображаются только те, значения которых находится в диапазоне от 0 до 19, остальные игнорируются.

А в поле "Номер алгоритма ECC160" наложено условие валидации "От нуля до числа защищенных ячеек".

Например, заливаем в ключ 10 алгоритмов AES128 с числовыми именами от 15 до 24 (включительно)  и 10 алгоритмов ECC160 с числовыми именами от 25 до 34.

Вот что видим:

http://imglink.ru/pictures/08-05-14/1a58303ad55a959149a7ff6d5f982827.jpg

---------------------------
Ввожу "разрешенное" значение для номера ECC == 19, получаю командную строку с опцией:

/GS3S=15:16:Id_Ключа:19:Имя_Файла


ЧТД.

Re: Мастер лицензирования и автоматической защиты Guardant.

Таким образом, запросы разработчикам утилит:

1. Утилита "Мастер лицензирования и автоматической защиты Guardant".

а) Не отображает в списке доступных алгоритмы шифрования AES128 с номерами, большими чем 19. Должно быть ограничение 255.
б) Не позволяет ввести номер алгоритма ECC160 больший, чем общее количество защищенных ячеек. Должно быть либо от 0 до 255, либо (в идеале) должен быть комбо со списком числовых имен защищенных ячеек.

2. Утилита "Редактор памяти ключей Guardant".

а) Не позволяет задать/изменить числовое имя защищенной ячейки. Нужно сделать. :)
     Желательно, с валидацией значения в рамках от 0 до 255 и запретом ввода дубликатов.

~~~~~
Спасибо.

Всех - с Днем Победы!

Re: Мастер лицензирования и автоматической защиты Guardant.

vlad-mal пишет:

1. Утилита "Мастер лицензирования и автоматической защиты Guardant".

а) Не отображает в списке доступных алгоритмы шифрования AES128 с номерами, большими чем 19. Должно быть ограничение 255.
б) Не позволяет ввести номер алгоритма ECC160 больший, чем общее количество защищенных ячеек. Должно быть либо от 0 до 255, либо (в идеале) должен быть комбо со списком числовых имен защищенных ячеек.

У нас не воспроизводится:

http://screenshot.ru/upload/images/2014/05/12/AES128_10eb250.jpg

http://screenshot.ru/upload/images/2014/05/12/ECC160_1038db3.jpg

SDK 6.31

vlad-mal пишет:

2. Утилита "Редактор памяти ключей Guardant".

а) Не позволяет задать/изменить числовое имя защищенной ячейки. Нужно сделать. :)
     Желательно, с валидацией значения в рамках от 0 до 255 и запретом ввода дубликатов.

Рассмотрим Ваше предложение)

Re: Мастер лицензирования и автоматической защиты Guardant.

Антон Тихиенко пишет:

...
У нас не воспроизводится:
...


Я начинаю терять веру в человечество.