Обновление по воздуху (или обновление OTA ), также известное как программирование по воздуху (или программирование OTA ), [1] представляет собой обновление встроенной системы , которое доставляется через беспроводную сеть , такую как Wi-Fi или сотовая сеть . [2] [3] [4] К таким встроенным системам относятся мобильные телефоны , планшеты , телевизионные приставки , автомобили и телекоммуникационное оборудование . Обновления OTA для автомобилей и устройств Интернета вещей также можно назвать прошивкой по воздуху ( FOTA ). [5] [6] Различные компоненты могут обновляться по воздуху, включая операционную систему устройства, приложения, параметры конфигурации или параметры, такие как ключи шифрования .
Термин обновление по воздуху применяется конкретно к встроенным системам [4] , а не к невстроенным системам, таким как компьютеры. До обновления OTA встроенные устройства можно было прошивать только через прямой физический доступ (с помощью JTAG ) или проводные соединения (обычно через USB или последовательный порт ).
Беспроводная доставка может позволить распространять обновления в более крупных масштабах, снизить стоимость доставки обновлений [7] или увеличить скорость принятия этих обновлений.
Дистрибьютор этих обновлений может решить, разрешено ли пользователям отклонять эти обновления, и может отключить определенные функции на устройствах конечных пользователей до тех пор, пока обновление не будет применено. Пользователи могут не иметь возможности отменить обновление после его установки.
Обновления OTA разработаны так, чтобы быть как можно меньше, чтобы минимизировать потребление энергии, использование сети и дисковое пространство. Это достигается путем передачи только различий между старой и новой прошивкой, а не передачи всей прошивки. Дельта старой и новой прошивки создается с помощью процесса, называемого diffing ; затем файл дельты распространяется на конечное устройство, которое использует файл дельты для своего обновления. [8]
На смартфонах , планшетах и других устройствах обновление по воздуху — это обновление прошивки или операционной системы , которое загружается устройством через Интернет . Раньше пользователям приходилось подключать эти устройства к компьютеру через USB , чтобы выполнить обновление. Эти обновления могут добавлять функции, закрывать уязвимости безопасности или исправлять ошибки программного обеспечения . Две основные мобильные операционные системы — iOS и Android .
iOS получила поддержку обновлений по воздуху в iOS 5. [ 9] Обновления iOS распространяются исключительно Apple, что приводит к широкой доступности и относительно высоким показателям внедрения. Основные выпуски iOS обычно устанавливаются на 60%-70% iPhone в течение нескольких месяцев после выпуска обновления. [10] [11] [12]
Обновления Android OTA распространяются не напрямую Google, а OEM-производителями (например, Samsung) и операторами беспроводной связи . [13] Это привело к непоследовательной доступности обновлений и фрагментации Android . [11] [12] В прошлом фрагментация увеличивала сложность разработки сторонних приложений для Android (из-за непоследовательной доступности новейших программных фреймворков на телефонах пользователей) [14] и приводила к проблемам безопасности из-за задержек в распространении обновлений безопасности. [15] Google снизила фрагментацию Android с помощью Project Treble 2017 года , который позволяет OEM-производителям выпускать обновления ОС без необходимости повторного тестирования драйверов оборудования для каждой версии [13] [16] и Project Mainline 2019 года, который позволяет Google обновлять компоненты Android [16] и доставлять исправления безопасности [17] через свой Play Store , не требуя полного обновления ОС. [16] Project Mainline значительно снижает роль посредников в доставке обновлений OTA. [18] [17] Начиная с Android 8.0 , обновления Android OTA следуют схеме разделов A/B , в которой обновление устанавливается во второй раздел («B») в фоновом режиме, и телефон переключается на этот раздел при следующей перезагрузке; это сокращает время, необходимое для установки обновлений. [19]
Автомобили могут поддерживать обновления OTA для своей развлекательной системы автомобиля , навигационной карты, телематического блока управления или своих электронных блоков управления (бортовых компьютеров, отвечающих за большую часть работы автомобиля). [20] В автомобилях телематический блок управления отвечает за загрузку и установку обновлений, [4] а обновления OTA загружаются через сотовые сети, такие как смартфоны. Автомобили не могут управляться во время установки обновления OTA. Перед обновлением автомобиль проверяет подлинность обновления, а после завершения обновления он проверяет целостность всех затронутых систем. [20]
Обновления OTA обеспечивают несколько преимуществ. В прошлом Volkswagen пришлось отозвать 11 миллионов автомобилей, чтобы исправить проблему с программным обеспечением для контроля выбросов своих автомобилей, а другие производители инициировали отзывы из-за ошибок программного обеспечения, влияющих на тормоза или подушки безопасности, требуя, чтобы все затронутые клиенты ехали в дилерский центр для получения обновлений. Обновления OTA устранили бы необходимость посещать дилерские центры, что привело бы к снижению гарантийных расходов для производителей и сокращению простоев для клиентов. Обновления OTA также позволяют производителям быстрее развертывать потенциальные новые функции и исправления ошибок, делая их автомобили более конкурентоспособными на рынке и приводя к ускорению темпов улучшения продукта для потребителей. Например, обновления OTA могут обеспечить улучшения систем помощи водителю автомобиля и повысить безопасность автомобиля. [5] : 138–139 [20]
Однако обновления OTA также могут представлять собой новый вектор атаки для хакеров, поскольку уязвимости безопасности в процессе обновления могут использоваться хакерами для удаленного захвата управления автомобилями. Хакеры обнаруживали такие уязвимости в прошлом, и многие автопроизводители отреагировали, внедрив программы раскрытия уязвимостей ( также известные как программы вознаграждения за ошибки ). [20] [21] Векторы атак, характерные для обновлений OTA, включают « спуфинг , подделку, отказ от [атак], утечку информации , отказ в обслуживании », атаки повторного воспроизведения и атаки повышения привилегий . Примеры сценариев включают хакера, успешно прерывающего текущее обновление (считающееся «сбоем прошивки»), что может повредить компьютерные системы автомобиля и впоследствии привести к неисправности автомобиля; другой сценарий — «произвольные прошивки», в которых хакеры обманывают автомобиль, заставляя его установить вредоносное обновление OTA. [5] : 141–142
Совсем недавно, с появлением новых концепций беспроводных сенсорных сетей и Интернета вещей (IoT), где сети состоят из сотен или тысяч узлов, OTA выводится на новый уровень: впервые OTA применяется с использованием нелицензируемых диапазонов частот (868 МГц, 900 МГц, 2400 МГц) и с низким потреблением и низкой скоростью передачи данных с использованием таких протоколов, как 802.15.4 и Zigbee . [22]
Сенсорные узлы часто располагаются в местах, которые либо удалены, либо труднодоступны. Например, Libelium внедрила систему программирования OTA для устройств Zigbee WSN. Эта система позволяет обновлять прошивку без необходимости физического доступа, экономя время и деньги, если узлы необходимо перепрограммировать. [23]
Технология OTA похожа на методы распространения прошивки, используемые в других массовых потребительских электронных устройствах , таких как кабельные модемы , которые используют TFTP в качестве способа удаленного получения нового программирования, тем самым сокращая время, затрачиваемое как владельцем, так и пользователем устройства на обслуживание.
В беспроводных средах также доступна функция Over-the-air provisioning (OTAP) (хотя по умолчанию она отключена из соображений безопасности). Она позволяет точке доступа (AP) обнаружить IP-адрес своего контроллера. При включении контроллер сообщает другим AP о необходимости включить дополнительную информацию в пакеты управления радиоресурсами (RRM), которые помогут новой точке доступа узнать контроллер. Однако она отправляется в виде обычного текста, что делает ее уязвимой для перехвата. Вот почему она отключена по умолчанию.
Беспроводное предоставление услуг (OTAP) — это форма обновления OTA, с помощью которой операторы сотовой связи могут удаленно предоставить мобильный телефон (называемый клиентом или мобильной станцией на отраслевом жаргоне) и обновить настройки сотовой сети, хранящиеся на его SIM-карте . Это может произойти в любое время, пока телефон включен. Термин «беспроводное администрирование параметров» (OTAPA) является синонимом. [24] [25] Беспроводное предоставление услуг позволяет мобильным телефонам оставаться правильно настроенными, когда операторы сотовой связи вносят изменения в свои сети. Оно также настраивает телефоны с помощью настроек, необходимых для доступа к определенным функциям, таким как WAP (раннее воплощение мобильного Интернета ), обмен сообщениями MMS и сотовые данные (для чего требуется настройка имени точки доступа ).
Похожий термин предоставление услуг по воздуху (OTASP) конкретно относится к беспроводной первоначальной подготовке («активации») телефона. Во время активации мобильный телефон предоставляется с такими параметрами, как его номер телефона, мобильный идентификационный номер и идентификатор системы , предоставляя ему первоначальный доступ к сотовой сети. OTASP иногда называют активацией по воздуху или начальной загрузкой по воздуху . Альтернативой начальной загрузке по воздуху является начальная загрузка SIM, когда телефон считывает сетевые настройки, хранящиеся на SIM-карте . Начальная загрузка SIM имеет ограничения: настройки, хранящиеся на SIM-карте, могут устареть между временем изготовления SIM-карты и временем ее использования; кроме того, некоторые телефоны (и другое клиентское оборудование сотовой связи) не используют SIM-карты. [25] [26]
Различные органы стандартизации выпустили стандарты предоставления OTA. В 2001 году WAP Forum опубликовал стандарт предоставления WAP Client Provisioning. После того, как Open Mobile Alliance поглотил WAP Forum, этот стандарт стал известен как OMA Client Provisioning (OMA CP). В OMA CP телефоны предоставляются с помощью «невидимых» SMS-сообщений, отправляемых сотовой сетью, которые содержат необходимые настройки. За OMA CP последовал более новый стандарт, OMA Device Management (OMA DM), который использует другую форму предоставления на основе SMS (называемую «OMA Push»). Сеансы OMA DM всегда инициируются клиентом. «Невидимое» SMS не содержит параметров конфигурации; вместо этого оно сообщает телефону («DM Client») о необходимости подключения к DM Server (управляемому оператором сотовой сети); после подключения DM Server отправляет клиенту команды конфигурации. [26]
Существует ряд стандартов, описывающих функции OTA. Одним из первых был стандарт серии GSM 03.48 . Набор стандартов Zigbee включает в себя Zigbee Over-the-Air Upgrading Cluster, который является частью Zigbee Smart Energy Profile и обеспечивает совместимый (независимый от поставщика) способ обновления прошивки устройства.