Den mån 25 mars 2019 kl 13:40 skrev Alexandre Augusto <alexandre.a.giron@xxxxxxxxx>: > > Thanks Emil. > > The reason I asked is that I am researching ways to provide that > "minimum entropy required", and I was not able to find details about > the number generation. > > Best regards, > Alexandre Giron > > Em seg, 25 de mar de 2019 às 09:23, Emil Lenngren > <emil.lenngren@xxxxxxxxx> escreveu: > > > > Hi Alexandre, > > > > Den mån 25 mars 2019 kl 13:03 skrev Alexandre Augusto > > <alexandre.a.giron@xxxxxxxxx>: > > > > > > Hello, > > > > > > I would like to know, if possible, information about the bluez LE Rand > > > command (ocf 0x0018) at HCI code. How does it generate the number? Is > > > it vendor-specific (or secret)? > > > > According to the Bluetooth core specification, it shall be a "A pseudo > > random number generator compliant with [FIPS PUB 140-2] > > (http://csrc.nist.gov/publications/fips/fips140-2/fips1402annexc.pdf)" > > which shall be seeded "with at least the minimum entropy required by > > the pseudo random number generator". What algorithm each Bluetooth > > controller actually uses is therefore vendor specific. I guess most > > controllers will use some SHA-based or AES-based algorithm. Note that > > it is not the host (BlueZ) that generates the number; it just asks the > > controller to generate it for the host. > > > > /Emil I'm a aware of two different vendors. One vendor has a hardware-based random number generator based on thermal inner noise that is used to feed the CSPRNG (https://www.nordicsemi.com/DocLib/Content/Product_Spec/nRF52810/latest/rng). The other vendor uses the radio to gather enough random bits from the air. /Emil