Difference between revisions of "Secure OTA Update"

From eLinux.org
Jump to: navigation, search
m (Relevant conference presentations)
m
Line 58: Line 58:
  
 
= Other =
 
= Other =
* [https://groups.google.com/a/foundries.io/forum/#!forum/linuxupdate Mailing list]
+
* [https://groups.google.com/forum/#!forum/linuxswupdate Mailing list]

Revision as of 07:49, 25 October 2017

Overview

A valid software update system on Linux should provide the following elements

  • Atomic updates
    • Stateless system
  • Capable of updating all software
    • bootloader
    • kernel
    • user data / configuration
    • rootfs / root file system
  • fail-safe, rollback to a previous software state
    • boot/update monitoring (watchdog) with boot confirmation
  • Secure download and verification of the image
  • Easy to use without vendor lock-in
  • Trusted
    • Compliant with and leverages HW elements (TPM/TEE)

Storage and delivery methods

  • Layered Tarball-based (i.e. docker)
  • File-based (i.e.libostree)
  • Chunk-based (i.e. casync)
  • Block-based (i.e. others)

Todo

  • Develop guidelines / reference implementations for key stories
    • Secure boot
    • Trusted execution environment (bootloader update, integrity checks)
    • Bootloader-driven rootfs image update process (image swap, boot count)
    • Boot firmware update process
    • Integration with different Open Source management servers
    • Secure software distribution (TUF) implementation
    • Watchdog best practices / boot image validation
  • Investigate cross-compatibility extensions in existing solutions
    • i.e. Mender support in SWUpdate?
    • casync (chunk-based image support in AGL

Relevant conference presentations

Upgrades for Embedded Linux]

Relevant information

Reference implementations

Other