]> git.ipfire.org Git - thirdparty/openssl.git/blame - doc/crypto/RAND_bytes.pod
Remove SSLeay history, etc., from docs
[thirdparty/openssl.git] / doc / crypto / RAND_bytes.pod
CommitLineData
60b52453
UM
1=pod
2
3=head1 NAME
4
4d524e10 5RAND_bytes, RAND_pseudo_bytes - generate random data
60b52453
UM
6
7=head1 SYNOPSIS
8
9 #include <openssl/rand.h>
10
11 int RAND_bytes(unsigned char *buf, int num);
12
302d38e3
MC
13Deprecated:
14
60b52453
UM
15 int RAND_pseudo_bytes(unsigned char *buf, int num);
16
17=head1 DESCRIPTION
18
720b3598
BM
19RAND_bytes() puts B<num> cryptographically strong pseudo-random bytes
20into B<buf>. An error occurs if the PRNG has not been seeded with
21enough randomness to ensure an unpredictable byte sequence.
22
302d38e3 23RAND_pseudo_bytes() has been deprecated. Users should use RAND_bytes() instead.
720b3598
BM
24RAND_pseudo_bytes() puts B<num> pseudo-random bytes into B<buf>.
25Pseudo-random byte sequences generated by RAND_pseudo_bytes() will be
26unique if they are of sufficient length, but are not necessarily
27unpredictable. They can be used for non-cryptographic purposes and for
28certain purposes in cryptographic protocols, but usually not for key
29generation etc.
60b52453 30
7bbce697
LJ
31The contents of B<buf> is mixed into the entropy pool before retrieving
32the new pseudo-random bytes unless disabled at compile time (see FAQ).
33
60b52453
UM
34=head1 RETURN VALUES
35
36RAND_bytes() returns 1 on success, 0 otherwise. The error code can be
9b86974e 37obtained by L<ERR_get_error(3)>. RAND_pseudo_bytes() returns 1 if the
60b52453
UM
38bytes generated are cryptographically strong, 0 otherwise. Both
39functions return -1 if they are not supported by the current RAND
40method.
41
42=head1 SEE ALSO
43
9b86974e
RS
44L<rand(3)>, L<ERR_get_error(3)>,
45L<RAND_add(3)>
60b52453 46
60b52453 47=cut