Table of Contents
Fetching ...

An Efficient TLS 1.3 Handshake Protocol with VC Certificate Type

Leonardo Perugini, Andrea Vesco

TL;DR

The paper tackles the challenge of deploying Self-Sovereign Identity in IoT by enabling Verifiable Credentials in the TLS 1.3 handshake without breaking RFC-8446. It introduces a VC certificate type and a did_methods extension, allowing VC/DID-based authentication to run alongside traditional PKI, with a fallback path to preserve interoperability. Implementation is achieved with minimal changes to OpenSSL, offloading VC/DID logic to an external ssi provider that interfaces with the IOTA Identity library. Experimental evaluation on Raspberry Pi hardware shows the VC-enabled handshake is feasible and achieves performance close to PKI-based approaches, especially when using an IPSec path to the DLT, indicating practical viability for large-scale IoT deployments.

Abstract

The paper presents a step forward in the design and implementation of a Transport Layer Security (TLS) handshake protocol that enables the use of Verifiable Credential (VC) while maintaining full compliance with RFC-8446 and preserving all the security features of TLS 1.3. The improvement over our previous work lies in the handshake design, which now only uses messages already defined for TLS 1.3. The design has an incredibly positive impact on the implementation, as we made minimal changes to the OpenSSL library and relied mostly on a novel external provider to handle VC and Decentralized IDentifier (DID) related operations. The experimental results prove the feasibility of the design and show comparable performance to the original solution based on Public Key Infrastructure (PKI) and X.509 certificates. These results pave the way for the adoption of Self-Sovereign Identity in large-scale Internet of Things (IoT) systems, with a clear benefit in terms of reducing the cost of identity management.

An Efficient TLS 1.3 Handshake Protocol with VC Certificate Type

TL;DR

The paper tackles the challenge of deploying Self-Sovereign Identity in IoT by enabling Verifiable Credentials in the TLS 1.3 handshake without breaking RFC-8446. It introduces a VC certificate type and a did_methods extension, allowing VC/DID-based authentication to run alongside traditional PKI, with a fallback path to preserve interoperability. Implementation is achieved with minimal changes to OpenSSL, offloading VC/DID logic to an external ssi provider that interfaces with the IOTA Identity library. Experimental evaluation on Raspberry Pi hardware shows the VC-enabled handshake is feasible and achieves performance close to PKI-based approaches, especially when using an IPSec path to the DLT, indicating practical viability for large-scale IoT deployments.

Abstract

The paper presents a step forward in the design and implementation of a Transport Layer Security (TLS) handshake protocol that enables the use of Verifiable Credential (VC) while maintaining full compliance with RFC-8446 and preserving all the security features of TLS 1.3. The improvement over our previous work lies in the handshake design, which now only uses messages already defined for TLS 1.3. The design has an incredibly positive impact on the implementation, as we made minimal changes to the OpenSSL library and relied mostly on a novel external provider to handle VC and Decentralized IDentifier (DID) related operations. The experimental results prove the feasibility of the design and show comparable performance to the original solution based on Public Key Infrastructure (PKI) and X.509 certificates. These results pave the way for the adoption of Self-Sovereign Identity in large-scale Internet of Things (IoT) systems, with a clear benefit in terms of reducing the cost of identity management.
Paper Structure (17 sections, 4 figures, 3 tables)

This paper contains 17 sections, 4 figures, 3 tables.

Figures (4)

  • Figure 1: Flow of messages in (a) the original TLS 1.3 handshake protocol and (b) the TLS 1.3 handshake protocol with VC certificate type.
  • Figure 2: Flow of messages in (a) a hybrid handshake where the client uses an X.509 certificate type and the server a VC certificate type and (b) a fallback to the original TLS 1.3 handshake protocol.
  • Figure 3: The high-level architecture of the overall solution.
  • Figure 4: The experimental setup with two Raspberry Pi 4 Model B leveraging the IOTA Tangle DLT as the RoT for public keys.