  The centralized PKI is not a suitable solution to provide identities in
large-scale IoT systems. The main problem is the high cost of managing X.509
certificates throughout their lifecycle, from installation to regular updates
and revocation. The Self-Sovereign Identity (SSI) is a decentralised option
that reduces the need for human intervention, and therefore has the potential
to significantly reduce the complexity and cost associated to identity
management in large-scale IoT systems. However, to leverage the full potential
of SSI, the authentication of IoT nodes needs to be moved from the application
to the Transport Layer Security (TLS) level. This paper contributes to the
adoption of SSI in large-scale IoT systems by addressing, for the first time,
the extension of the original TLS 1.3 handshake to support two new SSI
authentication modes while maintaining the interoperability with nodes
implementing the original handshake protocol. The open source implementation of
the new TLS 1.3 handshake protocol in OpenSSL is used to experimentally prove
the feasibility of the approach.
