Skip to main content

Software Updates for Internet of Things

Document Charter Software Updates for Internet of Things WG (suit)
Title Software Updates for Internet of Things
Last updated 2021-12-17
State Approved
WG State Active
IESG Responsible AD Roman Danyliw
Charter edit AD Roman Danyliw
Send notices to (None)

Vulnerabilities in Internet of Things (IoT) devices have raised the need for a
secure firmware update mechanism that is also suitable for constrained devices.
 Security experts, researchers, and regulators recommend that all IoT devices
be equipped with such a mechanism.  While there are many proprietary firmware
update mechanisms in use today, there is no modern interoperable approach
allowing secure updates to firmware in IoT devices. In June 2016, the Internet
Architecture Board organized a workshop on 'Internet of Things (IoT)
Software Update (IOTSU)', and RFC 8240 documents various requirements and
challenges that are specific to IoT devices.

A firmware update solution consists of several components, including:
* A mechanism to transport firmware images to compatible devices.
* A manifest that provides meta-data about the firmware image (such as a
  firmware package identifier, the hardware the package needs to run, and
  dependencies on other firmware packages), as well as cryptographic
  information for protecting the firmware image in an end-to-end fashion.
* The firmware image itself.

The SUIT WG is defining a firmware update solution (taking into account past
learning from RFC 4108 and other proprietary firmware update solutions) that
are usable on Class 1 (as defined in RFC 7228) devices, i.e., devices with ~10
KiB RAM and ~100 KiB flash.  The solution may apply to more capable devices as
well.  The SUIT WG is not defining any new transport or discovery mechanisms,
but may describe how to use existing mechanisms within the architecture.

The SUIT WG has already completed work on two documents:
* An IoT firmware update architecture.
* An information model for the SUIT manifest.

Now that the information model is complete, the SUIT WG has selected the CBOR
serialization format and the associated COSE cryptographic mechanisms to encode
the SUIT manifest. The SUIT WG may consider a small number of additional
formats in the future; however, to reduce the complexity of a firmware
management solution, a very small number of formats is preferred to enable SUIT
maifest integration and interoperability with other IoT technologies and
ecosystems.  To support a wide range of deployment scenarios, the formats are
expected to be expressive enough to allow the use of different firmware sources
and permission models.

To enable SUIT Status Tracker functionality (per RFC9019), the SUIT WG is also
defining extensions to determine if a particular manifest could be successfully
deployed to a device and determine if an operation was successful.

In addition, the SUIT WG will work with the RATS WG to specify claims related
to the SUIT Status Tracker that can be used to provide evidence in support of
the RATS architecture.

The SUIT WG will continue to work with silicon vendors and OEMs that develop
IoT operating systems to produce implementations based on SUIT WG
specifications.  In particular, the SUIT WG plans to continue to participate in
IETF Hackathons.

The SUIT WG document deliverables are:
* A SUIT manifest format specification using CBOR.
* Extensions to the SUIT manifest for optional capabilities, including:
  - firmware encryption,
  - trust domains,
  - update management, and
  - inclusion of a file in the MUD format (RFC 8520).
* A secure method for an IoT device to report on firmware update status.

In addition, either the SUIT WG or the RATS WG will produce:
* A set of claims for attesting to firmware update status.