Популярные и перспективные стандарты и протоколы беспроводных сенсорных сетей
Вопросы безопасности BLE
BLE предлагает несколько сервисов безопасности для защиты данных, передаваемых между парой соединенных устройств. Большинство из поддерживаемых сервисов могут быть описаны в терминах двух режимов: LE Security Mode 1 и LE Security Mode 2. Эти режимы обеспечивают сервисы безопасности на канальном уровне и уровне ATT соответственно [17].
Канальный уровень BLE поддерживает шифрование и аутентификацию на основе алгоритма Cipher Block Chaining-Message Authentication Code (CCM) и блочного шифра AES-128. При использовании шифрования и аутентификации в соединении, к полезной нагрузке (PDU) добавляется 4-байтное сообщение проверки целостности - Message Integrity Check (MIC), после чего поля PDU и MIC шифруются.
Также возможна передача аутентификационных данных поверх нешифрованного соединения канального уровня. В данном случае, на уровне ATT к полезной нагрузке добавляется 12-байтная сигнатура. Сигнатура вычисляется путем использования алгоритма AES-128 как блочного шифра. Одним входом алгоритма является счетчик, позволяющий предотвратить атаки типа повтора сообщений. Если приемнику удается верифицировать сообщение, считается, что оно пришло от достоверного источника.
В дополнение к описанным сервисам, BLE поддерживает механизм, называемый приватным (или частным) адресом, который позволяет устройству множество часто меняемых адресов. Этот механизм снижает угрозу отслеживания BLE устройства по его адресу. Приватные адреса генерируются на основе публичного адреса устройства путем его шифрования с использованием ключа, полученного от доверенного устройства.
Каждый режим безопасности предусматривает наличие нескольких уровней, применяемых в зависимости от типа соединения пары устройств (Табл. 3.2).
Логическое соединение устройств (pairing) происходит в три этапа. На первом этапе соединенные на канальном уровне устройства объявляют свои доступные возможности ввода-вывода, и на основе их принимается решение о методе взаимодействия на втором этапе.
Целью второго этапа является генерация короткоживущего ключа (Short-Term Key - STK), который будет использован на третьем этапе для обеспечения безопасности передачи распространения ключевой информации. На втором этапе устройства первоначально договариваются о временном ключе (Temporary Key - TK) при помощи одного из методов:
- Out Of Band;
- Passkey Entry;
- Just Works.
Режим | Уровень безопасности | Тип соединения (Pairing) | Шифрование | Проверка целостности | Уровень стека |
---|---|---|---|---|---|
LE Security Mode 1 | Уровень 1 | Нет | Нет | Нет | Канальный уровень (Link Layer) |
Уровень 2 | Без аутентификации | Есть | Есть | ||
Уровень 3 | Аутентификация | Есть | Есть | ||
LE Security Mode 2 | Уровень 1 | Без аутентификации | Нет | Есть | Уровень ATT (ATT Layer) |
Уровень 2 | Аутентификация | Есть | Есть |
Метод Out Of Band (передача вне полосы) предполагает передачу временного ключа по альтернативным каналам, например, использую NFC. Метод Passkey Entry ключ задает пользователь в виде последовательности из 6 цифр. Когда применение обоих методов не возможно, используется метод Just Work, хотя он не поддерживает проверку аутентификаций, и не защищен от атаки типа "посредник" (Man In The Middle - MITM).
На базе ключа ТК и случайным числам, генерируемым каждым из узлов, создается STK, что является завершением второго этапа.
На третьем этапе каждая из конечных точек соединения может передать другой конечной точке до трех 128-битных ключа, называемых Long-Term Key (LTK), Connection Signature Resolving Key (CSRK) и Identity Resolving Key (IRK).
LTK используется для генерации 128-битного ключа для шифрования и аутентификации на канальном уровне, CSRK для подписи данных на уровне ATT, а IRK - для генерации частных адресов.
Протокол управления безопасностью Security Manager Protocol (SMP), работающий поверх фиксированного канала уровня L2CAP и отслеживает выполнение всех трех этапов.
Уязвимым местом BLE на текущий момент является незащищенность ни одного из реализованных в нем методов установления соединения от пассивного прослушивания. Однако, в следующих версиях BLE планируется использование эллиптической криптографической кривой и алгоритм Диффи-Хэлмана обмена открытыми ключами.
Уровень GAP и профили приложений
Протокол GAP определяет ролу устройств, режимы и процедуры обнаружения устройств и сервисов, управление установлением соединения и безопасностью. В BLE GAP выделяет четыре роли для контроллера - широковещательный, наблюдатель, периферийный и центральный.
Широковещательный узел может только передавать пакеты по каналам объявления и не поддерживает соединение с другими устройствами. Наблюдатель способен только прослушивать каналы объявлений, в частности, способен принимать пакеты, передаваемые широковещательным узлом. Центральные узлы представляют собой устройства, способные поддерживать несколько соединений, в то время как периферийные устройства представляют собой простые устройства, способные поддерживать одно соединение с центральным узлом. Роли центрального и периферийного узла предполагают, что устройство способно выполнять функции ведущего или ведомого устройства соответственно. Устройство может поддерживать несколько ролей, но одновременно активной может быть только одна из них.
Поверх GAP могут быть построены дополнительные профили приложений, поддерживающие необходимую пользователю функциональность. В BLE поддерживается иерархия профилей - профиль верхнего уровня может использовать функции профиля низкого уровня.
Эксплуатационные характеристики BLE
Одним из важных показателей, определяющих возможность применения технологии беспроводной связи к той или иной задаче, является энергопотребление узлов сети, работающей по данной технологии. Это будет определять время автономной работы устройств, и, соответственно, схему технического обслуживания сети.
Для устройств BLE их потребление будет зависеть от роли устройства в соединении и параметрах соединения, в частности от connInterval, connSlaveLatency, connSupervisionTimeout, а также от качества связи.
Среднее энергопотребление узла в режиме ведомого в зависимости от величины connInterval представлено на Рис. 3.14 [17].
В также [17] представлены результаты теоретического анализа времени автономной работы BLE устройства в качестве ведомого в зависимости от интервала следования событий связи connInterval, уровня битовых ошибок (BER) (Рис. 3.15 и Рис. 3.16 соответственно).
увеличить изображение
Рис. 3.14. Средний ток потребления BLE устройства в режиме ведомого (узел построен на базе СнК CC2450, connSlaveLatency=0)
увеличить изображение
Рис. 3.15. Теоретические оценки времени автономной работы BLE-устройства на основе CC2540 от батареи емкостью 230 мАч в режиме ведомого устройства при уровне ошибок равном 0 и максимальном значении connSlaveLatency
увеличить изображение
Рис. 3.16. Теоретические оценки времени автономной работы BLE-устройства на основе CC2540 от батареи емкостью 230 мАч в режиме ведомого устройства при различном уровне ошибок и различных значениях параметров connInterval и connSlaveLatency
Данные результаты, хотя и представляют максимальные оценки времени работы BLE устройств, но показывают, что BLE вполне подходит для сенсорных устройств с автономным питанием и среднее потребление BLE-устройств вполне сравнимо с потреблением устройств "традиционных" для сенсорных сетей технологий.
Сравнительные характеристики технологий BLE, Bluetooth, ZigBee, 6LoWPAN, Z-Wave представлены в Табл. 3.3 [15, 17].
Параметр | ZigBee | 6LoWPAN (поверх IEEE802.15.4) | Z-Wave | BLE | Bluetooth |
---|---|---|---|---|---|
Частотный диапазон, МГц | 868/915/2400 | 868/908, 2400 (не все версии устройств) | 2400 | 2400 | |
Битовая скорость, Кбит/с | 20/40/250 | 9.6/40, 200 | 1000 | <721 (v1.2), 3000(v2+EDR), <24000(v3+HS) | |
Тип модуляции сигнала | BPSK/BPSK/O-QPSK | BPSK | GFSK | GFSK(v1.2), GFSK/4-DQPSK/8DPSK (v2+EDR), 802.11 (v3+HS) | |
Метод расширения спектра | DSSS | Нет | FHSS (ширина канала 2 МГц) | FHSS (ширина канала 1 МГц) | |
Чувствительность приемника, дБм | -92 или лучше для 868/915 МГц; -85 или лучше для 2400 МГц | -101 | <-70 -87…-93 | -90 | |
Выходная мощность передатчика, дБм | -32…0 | -20…0 | -20…10 | 20/4/0 (класс 1/2/3) | |
Размер данных пакета, байт | До 127 | До 64 | От 8 до 47 | До 358 | |
Адресация | 16 и 64-бит MAC, 16-бит идентификатор сети | 16 и 64-бит MAC, 128-бит адрес IPv6 | 32-бит идентификатор дома; 8-бит адрес узла | 48-бит открытый адрес Bluetooth или случайный адрес | 48-бит открытый адрес Bluetooth |
Типовые требования к реализации стека протоколов | 45 - 128 Кбайт ПЗУ; 2.7 - 12 Кбайт ОЗУ | ~24 Кбайт ПЗУ; ~3.6 Кбайт ОЗУ | 32 - 64 Кбайт ПЗУ; 2 - 16 Кбайт ОЗУ | ~40 Кбайт ПЗУ; ~2.5 Кбайт ОЗУ | ~100 Кбайт ПЗУ; ~30 Кбайт ОЗУ |
Области применения BLE
Безусловно, большая часть областей применения Bluetooth может быть успешно заменена или дополнена устройствами BLE, продлив срок службы устройств за счет более эффективного управления энергопотреблением. В частности, возможно применение двухрежимных устройств BLE в мобильных телефонах, планшетных компьютерах, ноутбуках. Однорежимные устройства могут применяться в качестве беспроводного интерфейса датчиков с батарейным питанием, применяющихся как отдельно, так и в составе других устройств - часах, пульсометрах, шагомерах, домашних тонометрах, термометрах и тому подобных устройств.
В составе мобильных устройств BLE может быть использован для управления домашней автоматикой, устройствами освещения или охраны как минимум, в пределах одного помещения. Для управления устройствами в пределах всего дома возможно использование BLE в качестве шлюза между управляющим устройством и сетью домашней автоматики.
Низкое энергопотребление и более устойчивая работа в условиях большого количества аналогичных устройств в ряде случаев позволяет рассматривать BLE как альтернативу устройствам NFC, в частности RFID меткам. Но более интересен вариант использования BLE совместно с NFC. В этом случае первые обеспечивают больший радиус устойчивой работы и большое количество совместно работающих устройств, а вторые служат для установления логического соединения между парой устройств, обеспечиваю более высокий уровень безопасности за счет меньшего радиуса действия.