Контакты
Подписка
МЕНЮ
Контакты
Подписка

Архитектура USB-токенов: дискуссия открыта

Архитектура USB-токенов: дискуссия открыта

В рубрику "Защита информации" | К списку рубрик  |  К списку авторов  |  К списку публикаций

Архитектура USB-токенов: дискуссия открыта

Светлана Конявская, к.ф.н., ОКБ САПР

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

В номере журнала Cnews за июль 2006 года в статье Юрия Сергеева "USB-токен: правила выбора" (С. 38–41) читаем, в частности, следующее: "Отметим, что USB-ключи, не выполненные по архитектуре "смарт-карта + карт-ридер", например, ruToken, "Шипка", выполнены на серийном микроконтроллере и программно эмулируют функциональность смарт-карт. Это сильно снижает их безопасность. В частности, они используют внешний чип памяти со всеми вытекающими последствиями (у смарт-карточных токенов память находится внутри чипа смарт-карты, и атаковать ее очень сложно)" (С. 39).

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

1. Что значит "программно эмулируют функциональность смарт-карт"?

Собственно функциональность смарт-карте придает программное обеспечение для резидентного процессора. С одним ПО смарт-карта становится SIM-картой для телефона, в другим ПО – USB-токеном. Функционально одинаковое ПО создается либо для резидентного процессора смарткарты (кстати, серийной), либо для серийного микроконтроллера. Думается, что применение термина "программная эмуляция" для описания отличий реализации устройств на базе микроконтроллера или чипа смарт-карты – по крайней мере неудачно.

2. Утверждение о том, что безопасность USB-токенов на базе микроконтроллеров ниже, поскольку "они используют внешний чип памяти со всеми вытекающими последствиями (у смарт-карточных токенов память находится внутри чипа смарт-карты, и атаковать ее очень сложно)", необходимо анализировать по частям.

А) Предложенная формулировка не совсем верна, так как различие в действительности состоит не в том, что у USB-токенов на базе микроконтроллера память снаружи, а у чипа смарт-карты внутри, а в том, что у чипа смарт-карты внутри находится вся память устройства, а у микроконтроллера – не вся, а может быть еще и "внешняя". Память микроконтроллера может расширяться за счет добавления "внешней" памяти. Архитектура же на базе чипа смарт-карты возможности расширения объема памяти не предполагает, что вряд ли может трактоваться как преимущество.

Б) Даже в том случае, если используется внешняя память, тезис о том, что это имеет "все вытекающие последствия" кажется несколько необоснованным, поскольку трафик обмена информацией между микроконтроллером и чипом внешней памяти обычно защищается стойким алгоритмом шифрования. Атаковать память действительно не сложно, сложно расшифровать правильно зашифрованные данные.

Так какая же архитектура перспективней – на базе смарт-карты или микроконтроллера? Иными словами, более дешевая или более гибкая и адаптивная? Что лучше (для потребителя, а не для производителя) при возникновении новых потребностей – платить за новый ключ на базе смарт-карты или просто перепрограммировать ключ на базе микроконтроллера?

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

Статьи про теме