Руководство по инициализации подключения к Wi-Fi® дляустройств из;мира «интернета вещей»

Что такое инициализация подключения к Wi-Fi?

Инициализация подключения к Wi-Fi — это процесс подключения нового устройства Wi-Fi (станции) к Wi-Fi-сети. Процесс инициализации предполагает загрузку в станцию имени сети (часто его называют SSID — идентификатор набора служб) и её учётных данных безопасности. Стандарт безопасности Wi-Fi® проводит различие между персональной безопасностью, в основном используемой в домах и на небольших предприятиях, и корпоративной безопасностью, используемой в больших офисах и кампусах. В случае корпоративной безопасности инициализация станции обычно предполагает установку сертификатов, которые используются для проверки целостности станции и сети путём взаимодействия с сервером безопасности, находящимся под управлением IT-отдела. С другой стороны, персональную безопасность Wi-Fi должны обеспечивать сами пользователи у себя дома, и это предполагает просто ввод заданного пароля. Чтобы надёжно обеспечить безопасность, пароль может иметь длину до 64 символов.

В статье ограничимся персональной безопасностью сети Wi-Fi и задачей простой загрузки пользователем имени сети и пароля в Wi-Fi-станцию IoT.

Задача инициализации беспроводного подключения в устройствах IoT

Технология Wi-Fi® была создана для того, чтобы переносные устройства, такие как ноутбуки, а позже — мобильные устройства, такие как сотовые телефоны и планшеты, могли подключаться к интернету без проводов. Такие персональные вычислительные устройства по определению имеют дисплей и клавиатуру в качестве интерфейса пользователя. Например, обычная процедура подключения сотового телефона к сети Wi-Fi осуществляется через страницу настроек Wi-Fi этого телефона. Телефон осуществляет поиск сетей Wi-Fi и предоставляет пользователю список доступных сетей. После того как сеть выбрана, пользователю предлагается ввести пароль. Если пароль введён правильно, инициализация подключения считается успешной и часто указывается значком Wi-Fi на панели состояния.

Трудность в устройствах IoT заключается в том, что многие из них не имеют дисплея и клавиатуры, а иногда у них вообще нет никакого пользовательского интерфейса. Таким «безголовым» устройствам нужны другие способы получения имени сети и пароля от пользователя. Альтернативный способ подключения должен быть простым и надёжным. В большинстве случаев он предполагает использование ПК, телефона или планшета в качестве расширенного интерфейса пользователя для IоТ-устройства, который даёт пользователю возможность ввести информацию о сети с помощью дисплея и клавиатуры ПК, телефона или планшета.

В нескольких следующих параграфах мы дадим краткий обзор широко распространённых на рынке способов инициализации подключения. Затем мы рассмотрим ключевые аспекты выбора правильных способов инициализации и дадим рекомендации разработчику системы.

Безопасная настройка Wi-Fi

Безопасная настройка беспроводной сети (Wi-Fi Protected Setup, или WPS) — единственный промышленный стандарт, имеющийся на сегодня для подключения к сети «безголовых» устройств, то есть не имеющих пользовательского интерфейса. Он был введён объединением крупнейших производителей компьютерной техники и беспроводных устройств Wi-Fi (Wi-Fi Alliance) в 2006 г. в качестве простого и безопасного способа инициализации подключения устройств, не требующего знания имени сети и ввода длинных паролей. Этот стандарт устанавливает два обязательных способа для точек доступа (ТД), поддерживающих WPS: способ с использованием персонального идентификационного номера (Personal Identification Number — PIN) и способ подключения нажатием кнопки (Push-Button-Connect — PBC).

В случае способа с использованием PIN 8-значный PIN печатается на стикере (рисунок 1), либо на точке доступа, либо на подключаемом устройстве. Пользователь должен прочитать этот PIN на одном устройстве и набрать его на клавиатуре другого устройства. Поскольку точки доступа не имеют клавиатур, PIN обычно печатается на точке доступа (ТД) и вводится пользователем на подключаемом устройстве. Очевидный недостаток этого способа заключается в том, что он не работает в случае устройств, не имеющих пользовательского интерфейса, — для такого способа нужна хотя бы цифровая клавиатура, чтобы ввести PIN.

 Например, PIN-номер WPS напечатан на точке доступа D-Link® (слева)

