Side meeting: Security for 802.15.4 @ Summit

chrysn via RIOT notifications@riot-os.org wrote: > 1. Solve the persistence issues, possibly together with the PSA > topic > 2. Make the 802.15.4 security module get its numbers from there.

>   At this point, we fix https://github.com/RIOT-OS/RIOT/issues/16844
> and get very minimal security at the level of WEP (shared key that
> doesn't get changed, and is burnt into every device)

I wasn’t thinking about such a step, but I totally agree it’s a good one. In particular, being able to burn in the 15wep key (a word I just made up) into to devices independently of the image you want to (debug) run is a great simplification of configuration errors vs coding errors.

> 3. Implement CoJP.
>
>   Now we can roll over network keys, and kick devices from the network.

CoJP lets you do initial onboarding to any network that knows the device’s long-term symmetric key. It’s more than just rolling over network keys.

> 4. Implement EDHOC, get network keys with CoJP+EDHOC.

>   Now we don't have to provision devices with knowledge of the network,
> but can enroll them by just handing their public key to the JRC.

This isn’t specified anywhere, but I guess it is a step we can consider but devices need to know what network they are going to join. So, i don’t think of this as a step :slight_smile:

> 5. Implement ACE-AUTHZ in addition.

>   Now the device can connect to a network even if it wasn't told
> beforehand that this is the network to connect to.

Yes.

> 100. Do something for keys not shared across the network.

> I don't know which specs to use here, and don't see a strong use
> case. (I'd use this if different devices have different quotas of
> outbound traffic or stuff like that, which is a weak case).

This involves some kind of per-peer-pair key agreement algorithm. It makes sense to use EDHOC for that, but that will require some IEEE-level “IANA” action, and a document somewhere.

1 Like