On 17 Oct 2018 7:00 pm, "Usman Saeed via luv-main" <luv-main@luv.asn.au> wrote:
Hi,

I am working on a project involving distributed radio nodes connected over a wireless network. We are using symmetric key cryptography for ciphering (AES-256). The radio nodes are running Linux on a 250MHz processor.
I need a solution to manage the symmetric keys in this network of nodes, written in C/C++. The solution should be able to manage the life cycle of the keys. It should be able to auto-generate a new key (upon expiry or when manually instructed by the user) and securely disseminate it in the network and archive the old key after activation of the new key.
I have looked at Key Management Interoperability Protocol (KMIP). It provides all of these features but sadly there is no open-source implementation available in C.
Does anyone know a solution for symmetric key management that can provide these features and implemented in the open-source domain?

Thanks,
Usman

If you are not wedded to AES have a look at wireguard.
https://lwn.net/Articles/761939/

It's available on many distributions are automatically handles updating session keys once you have registered each nodes public key. 
I found the lkms package very easy get under Debian Stretch.

It's light weight, simple and just works without complex Daemon needed.
 
If you want to support many nodes with arbitrary linkage  you will need to run some more complex routing system I guess.

Andrew