Рисунок 1. Например, PIN-номер WPS напечатан на точке доступа D-Link® (слева), а кнопка подключения WPS находится на точке доступа Cisco (справа)

В случае способа PBC пользователь нажимает кнопку как на точке доступа (ТД), так и на подключаемом устройстве. Как только кнопка на точке доступа будет нажата, устройство, поддерживающее WPS, сможет свободно подключиться к сети в течение 2 минут. Недостаток этого способа, помимо отсутствия защиты в течение этого 2-минутного периода, заключается в том, что пользователь должен иметь физический доступ к точке доступа. Если ТД находится в труднодоступном месте, этот способ может оказаться неудобным.

При использовании обоих способов, PIN и PBC, ТД и подключаемое устройство обмениваются серией сообщений для установления временного защищённого соединения, которое используется для передачи SSID и пароля из ТД в подключаемое устройство.

Основная проблема стандарта WPS была вскрыта в 2011 году Стефаном Фибёком (Stefan Viehböck) [1], который обнаружил серьёзный недостаток способа с использованием PIN, позволяющий получить сетевой пароль менее чем за четыре часа путём простого перебора. Поскольку способ с использованием PIN обязателен для получения сертификации WPS, все новые ТД, выпускаемые на рынок начиная с 2007 г., поддерживали этот способ по умолчанию. Более того, во многих ТД не была предусмотрена возможность отключения функций WPS.

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

Режим точки доступа

Режим точки доступа (AP) — наиболее широко применяемый на сегодня способ подключения для устройств, не имеющих пользовательского интерфейса. В режиме AP неподключённое (неинициализированное) устройство сначала запускается как ТД с SSID, который задан изготовителем оборудования. Прежде чем впервые попытаться подключиться к домашней сети, неинициализированное устройство создаёт свою собственную сеть, позволяя ПК или смартфону подключиться к ней напрямую, чтобы позволить выполнить его начальное конфигурирование.

В этом режиме неинициализированное устройство включает в себя также встроенный веб-сервер. После того как пользователь подключит свой смартфон к ТД неинициализированного устройства, он открывает веб-браузер смартфона и входит на веб-сервер устройства, используя заданный локальный URL или IP-адрес.

На встроенном веб-сайте пользователь выбирает (или вводит) имя домашней сети и пароль. Устройство сохраняет сетевые реквизиты в энергонезависимой памяти, а затем переходит из режима AP в режим станции, чтобы подключиться к домашней сети с использованием сохранённых сетевых реквизитов.

На рисунке 2 показан снимок экрана iPad, на который выведена вкладка настройки микроконтроллера CC3200 семейства SimpleLink™ с интегрированным модулем Wi-Fi реализованного в микросхеме веб-сервера. Эта вкладка настройки даёт пользователю возможность ввести SSID и ключ безопасности для нескольких профилей сети. После того как конфигурирование будет завершено, микроконтроллер CC3200 (или CC3100) автоматически подключится к одной из доступных сетей на основании задаваемых пользователем приоритетов [2].

 Страница настройки реализованного в микросхеме веб-сервера микроконтроллера CC3200 семейства SimpleLink с модулем Wi-Fi

Рисунок 2. Страница настройки реализованного в микросхеме веб-сервера микроконтроллера CC3200 семейства SimpleLink с модулем Wi-Fi

Основное преимущество подключения в режиме ТД заключается в том, что в нём используются стандартные возможности, которые имеются во многих смартфонах, планшетах и ПК. Ещё одно преимущество заключается в том, что поставщики могут добавлять дополнительные параметры к встроенному веб-серверу для конфигурирования других функций устройства одновременно с регистрацией в сети Wi-Fi.

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

