I am using an ECDH key exchange to establish a shared secret between an Arduino Uno and an Android device. For this purpose I am using this library and more specifically Curve25519. This is the confidentiality part of the secure communication I want to establish.
Now, before establishing shared secret between the Arduino Uno and the Android device, I want to have two-way authentication. It would be nice to have some sort of session IDs in order to be able to communicate with multiple Arduino Uno devices from a single Android device.
What do you suggest? Please consider the memory size of Arduino Uno (2kB RAM, 32kB flash).