
Современный автомобиль за свой срок службы получает десятки обновлений ПО, большинство — удалённо через T-Box. Обновление по воздуху в автомобильном масштабе — в той же мере задача криптографии, организации памяти и восстановления после сбоев, что и связи: неудачное обновление контроллера тормозной системы, батареи или связи — это не неудобство, а событие, связанное с безопасностью. В статье объясняется, как устроена безопасная OTA-кампания, почему A/B-разделы вытеснили перезапись на месте, как цепочка безопасной загрузки привязывает доверие к аппаратуре и где T-Box выступает главным контроллером обновлений автомобиля.
Типовой поток идёт от облака к ЭБУ поэтапно: бэкенд управляет когортами транспортных средств и перечнями версий, подписывает пакеты обновлений и рассылает уведомление о кампании; T-Box загружает пакет по сотовой сети или Wi-Fi, проверяя контрольные точки по мере поступления; менеджер обновлений внутри автомобиля выбирает время с учётом состояния машины (припаркована, заряжается, достаточный заряд батареи); а целевые ЭБУ прошиваются по CAN-FD или автомобильному Ethernet с использованием последовательности UDS, описанной в нашей статье CAN/UDS. Телеметрия сообщает результат каждого автомобиля обратно в облако, давая менеджеру кампании замкнутый цикл успеха/неудачи и возможность приостановить развёртывание, как только вырастет доля аномалий.

Полные образы ЭБУ по сотовой сети дороги, поэтому платформы используют дифференциальные (дельта-) пакеты — алгоритмы бинарного сравнения, такие как bsdiff, кодируют только байты, изменившиеся между старой и новой прошивкой, сжимая обновление объёмом 200 МБ до нескольких мегабайт. Автомобиль локально восстанавливает полный образ на основе своей известной текущей версии, поэтому важен точный перечень версий: дельта применима только к той самой базовой версии, из которой она собрана. Загрузки возобновляемы, планируются с учётом свободной флеш-памяти и предпочтительно выполняются в нетарифицируемых сетях.
Самая безопасная организация памяти хранит две полные копии прошивки, условно слоты A и B. Система работает из активного слота, пока обновление записывается, проверяется и готовится в неактивном слоте, — работающий автомобиль не затрагивается. При следующей перезагрузке загрузчик пробует вновь записанный слот; если он загружается и подтверждает исправность в заданном окне, он помечается активным. При любом сбое загрузчик при следующем запуске просто возвращается к нетронутому предыдущему слоту. Это делает неудачное обновление самовосстанавливающимся и устраняет опасное окно, когда прерванная перезапись на месте не оставляет вообще никакой работоспособной прошивки.
Безопасность обновлений в конечном счёте держится на безопасной загрузке. Доверие начинается в неизменяемом коде ПЗУ и каскадно распространяется от этапа к этапу, где каждый слой проверяет цифровую подпись следующего перед его запуском:

Поскольку T-Box — единственное ЭБУ, открытое публичному интернету, оно служит периметральным межсетевым экраном автомобиля. Усиление защиты включает: взаимно аутентифицированный TLS для облачных сессий; защищённую бортовую связь (аутентифицированные, защищённые от повторения сообщения CAN в рамках AUTOSAR SecOC), чтобы скомпрометированный T-Box не мог свободно командовать внутренними ЭБУ; журналирование обнаружения вторжений; сервисные учётные записи с минимальными привилегиями; и быстрые процессы реагирования на уязвимости в соответствии со стандартами ISO/SAE 21434 и UN R155/R156, которые делают управление кибербезопасностью и возможность обновления обязательным условием омологации на многих рынках.
ЭБУ не должен терять питание в середине обновления. Weijiang Power поставляет широкотемпературные резервные ячейки NiMH и литиевые и заказные пакеты, позволяющие T-Box пережить перебой питания и завершить или безопасно прервать цикл прошивки, с большим календарным ресурсом, соответствующим окну поддержки обновлений автомобиля. Пришлите нам схему шины питания и наибольшую длительность обновления, и наши инженеры рассчитают энергию удержания для отказоустойчивой OTA-стратегии.