поиск по сайту
Аппаратные СЗИ: защищенная многоуровневая система обновления

Матвей Муха

Аппаратные СЗИ: защищенная многоуровневая система обновления

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

Одной из главных особенностей ПСКЗИ Шипка является возможность обновлять внутреннее программное обеспечение устройства непосредственно пользователем. Это означает, что:

• функциональность устройства может быть изменена под те или иные требования, что делает интеграцию устройства в различные системы более удобной;

• набор реализованных в устройстве алгоритмов может включать в себя те алгоритмы, которые предпочтительнее для тех или иных задач и не содержать никаких других, а может предоставлять пользователю возможность выбора, если это предусмотрено политикой безопасности;

• дополнительные функции, реализованные во внутреннем ПО ПСКЗИ Шипка, если они появились позже, чем устройство было приобретено, могут быть получены пользователем в виде обновления – это существенно продлевает срок эффективной службы устройства и делает его применение более экономичным, чем использование более дешевых средств, не предполагающих возможность обновления и расширения возможностей.

Механизм обновления внутреннего программного обеспечения построен таким образом, что:

• Только производитель устройства может выпускать обновления программного обеспечения.

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

Для достижения вышеназванных условий процедура обновления программного обеспечения происходит следующим образом:

• При выпуске устройства ему присваивается уникальный серийный номер, а также записывается уникальный криптографический ключ, значение которого зависит от серийного номера устройства и единого для всех ПСКЗИ Шипка мастер-ключа. Эти значения хранятся в устройстве и не могут быть изменены.

• При выпуске обновления, внутреннее программное обеспечение зашифровывается на ключе, хранящемся в ПСКЗИ Шипка для которого оно предназначено.

• При обновлении ПО, зашифрованное обновление передается в ПСКЗИ Шипка, где расшифровывается и записывается на место старого ПО.

В приведенной схеме при каждом обновлении ПО производителю для каждого устройства необходимо создавать свой файл обновления. С увеличением количества выпущенных устройств на производителя ложится все большая нагрузка. Кроме того, у потребителей устройств нет должного контроля над выпуском обновлений встроенного программного обеспечения. Для устранения данных недостатков вводится новая двухуровневая схема обновления программного обеспечения. Производитель делегирует часть полномочий по обновлению программного обеспечения конечным потребителям устройств. Модифицированная схема выглядит следующим образом:

• Компания, приобретая несколько ПСКЗИ Шипка, приобретает также специальное устройство, служащее для обновления внутреннего программного обеспечения ПСКЗИ Шипка, Шипку-Д.

• Производитель генерирует специальные файлы с внутренним программным обеспечением конечных ПСКЗИ Шипка, предназначенные для хранения на устройстве Шипка-Д. Каждый такой файл может быть записан только в Шипку-Д для которой он предназначен.

• Производитель генерирует лицензии на обновление встроенного программного обеспечения ПСКЗИ Шипка, с использованием Шипка-Д. В лицензию включено:

    - Серийные номера ПСКЗИ Шипка, которые можно обновлять при помощи лицензии

    - Серийный номер Шипки-Д, для которой предназначена лицензия

    - Версия внутреннего программного обеспечения, для которого предназначена лицензия

    - Имя компании, для которой выписывается лицензия

    - Криптографические значения, делающие невозможным подделку лицензии

• Пользователь устройств записывает полученные от производителя файлы в Шипку-Д.

• Пользователь создает прошивку для конечного ПСКЗИ Шипка. В Шипку-Д передается лицензия и указывается серийный номер ПСКЗИ Шипка, для которой необходимо сгенерировать обновление внутреннего программного обеспечения. Если лицензия предназначена для используемой Шипки-Д, серийный номер ПСКЗИ Шипка, для которой создается обновление содержится в лицензии и версия внутреннего ПО в лицензии совпадает с версией внутреннего ПО в файле, записанном в Шипку-Д, устройство генерирует файл обновления программного обеспечения для конечного ПСКЗИ Шипка.

• Внутреннее ПО конечной ПСКЗИ Шипка обновляется при помощи полученного файла обновления.

Реализованная схема дает возможность компаниям покупателям устройств получить больший контроль над обновление внутреннего программного обеспечения устройств и освободить компанию-производителя устройств от необходимости выпускать различающиеся файлы обновления для каждого выпущенного устройства. При этом процесс обновления является безопасным за счет использования криптографических методов.


ФорумФорум
Форум ОКБ САПР
Вопросы специалистовВопросы специалистов
Вопросы, которые нам присылают, и наши ответы на них