From eb62ac6ff1f87f52c9c0b044188c5e18f9bdf9e5 Mon Sep 17 00:00:00 2001 From: PeterKietzmann Date: Mon, 11 May 2020 10:38:44 +0200 Subject: [PATCH] sys/random/sha1prng: make random_init use init_by_array --- sys/random/sha1prng.c | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/sys/random/sha1prng.c b/sys/random/sha1prng.c index 282b1b3ce5..6e7156715f 100644 --- a/sys/random/sha1prng.c +++ b/sys/random/sha1prng.c @@ -106,15 +106,6 @@ void _random_bytes(uint8_t *bytes, size_t size) /* TODO: use with global API */ } } -void random_init(uint32_t seed) -{ - sha1_init(&ctx); - sha1_update(&ctx, (void *)&seed, sizeof(uint32_t)); - sha1_final(&ctx, digestdata); - - /* copy seeded SHA1 state to PRNG state */ - memcpy(prng_state, &ctx.state, 20); -} void random_init_by_array(uint32_t init_key[], int key_length) { sha1_init(&ctx); @@ -125,6 +116,11 @@ void random_init_by_array(uint32_t init_key[], int key_length) memcpy(prng_state, &ctx.state, STATE_SIZE); } +void random_init(uint32_t seed) +{ + random_init_by_array((uint32_t *)&seed, sizeof(seed)); +} + uint32_t random_uint32(void) { uint32_t ret;