IoT SAFE APDU, the first open source implementation of the GSMA IoT SAFE standard written in plain C

The IoT SAFE APDU library is the first, partial, open source implementation of the GSMA IoT SAFE standard written in plain C. It enables the use of the (e)SIM as a keystore. By plugging this library to a TLS (or DTLS) library, such as mbedTLS or ArduinoBearSSL, it allows the user to implement the first scenario of the standard: safely open a secure (D)TLS channel with a private key strongly protected by the (e)SIM hardware. This scenario has been implemented in one of the samples through a connection from an Arduino MKR NB 1500 to Live Objects using MQTTS with a mutual authentication.

This library has been tested with applets from two different manufacturers on:

  • Arduino MKR NB 1500
  • Linux (Raspberry Pi)

The source code of the IoT SAFE APDU library has been published on Orange-OpenSource GitHub, under BSD 3-Clause License.