Недостаток режима AP (ТД) заключается в том, что при подключении к конфигурационной сети AP неинициализированного устройства телефон отключается от домашней сети. Это может вызвать перерывы в передаче данных и привести к появлению сообщений об ошибках. На ПК, если активны и Wi-Fi-соединение, и Ethernet-соединение, браузер может отдать приоритет Ethernet-соединению и не подключиться к неинициализированному устройству по Wi-Fi. Пользователь должен отключить Ethernet-соединение, прежде чем использовать инициализацию Wi-Fi в режиме AP (ТД).

Появившиеся недавно смартфоны проверяют, действительно ли сеть Wi-Fi подключена к интернету. Если интернет-соединение прерывается (как это бывает, когда телефон соединяется с ТД неинициализированного устройства), эти смартфоны отключаются от сети Wi-Fi, а затем принудительно устанавливают соединение сотовой системы передачи данных. Заблокировать такое поведение телефона можно, но для этого требуются расширенные настройки на странице конфигурации устройства, что усложняет пользование устройством для потребителя.

Функция конфигурирования беспроводных устройств (WAC) Apple

Функция конфигурации беспроводных устройств (WAC) — это лицензированная технология Apple MFi, предназначенная для принадлежностей MFi, которые подключаются к iPod, iPhone и iPad. Принадлежности MFi, которые поддерживают WAC, можно легко сконфигурировать с помощью iPod, iPhone и iPad, при этом от пользователя не требуется вводить имя сети и пароль. Подробная информация о функции WAC доступна обладателям лицензий на разработку и изготовление устройств Apple MFi.

Технология SmartConfig™

Технология SmartConfig — это фирменный способ инициализации подключения корпорации TI, предназначенный для устройств без пользовательского интерфейса, предложенный в 2012 г. Он предполагает использование мобильного приложения для передачи сетевых реквизитов из смартфона или планшета в неподключённое Wi-Fi-устройство корпорации TI. Когда SmartConfig включается в неподключённом устройстве, оно входит в специальный режим сканирования, ожидая получения информации о сети, которая передаётся телефонным приложением. Телефон должен быть подключён к сети Wi-Fi, чтобы он мог передавать сигнал SmartConfig по беспроводным каналам. Обычно это та же домашняя сеть, к которой новое устройство собирается подключиться.

Имя сети Wi-Fi (SSID), к которой подключён телефон, автоматически появляется в телефонном приложении. После этого пользователь вводит пароль сети и нажимает кнопку «Пуск», чтобы начать процесс. Также есть вариант добавления имени устройства, которое передаётся телефоном вместе с информацией о сети и программируется в памяти устройства Wi-Fi.

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

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

На рисунке 3 показан пример снимков экрана приложения SmartConfig. На левом снимке экрана пользователь вводит пароль и имя устройства.

 Телефонное приложение SmartConfig корпорации Texas Instruments

Рисунок 3. Телефонное приложение SmartConfig корпорации Texas Instruments

На экране справа мы видим уведомление, полученное после успешного подключения устройства.

Корпорация Texas Instruments предлагает библиотеку SmartConfig для операционных систем iOS и Android™, а также демонстрационное приложение в Apple App store и в Google Play. исходный код приложения можно загрузить с веб-сайта TI. Многие IoT-устройства имеют телефонные приложения, которые используются для управления и контроля IoT-устройства и для регистрации устройства в сети. Поставщики могут использовать библиотеку SmartConfig, чтобы упростить интегрирование функции SmartConfig в свои приложения.

Два ключевых преимущества SmartConfig — это простота использования и возможность беспрепятственной интеграции в телефонное приложение устройства. Другая уникальная возможность технологии SmartConfig — способность обеспечивать подключение нескольких устройств одновременно. Если несколько устройств Wi-Fi одновременно находятся в режиме SmartConfig, одно телефонное приложение может обеспечить подключение их всех одновременно.

