Re: [PATCH v4 12/13] bluetooth/smp: ensure RNG is properly seeded before ECDH use

From: Marcel Holtmann
Date: Thu Jun 08 2017 - 13:05:44 EST


Hi Jason,

>> yes, there are plenty of commands needed before a controller becomes usable.
>
> That doesn't clearly address with precision what Ted was wondering.
> Specifically, the inquiry is: can you confirm with certainty whether
> or not all calls to get_random_bytes() in the bluetooth directory are
> *necessarily* going to come after a call to hci_power_on()?

on a powered down controller, you can not do any crypto. SMP is only during a connection and the RPAs are only generated when needed. So yes, doing this once in hci_power_on is plenty. However we might want to limit this to LE capable controllers since for BR/EDR only controllers this is not needed. For A2MP I need to check that we need the random numbers seeded there. However this hidden behind the high speed feature.

Regards

Marcel