zephyr/doc/reference
Jordan Yates fdeaa9103e random: deprecate XOROSHIRO_RANDOM_GENERATOR
Deprecate the xoroshiro128+ PRNG algorithm in favour of xoshiro128++.
xoshiro128++ is a drop-in replacement which is invisible from the user
perspective.

xoroshiro128+ is unsuitable because it is explicitly a floating-point
PRNG, not a general-purpose PRNG. This means that the lower 4 bits of
the output are actually linear, not random (from the designers,
https://prng.di.unimi.it/). This means 1/8th of the generated data is
not random.

Additionally, xoroshiro128+ is not a 32bit algorithm, it operates on
64bit numbers. For the vast majority of Zephyr devices, this makes the
PRNG slower than it needs to be. The replacement (xoshiro128++) is
32bit, with no loss in state space (still 128 bit).

Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
2021-08-05 11:24:44 +02:00
..
api drivers: can: mark the CAN API as unstable 2021-07-17 10:47:53 -04:00
audio doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
bluetooth Bluetooth: Mesh: Align capitalization for BT mesh 2021-07-13 11:23:54 -04:00
crypto doc: remove redundant breathe project 2021-05-20 20:04:51 +02:00
data_structures doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
devicetree doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
display doc: remove redundant breathe project 2021-05-20 20:04:51 +02:00
drivers doc: reference: drivers: fix struct member names in svg 2021-05-25 22:37:57 -04:00
edac doc: remove redundant breathe project 2021-05-20 20:04:51 +02:00
file_system doc: remove redundant breathe project 2021-05-20 20:04:51 +02:00
iterable_sections doc: reference: add a page for iterable sections 2021-08-03 19:02:43 -04:00
kernel doc: add a missing ':c:func:' prefix 2021-07-23 16:06:54 -04:00
libc doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
logging doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
memory_management doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
misc doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
modbus doc: remove redundant breathe project 2021-05-20 20:04:51 +02:00
networking doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
peripherals doc: reference: peripherals: Add eSPI interface to peripherals list 2021-07-21 18:21:29 -04:00
power_management pm: rename PM_DEVICE_STATE_SUSPEND to PM_DEVICE_STATE_SUSPENDED 2021-08-04 08:23:01 -04:00
random random: deprecate XOROSHIRO_RANDOM_GENERATOR 2021-08-05 11:24:44 +02:00
resource_management doc: remove redundant breathe project 2021-05-20 20:04:51 +02:00
settings doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
shell doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
storage doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
task_wdt doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
timing_functions doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
usb doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
usermode doc: reference: memory_domain: Update minimal libc 2021-07-20 13:32:36 -04:00
util doc: remove redundant breathe project 2021-05-20 20:04:51 +02:00
virtualization doc: use kconfig role and directive 2021-06-29 10:26:28 -04:00
index.rst doc: reference: add a page for iterable sections 2021-08-03 19:02:43 -04:00