Помимо того что SmartConfig работает только в устройствах TI, основной недостаток этой технологии заключается в том, что телефон должен подключаться к сети, используя ту полосу частот и ту скорость передачи данных, которые поддерживаются неподключённым устройством. Например, если неподключённое устройство поддерживает только диапазон 2,4 ГГц, а телефон использует для связи с двухдиапазонной сетью диапазон 5 ГГц, то SmartConfig не будет работать просто потому, что неподключённое устройство не принимает сигналы в диапазоне 5 ГГц. Некоторые новые маршрутизаторы и телефоны для увеличения пропускной способности используют собственные скорости передачи данных и также могут не работать со SmartConfig.

Поскольку подавляющее большинство маршрутизаторов работает в диапазоне 2,4 ГГц и использует стандартные скорости передачи данных Wi-Fi, технология SmartConfig хорошо работает в большинстве ситуаций.

Внеполосное подключение

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

Внеполосные способы подключения используют для передачи информации о сети в подключаемое устройство среду, отличную от Wi-Fi. Внеполосное подключение может быть проводным, например с помощью интерфейса USB, или беспроводным, например с помощью технологии радиосвязи ближнего радиуса действия (NFC) или Bluetooth®. Добавление в устройство возможности внеполосного первичного подключения повышает его надёжность и универсальность, но увеличивает стоимость решения.

Аспекты проектирования

Итак, мы рассмотрели наиболее широко используемые способы первичного подключения к Wi-Fi и обсудили некоторые из их ключевых характеристик, их достоинства и недостатки. Далее мы рассмотрим важные аспекты, которые обязательно следует учитывать при выборе способа (или способов) инициализации подключения, и дадим рекомендации по выбору подходящего способа для различных систем. Мы сосредоточимся на внутриполосных способах подключения, поскольку они вызывают большинство вопросов и трудностей.

Простота использования

Простота использования — важная характеристика потребительских товаров. Многие простые устройства «интернета вещей» рассчитаны на обычных домашних пользователей, которые не обладают глубоким пониманием процесса подключения и иногда имеют ограниченные навыки работы на компьютере или не имеют их вообще. Так как подключение — это первое, что пользователи делают, когда открывают коробку с устройством, оно может сформировать их общее мнение об устройстве. В этих случаях простота использования имеет наивысший приоритет для разработчика.

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

WPS, WAC и технология SmartConfig — самые простые в использовании способы. Хотя WPS не требует никаких знаний и средств, для него требуется физический доступ к маршрутизатору Wi-Fi, чтобы нажать кнопку WPS. Поскольку большинство пользователей смартфонов знают, как загружать и использовать телефонные приложения, технология SmartConfig предлагает пользователю знакомый интерфейс, но требует, чтобы он ввёл пароль сети.

Безопасность

С точки зрения безопасности с подключением к Wi-Fi связаны следующие два главных риска: (i) любитель подслушивать может получить пароль сети и воспользоваться им для подключения к домашней сети, и (ii) злоумышленник может использовать окно подключения устройства, чтобы взять его под контроль. В большинстве случаев первый риск вызывает наибольшие опасения.

Можно обоснованно утверждать, что риски, которым подвергается безопасность при подключении к Wi-Fi устройств «интернета вещей», ограничены при всех способах подключения, рассмотренных в этой статье, если эти способы используются правильно, поскольку подключение осуществляется только один раз за весь срок службы устройства или по крайней мере очень редко. Кроме того, во время подключения пароль сети передаётся в течение короткого времени в момент, контролируемый пользователем. Злоумышленник должен точно знать, когда произойдёт подключение, и у него будет очень мало времени на то, чтобы провести атаку. Более того, злоумышленник должен находиться в радиусе действия сети Wi-Fi в тот момент, когда осуществляется подключение. Тем не менее значение безопасности никогда не следует недооценивать, и во многих случаях это имеет решающее значение.

Режим AP, WAC и технология SmartConfig имеют встроенную защиту. В случае режима AP и технологии SmartConfig разработчик должен выбрать использование защиты (то есть в режиме AP точка доступа должна быть сконфигурирована для применения защиты, а в SmartConfig шифрование должно быть выбрано явным образом), а в WAC защита подключения используется всегда.

В случае способа подключения с помощью кнопки WPS риск с точки зрения безопасности заключается в том, что, когда ТД находится в режиме WPS, любое устройство Wi-Fi, находящееся поблизости, может использовать WPS для подключения к этой сети Wi-Fi.

