Choosing the right encryption method for securely exchange information for IoT devices - achildrenmile/IoTSecurity GitHub Wiki

In an IoT platform project we came to a point, where an aceess token has to be securely be delivered to the devices. As the IoT device (in our case a Lolin ESP32) is a micro controller not providing the full power and capacities of microprocessor systems (like Raspberry PI or ordinary PC), we come to boundaries of the system very quickly. We first planned to use a token exchange using RSA with 4096 Byte certificate to exchange the token, which was working as a charm in our .NET simulation, but not at the device itself. So, how to handle this. Thanks to Whitfield Diffie and Martin Hellman there are possibilities to make a secure token exchange to work on a micro controller in a save way. We will go for the ECC (Elliptic Curve Cryptography) approach. As we are currently in the implementation phase, I'll update this post as soon as we have results.

Update You can find a sample .NET Core implementation of ECDH here-> https://github.com/achildrenmile/IoTSecurity.

Find the IoT scenario described here https://github.com/achildrenmile/IoTSecurity/wiki

As an overview, here I provide a link list for the topic around ECC and as well as Diffie-Hellmann-Key-Exchange.

Linklist: