1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00

sys/random: improve documentation on SHA based generator

This commit is contained in:
PeterKietzmann 2020-07-09 14:48:53 +02:00
parent 5a13d00b65
commit 233fbcdb38
2 changed files with 34 additions and 6 deletions

32
sys/random/doc.txt Normal file
View File

@ -0,0 +1,32 @@
/*
* Copyright (C) 2020 HAW Hamburg
*
* This file is subject to the terms and conditions of the GNU Lesser
* General Public License v2.1. See the file LICENSE in the top level
* directory for more details.
*/
/**
* @defgroup sys_random_shaxprng SHAX random number generator
* @ingroup sys_random
*
* @brief SHA based random number generator implementation(CSPRNG).
*
* The generator bases on an internal structure that has been presented in
* FIPS 186-1 Appendix 3.2, which is why it is sometimes named as "DSA PRNG" or
* "FIPS PRNG" in the literature. Outputs are generated by hashing the internal
* generator state, and the feedback path applies a linear transformation to the
* state which is hashed again to create further next outputs. Thus, a potential
* state compromise may allow recovering preceding generator outputs, because
* linear operations in the feedback path are invertible. Thereby, this generator
* gets along with a single hash computation per block which makes the generator
* lightweight in comparison to more advanced CSPRNGs.
*
* This implementation can be run with the SHA-1 or SHA-256 hash function
* for creating outputs. SHA-1 has been deprecated by NIST in 2011 due to
* a collision- and potential brute-force attack. Thus, SHA-256 can be used as
* an alternative. To select one or the other, export
* `USEMODULE += prng_sha1prng` or
* `USEMODULE += prng_sha256prng`
* during compilation.
*/

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2018 HAW Hamburg
* Copyright (C) 2018, 2020 HAW Hamburg
*
* This file is subject to the terms and conditions of the GNU Lesser
* General Public License v2.1. See the file LICENSE in the top level
@ -10,14 +10,10 @@
*/
/**
* @ingroup sys_random
* @ingroup sys_random_shaxprng
* @{
* @file
*
* @brief SHA based PRNG random number generator implementation
*
* BLABLA
*
* @author Peter Kietzmann <peter.kietzmann@haw-hamburg.de>
* @}
*/