2.5 Защищенный обмен
При вводе в настроечную базу данных тепловычислителя ненулевого значения параметра PW ("пароль"), обмен с ним становится возможным только в защищенном режиме.
В основе процедур защиты информации лежит алгоритм криптографического кодирования RC5 RSA Security INC со следующими параметрами:
- Длина слова - 16 бит;
- Длина кодированного блока - 32 бита;
- Количество проходов (циклов) RC5 при кодировании / декодировании - 8;
- Длина ключа - 64 бита.
В качестве ключа шифрования для алгоритма RC5 выступает значение параметра PW.
2.5.1 Авторизация
Перед началом обмена с защищенным прибором должна быть выполнена процедура авторизации.
При этом обмен начинается со стандартной процедуры установления связи: подачи последовательности 0xFF и запроса сеанса связи. Запрос может быть передан прибору как в базовом, так и в расширенном формате с ATR=0.
Запрос сеанса (далее для наглядности приводятся только блоки данных запросов):
Если прибор находится в защищенном режиме, то на запрос сеанса связи будет сформирован ответ с кодом ошибки 0х04 — "Возможен только защищенный обмен".
Ответ:
В этом случае прибору должен быть повторно передан запрос сеанса связи в зашифрованном виде, только в расширенном формате, на который прибор формирует ответ (также в зашифрованном виде). С этого момента внешнее устройство считается авторизованным. Прибор открывается для дальнейшего защищенного обмена.
Если прибору не удается адекватно расшифровать и интерпретировать полученный запрос сеанса, он прекращает реагировать на дальнейшие запросы вплоть до получения стартовый последовательности 0xFF, после которой процедура авторизации может быть повторена.
При получении от авторизованного внешнего устройства запроса в базовом формате или нешифрованного запроса (ATR=0), прибор отвечает сообщением с кодом ошибки 0х05 - "Недопустимый формат запроса"
2.5.2 Обмен шифрованными данными
После авторизации возможен обмен шифрованными данными с тепловычислителем. Обмен может осуществляться только в расширенном формате.
Шифрованию подвергаются только блоки данных, содержащиеся в запросах внешнего устройства и ответах тепловычислителя, а также, два байта контрольной суммы, завершающие информационный кадр. Преамбулы кадров не шифруются
Количество шифруемых байтов округляется до величины, кратной одному кодовому блоку алгоритма RC5 (4 байта). Для этого к концу блока данных дописывается необходимое количество байтов с произвольным значением.
Например, шифрованный запрос сеанса связи примет вид:
2.5.3 Завершение сеанса
Для завершения сеанса шифрованного обмена с тепловычислителем ему должен быть передан запрос:
Ответ:
После обработки запроса тепловычислитель переходит в режим ожидания авторизации. Автоматическое завершение сеанса выполняется тепловычислителем также при отсутствии входящих запросов внешнего устройства в течение трех минут.
|