Ds1963s – Инструкция по эксплуатации Rainbow Electronics DS1963S
Страница 21
DS1963S
21 из 40
Рис. 8. ФУНКЦИИ ВЫЧИСЛЕНИЯ SHA (продолжение)
Y
Y
Y
N
N
N
N
N
N
N
Y
Y
Y
Y
С предыдущей
страницы
Вычисле-
ния успешны
Вычисле-
ния успешны
Вычисле-
ния успешны
C3h
подпись страни-
цы данных?
CCh
вычисление
запроса?
AAh
авторизация
хоста?
На рис. 7 (Команда вычисления SHA)
SEC# = TA1[7:5]
CHLG = 1?
Ошибка
Ошибка
Страница =
0 или 8?
Страница =
0 или 8?
Страница =
0 или 8?
M = 0; X = 1
HIDE = 1; MATCH = 0
T4:T0 = 00000b
M = 0; X = 1; CHLG = 1
AUTH = 0; MATCH = 0
T4:T0 = 00000b
X = 0; CHLG = 0
AUTH = 0
T4:T0 = 00000b
Блок
вычислят код
аутентификации сообщения на
основе секретного кода выбран-
ной страницы, данных выбран-
ной страницы и 15 байт
данных блокнота
SHA
Блок
вычислят код
аутентификации сообщения на
основе секретного кода выбран-
ной страницы, данных выбран-
ной страницы,
счетчика,
серийного номера устройства
и 3 байт данных блокнота
SHA
PRNG-
Блок
вычислят код
аутентификации сообщения на
основе секретного кода выбран-
ной страницы, данных выбран-
ной страницы и 15 байт
данных блокнота
SHA
M = MATCH
∧
≡
(TA1[7:6]
SEC#[2:1])
AUTH = (TA1[7:5] SEC#)
CHLG = 0
≡
Функция вычисления запроса сохраняет 3 старших бита TA1 в регистре SEC#, который затем
используется функцией авторизации хоста. Флаг AUTH будет установлен только в том случае,
когда авторизация хоста и вычисление запроса вызываются для одной и той же страницы памяти
(одного и того же секретного кода). Это предохраняет флаг AUTH от установки с секретным
кодом другой страницы, которая может принадлежать другому приложению или провайдеру
услуг.
Два старших бита регистра SEC# также используются при проверке страницы данных, подписи
страницы данных и чтении аутентифицированной страницы, когда требуется определить бит
управления M. Это имеет значение только для тех приложений, которые используют авторизацию
хоста/пользователя. Бит управления M устанавливается только в том случае, если установлен флаг
MATCH, а страница памяти назначения является смежной с той, которая была использована для
авторизации. Это назначает одну пару секретных кодов (0 и 1, 2 и 3, 4 и 5, 6 и 7) и страниц,
соответствующих этим кодам, одному провайдеру услуг.