Key Management / Exchange for a Large Number of Devices


Hi Brocaar and everyone else ,

I am using LoRaServer Project and as an end node an Arduino together with the lmic library.

Is there any way to generate the keys for many devices (>50) without the lora app server web interface and without setting the AppKey and Device EUI in the enddevice for every new endnode in the field ?

The current procedure for every new device is that i go to the webinterface and generate the deveui and appkey and then set these keys in the source Code of my endnode for OTAA . For a few devices this process is ok but for a huge number it is not practicable.

I would appreciate every suggestion for key Management / exchange for a large number of devices.

Thanks for the support.

Best Regards


Use the API for entering nodes in LoRaServer automatically.

On your end node you can generate a customized unique file to flash, or (you would have to check this) it may be that avrdude can write a file containing just a few words into locations left erased when loading the program if you specifically tell it not to erase for the second operation, or you can implement runtime communication with your node to upload (over a serial wire, etc) details which it saves in EEPROM.

Essentially your board flashing (or configuring) rig will put nodes into LoRaServer as it manufactures them, or else it will operate with your own database, and something else will pull new entries out of that and send them to LoRaServer.

OTAA join vs. ABP changes the specifics of the shared secrets, but either way you will still have some that need to get into both systems.


Thanks for the suggestion @cstratton, i will try it.

Does anyone have any another suggestion ?

Thanks for the help !