Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Защищенные ячейки хранятся в нижних адресах пользовательской памяти EEPROM и нумеруются, начиная с нулевой.
Числовые имена ячеек хранятся в Таблице числовых имен защищенных ячеек (Protected Item Root Table, PIRT). На каждый элемент таблицы отводится по 2 байта. Числовые имена ячеек не должны совпадать. Числовые имена от 0xFF00 и выше зарезервированы, их использование крайне не рекомендуется.
Адреса памяти EEPROM, по которым располагаются дескрипторы защищенных ячеек, записаны в таблице размещения защищенных ячеек (Protected Item Allocation Table, PIAT). Каждому 16-битовому элементу этой таблицы соответствует защищенная ячейка с соответствующим номером.
На область памяти, занятую дескрипторами, обычно устанавливаются аппаратные запреты на чтение и запись, что препятствует изучению, повторению или модификации защищенных ячеек.
Таблица размещения имеет следующий формат:

Anchor
_Toc326167548
_Toc326167548
Algorithm System Table (AST) – системная таблица описания алгоритмов и ячеек

Адрес*Адрес относительно начала таблицы AMT

Размер,байт

Допустимые Значения

Описание

Данные ниже защищены от чтения/записи, если kmAlgoNum!=0 (в памяти ключа присутствует хотя бы одна защищенная ячейка), вне зависимости от установки аппаратных запретов

 

 

 

Protected Item Main Table (PIMT) – Таблица описания таблиц

 

 

 

0

1

0

Признак формата современных ключей

1

1

0 или 1

Код формата таблиц и дескрипторов:
0 – все как в Stealth III
1 – формат Guardant Sign/Time/Code. Все описанное ниже относится к этому этот формату

2

2

0-макс.

SAM-адрес первого байта после ВСЕХ алгоритмов и защищенных ячеек. Обязательно для заполнения

4

2

Обязательнов пределах AST

SAM-адрес первого байта таблицы PIAT

6

10

 

Зарезервировано

Данные ниже можно прочитать с помощью GrdRead вне зависимости от установки запретов. Запись запрещена

 

 

 

16

2

Обязательнов пределах AST

SAM-адрес первого байтатаблицы PIRT

Protected Item Root Table (PIRT) – таблица числовых имен ячеек и алгоритмов

 

 

 

18

2

0 - 0xFF00, остальныеимена зарезервированы

Числовое имя первого по счету алгоритма/ячейки (N=0)

18+2

2

0 - 0xFF00, остальныеимена зарезервированы

Числовое имя ячейки номер N=1

18+(N)*2

2

0 - 0xFF00, остальныеимена зарезервированы

Числовое имя ячейки с номером N

Данные ниже нельзя прочитать с помощью GrdRead, если установлены запреты.Запись запрещена

 

 

 

Protected Item Allocation Table (PIAT) – таблица числовых имен ячеек/алгоритмов

 

 

 

18+kmAlgoNum*2

2

0 - макс. адрес SAM

SAM-адрес первого дескриптора (N=0)

18+kmAlgoNum*2+2

2

0 - макс. адрес SAM

SAM-адрес второго дескриптора (N=1)

18+kmAlgoNum*2+N*2

2

0 - макс. адрес SAM

SAM-адрес N-го дескриптора

И т. д.

 

 

 

18+kmAlgoNum*4

8

 

Зарезервировано.
Адрес определяется исходя из количества защищенных ячеек kmAlgoNum, с учетом того, что на символьное имя и адрес ячейки отводится по 2 байта (суммарно – 4 байта)

...