Надёжность и универсальность

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

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

Технология SmartConfig имеет некоторые присущие ей ограничения, которые были рассмотрены выше и которые могут не позволить ей выполнить подключение к некоторым ТД, использующим диапазон 5 ГГц или свои собственные скорости передачи данных.

Режим AP, вероятно, является наиболее надёжным и универсальным способом подключения к Wi-Fi. Подключение в режиме AP будет работать в большинстве случаев, за исключением некоторых новых моделей телефонов, которые отключают сеть Wi-Fi, не подключённую к интернету (как указано выше, такой режим можно отключить). Вероятно, в этом заключается причина того, что большинство устройств и систем «интернета вещей» на сегодня используют именно этот способ подключения.

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

Унификация

WPS и WAC выполняют единственную функцию — подключение к Wi-Fi, а режим AP и технологию SmartConfig вполне можно интегрировать в систему управления устройства и уподобить другим его функциям. Технологию SmartConfig можно интегрировать в телефонное приложение устройства, чтобы обеспечить его единообразное восприятие пользователем, позволяющее реализовать несколько вариантов конфигурирования с помощью одного и того же пользовательского интерфейса. Режим AP даёт аналогичные преимущества при использовании веб-браузера для взаимодействия с несколькими функциями устройства из одной позиции.

Заключение

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

В случае профессиональных или промышленных устройств может быть достаточно режима AP, так как он обеспечивает наилучшую надёжность и универсальность. Во многих устройствах IoT на сегодня режим AP выбран в качестве их единственного способа подключения.

В случае аксессуаров MFi, которые подключаются к iPod, iPhone и iPad, естественным вариантом выбора является WAC. Для поддержки подключения с использованием других телефонов, планшетов или ПК в аксессуар следует добавить дополнительный способ подключения.

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

WPS или SmartConfig смогут охватить большинство вариантов установки устройств, но, поскольку они не будут работать в 100% всех случаев, рекомендуется добавить в устройство режим AP в качестве варианта «режима для продвинутых пользователей». Пользователям можно дать указание использовать режим AP, если им не удаётся подключиться с помощью WPS или SmartConfig.

Подключение с помощью микроконтроллеров CC3100 и CC3200 семейства SimpleLink с модулем Wi-Fi

Платформы CC3100 и CC3200 семейства SimpleLink с модулем Wi-Fi обеспечивают потребителям наибольшую гибкость с точки зрения способов подключения, так как поддерживают все рассмотренные выше внутриполосные способы. Благодаря своим новым интерфейсам прикладного программирования SimpleLink и возможностям автономного модуля управления Wi-Fi микроконтроллеры CC3100 и CC3200 делают подключение простой задачей для разработчика устройств. Приложение может включить использование любого способа подключения с помощью простых вызовов интерфейса прикладного программирования, а корпорация TI предлагает типовое программное обеспечение для SmartConfig, режима AP и WPS. Имя сети Wi-Fi и пароль автоматически и надёжно записываются во flash-память последовательного доступа и используются встроенным модулем управления Wi-Fi для подключения к сети без всякого участия пользователя и без кода приложения.

Встроенный в микросхему вебсервер микроконтроллеров CC3100 и CC3200 делает проектирование подключения точки доступа чрезвычайно простым. Разработчик может включить заранее заданные элементы конфигурации в HTML-страницы, которые хранятся во flash-памяти последовательного доступа и автоматически загружаются веб-сервером. Чтобы ещё больше упростить работу, микроконтроллеры CC3100 и CC3200 имеют в своём составе реализованный в микросхеме веб-сайт для подключения, который выполняет работу по подключению точки доступа без кода пользователя и вообще без каких-либо усилий с его стороны. Узнайте больше на сайте www.ti.com/simplelinkwifi.

Литература

  1. Viehböck. Stefan (2011-12-26). Brute forcing Wi-Fi Protected Setup (PDF)
  2. Watch this video for a TI AP mode provisioning illustration.
Оставить заявку