diff options
Diffstat (limited to 'src/lib/libcrypto/doc/RAND_bytes.pod')
| -rw-r--r-- | src/lib/libcrypto/doc/RAND_bytes.pod | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/src/lib/libcrypto/doc/RAND_bytes.pod b/src/lib/libcrypto/doc/RAND_bytes.pod new file mode 100644 index 0000000000..1a9b91e281 --- /dev/null +++ b/src/lib/libcrypto/doc/RAND_bytes.pod | |||
| @@ -0,0 +1,50 @@ | |||
| 1 | =pod | ||
| 2 | |||
| 3 | =head1 NAME | ||
| 4 | |||
| 5 | RAND_bytes, RAND_pseudo_bytes - generate random data | ||
| 6 | |||
| 7 | =head1 SYNOPSIS | ||
| 8 | |||
| 9 | #include <openssl/rand.h> | ||
| 10 | |||
| 11 | int RAND_bytes(unsigned char *buf, int num); | ||
| 12 | |||
| 13 | int RAND_pseudo_bytes(unsigned char *buf, int num); | ||
| 14 | |||
| 15 | =head1 DESCRIPTION | ||
| 16 | |||
| 17 | RAND_bytes() puts B<num> cryptographically strong pseudo-random bytes | ||
| 18 | into B<buf>. An error occurs if the PRNG has not been seeded with | ||
| 19 | enough randomness to ensure an unpredictable byte sequence. | ||
| 20 | |||
| 21 | RAND_pseudo_bytes() puts B<num> pseudo-random bytes into B<buf>. | ||
| 22 | Pseudo-random byte sequences generated by RAND_pseudo_bytes() will be | ||
| 23 | unique if they are of sufficient length, but are not necessarily | ||
| 24 | unpredictable. They can be used for non-cryptographic purposes and for | ||
| 25 | certain purposes in cryptographic protocols, but usually not for key | ||
| 26 | generation etc. | ||
| 27 | |||
| 28 | The contents of B<buf> is mixed into the entropy pool before retrieving | ||
| 29 | the new pseudo-random bytes unless disabled at compile time (see FAQ). | ||
| 30 | |||
| 31 | =head1 RETURN VALUES | ||
| 32 | |||
| 33 | RAND_bytes() returns 1 on success, 0 otherwise. The error code can be | ||
| 34 | obtained by L<ERR_get_error(3)|ERR_get_error(3)>. RAND_pseudo_bytes() returns 1 if the | ||
| 35 | bytes generated are cryptographically strong, 0 otherwise. Both | ||
| 36 | functions return -1 if they are not supported by the current RAND | ||
| 37 | method. | ||
| 38 | |||
| 39 | =head1 SEE ALSO | ||
| 40 | |||
| 41 | L<rand(3)|rand(3)>, L<ERR_get_error(3)|ERR_get_error(3)>, | ||
| 42 | L<RAND_add(3)|RAND_add(3)> | ||
| 43 | |||
| 44 | =head1 HISTORY | ||
| 45 | |||
| 46 | RAND_bytes() is available in all versions of SSLeay and OpenSSL. It | ||
| 47 | has a return value since OpenSSL 0.9.5. RAND_pseudo_bytes() was added | ||
| 48 | in OpenSSL 0.9.5. | ||
| 49 | |||
| 50 | =cut | ||
