Zvažte příklad elektronické řídicí jednotky (ECU) využívající tradiční statický vestavěný software. Bootloader je softwarová komponenta používaná jak k zahájení spouštění hlavního softwaru ECU, včetně kopírování softwaru do paměti RAM, tak k provedení jakýchkoli kontrol softwaru před spuštěním. Bootloader je také zodpovědný za aktualizaci softwaru, příjem, kontrolu a zápis aktualizovaného softwaru do paměti, obvykle paměti Flash. Proto je také běžně používán termín Flash Bootloader.
Používají se stejné bootloadery při vývoji a výrobě?
Stejný bootloader lze běžně použít při vývoji vozidel a souvisejících ECU a při běžné výrobě, s ochranou, která zajistí, že výrobní ECU mají mnoho možností vývoje nebo deaktivovány inženýrské bootloadery. Při vývoji vozidel je často žádoucí odstranit bezpečnostní mechanismy výrobních bootloaderů, aby bylo možné rychlé nasazení vývojového softwaru.
Zabezpečený bootloader
Stále více musí být všechny bootloadery bezpečné. Tradičně se však jedná o rozdíl, obvykle implementovaný k ochraně funkcí souvisejících s bezpečností, bezpečností a někdy i výkonem.
Bootloadery běžně kontrolují softwarovou paměť ECU při spuštění a přijatý software před aktualizací softwaru a v paměti poté.
Mechanismy běžně zahrnují:
- Autentizace softwaru přijatého a/nebo přítomného v paměti při spuštění, často pomocí hash softwarového binárního souboru ke kontrole správnosti generované bezpečným procesem kompilace oficiálně vydaných verzí softwaru.
- Ověření odesílatele pomocí semene a klíče, ochrana zabezpečených dat v ECU pomocí zabezpečené paměti a paměťových map pro definování přístupných/přepisovatelných oblastí.
Duální bootloader
Některé implementace bootloaderů jsou rozděleny do dvou částí, odtud termín dual bootloader. V tomto případě není primární bootloader aktualizovatelný jako součást zabezpečení bootloaderu. Jedná se o zavádění modulu a aktualizaci sekundárního bootloaderu. Sekundární bootloader lze aktualizovat prostřednictvím zabezpečeného procesu, což umožňuje úpravy procesu aktualizace softwaru, například mapy paměti, což umožňuje jejich normální uzamčení. Tento typ bootloaderu je nyní méně běžný kvůli novým metodám zabezpečení procesu aktualizace pomocí integrovaného zabezpečeného hardwaru, například HSM (Hardware Secure Module).
Všimněte si, že tento termín je jako duální spouštění, kde jsou k dispozici dvoubootovací bloky nebo plné paměti, což umožňuje aktualizaci na nepoužívané verzi, zatímco je aktivní jedna verze. To vyžaduje další paměť v každé ECU podporující tuto metodu aktualizace.
Capital Embedded Bootloader
Capital Embedded Bootloader podporuje spolehlivé aktualizace ECU během vývoje, při výrobě vozidel a během životnosti vozidla prostřednictvím připojených diagnostických nástrojů nebo bezdrátových metodik. Standardizovaný protokol ISO 14229 UDS se používá na řadě běžných síťových sběrnic vozidel, Ethernet, CAN/CAN-FD, LIN, FlexRay a je také možné použít jiné metody, jako jsou kalibrační protokoly ASAM. Kybernetická bezpečnost je klíčovým aspektem toku aktualizace softwaru a funkce umožňující ověřování softwaru a možnosti bezpečného spuštění jsou součástí řešení. Pro uspokojení specifických požadavků OEM (výrobců originálních zařízení) a MCU je k dispozici široká podpora pro širokou škálu projektů ECU.
Jaký je rozdíl mezi OTA a FOTA?
Aktualizace OTA (over the air) neboli FOTA (firmware over the air) je metoda, jak dosáhnout příjmu nového softwaru pro vestavěné zařízení, například automobilové ECU, vzdáleným způsobem, nikoli prostřednictvím přímo připojeného servisního nástroje v dílně. To může vyžadovat určitou schopnost integrovaného diagnostického testeru v koordinační ECU a/nebo schopnosti obnovy a autotestu v samotném bootloaderu.