source: trunk/minix/servers/inet/generic/rand256.c@ 9

Last change on this file since 9 was 9, checked in by Mattia Monga, 13 years ago

Minix 3.1.2a

File size: 605 bytes
Line 
1/*
2rand256.c
3
4Created: Oct 2000 by Philip Homburg <philip@f-mnx.phicoh.com>
5
6Generate 256-bit random numbers
7*/
8
9#include <sha2.h>
10#include "inet.h"
11#include "rand256.h"
12
13PRIVATE u32_t base_bits[8];
14
15PUBLIC void init_rand256(bits)
16u8_t bits[32];
17{
18 memcpy(base_bits, bits, sizeof(base_bits));
19}
20
21PUBLIC void rand256(bits)
22u8_t bits[32];
23{
24 u32_t a;
25 SHA256_CTX ctx;
26
27 a= ++base_bits[0];
28 if (a == 0)
29 base_bits[1]++;
30 SHA256_Init(&ctx);
31 SHA256_Update(&ctx, (unsigned char *)base_bits, sizeof(base_bits));
32 SHA256_Final(bits, &ctx);
33}
34
35/*
36 * $PchId: rand256.c,v 1.1 2005/06/28 14:13:43 philip Exp $
37 */
Note: See TracBrowser for help on using the repository browser.