1.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.28)
|
1.\" Automatically generated by Pod::Man 2.27 (Pod::Simple 3.28) |
2.\" 3.\" Standard preamble: 4.\" ======================================================================== 5.de Sp \" Vertical space (when we can't use .PP) 6.if t .sp .5v 7.if n .sp 8.. 9.de Vb \" Begin verbatim text 10.ft CW 11.nf 12.ne \\$1 13.. 14.de Ve \" End verbatim text 15.ft R 16.fi 17.. 18.\" Set up some character translations and predefined strings. \*(-- will 19.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left 20.\" double quote, and \*(R" will give a right double quote. \*(C+ will 21.\" give a nicer C++. Capital omega is used to do unbreakable dashes and 22.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, 23.\" nothing in troff, for use with C<>. 24.tr \(*W- 25.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' 26.ie n \{\ 27. ds -- \(*W- 28. ds PI pi 29. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch 30. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch 31. ds L" "" 32. ds R" "" 33. ds C` "" 34. ds C' "" 35'br\} 36.el\{\ 37. ds -- \|\(em\| 38. ds PI \(*p 39. ds L" `` 40. ds R" ''
|
41. ds C` 42. ds C' |
43'br\} 44.\" 45.\" Escape single quotes in literal strings from groff's Unicode transform. 46.ie \n(.g .ds Aq \(aq 47.el .ds Aq ' 48.\" 49.\" If the F register is turned on, we'll generate index entries on stderr for 50.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index 51.\" entries marked with X<> in POD. Of course, you'll have to process the 52.\" output yourself in some meaningful fashion.
|
51.ie \nF \{\
52. de IX
53. tm Index:\\$1\t\\n%\t"\\$2"
|
53.\" 54.\" Avoid warning from groff about undefined register 'F'. 55.de IX |
56..
|
55. nr % 0
56. rr F
57.\}
58.el \{\
59. de IX
|
57.nr rF 0 58.if \n(.g .if rF .nr rF 1 59.if (\n(rF:(\n(.g==0)) \{ 60. if \nF \{ 61. de IX 62. tm Index:\\$1\t\\n%\t"\\$2" |
63..
|
64. if !\nF==2 \{ 65. nr % 0 66. nr F 2 67. \} 68. \} |
69.\}
|
70.rr rF |
71.\" 72.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). 73.\" Fear. Run. Save yourself. No user-serviceable parts. 74. \" fudge factors for nroff and troff 75.if n \{\ 76. ds #H 0 77. ds #V .8m 78. ds #F .3m 79. ds #[ \f1 80. ds #] \fP 81.\} 82.if t \{\ 83. ds #H ((1u-(\\\\n(.fu%2u))*.13m) 84. ds #V .6m 85. ds #F 0 86. ds #[ \& 87. ds #] \& 88.\} 89. \" simple accents for nroff and troff 90.if n \{\ 91. ds ' \& 92. ds ` \& 93. ds ^ \& 94. ds , \& 95. ds ~ ~ 96. ds / 97.\} 98.if t \{\ 99. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" 100. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' 101. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' 102. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' 103. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' 104. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' 105.\} 106. \" troff and (daisy-wheel) nroff accents 107.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' 108.ds 8 \h'\*(#H'\(*b\h'-\*(#H' 109.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] 110.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' 111.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' 112.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] 113.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] 114.ds ae a\h'-(\w'a'u*4/10)'e 115.ds Ae A\h'-(\w'A'u*4/10)'E 116. \" corrections for vroff 117.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' 118.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' 119. \" for low resolution devices (crt and lpr) 120.if \n(.H>23 .if \n(.V>19 \ 121\{\ 122. ds : e 123. ds 8 ss 124. ds o a 125. ds d- d\h'-1'\(ga 126. ds D- D\h'-1'\(hy 127. ds th \o'bp' 128. ds Th \o'LP' 129. ds ae ae 130. ds Ae AE 131.\} 132.rm #[ #] #H #V #F C 133.\" ======================================================================== 134.\" 135.IX Title "RAND_bytes 3"
|
127.TH RAND_bytes 3 "2014-10-15" "1.0.1j" "OpenSSL"
|
136.TH RAND_bytes 3 "2015-01-15" "1.0.1l" "OpenSSL" |
137.\" For nroff, turn off justification. Always turn off hyphenation; it makes 138.\" way too many mistakes in technical documents. 139.if n .ad l 140.nh 141.SH "NAME" 142RAND_bytes, RAND_pseudo_bytes \- generate random data 143.SH "SYNOPSIS" 144.IX Header "SYNOPSIS" 145.Vb 1 146\& #include <openssl/rand.h> 147\& 148\& int RAND_bytes(unsigned char *buf, int num); 149\& 150\& int RAND_pseudo_bytes(unsigned char *buf, int num); 151.Ve 152.SH "DESCRIPTION" 153.IX Header "DESCRIPTION" 154\&\fIRAND_bytes()\fR puts \fBnum\fR cryptographically strong pseudo-random bytes 155into \fBbuf\fR. An error occurs if the \s-1PRNG\s0 has not been seeded with 156enough randomness to ensure an unpredictable byte sequence. 157.PP 158\&\fIRAND_pseudo_bytes()\fR puts \fBnum\fR pseudo-random bytes into \fBbuf\fR. 159Pseudo-random byte sequences generated by \fIRAND_pseudo_bytes()\fR will be 160unique if they are of sufficient length, but are not necessarily 161unpredictable. They can be used for non-cryptographic purposes and for 162certain purposes in cryptographic protocols, but usually not for key 163generation etc. 164.PP 165The contents of \fBbuf\fR is mixed into the entropy pool before retrieving 166the new pseudo-random bytes unless disabled at compile time (see \s-1FAQ\s0). 167.SH "RETURN VALUES" 168.IX Header "RETURN VALUES" 169\&\fIRAND_bytes()\fR returns 1 on success, 0 otherwise. The error code can be 170obtained by \fIERR_get_error\fR\|(3). \fIRAND_pseudo_bytes()\fR returns 1 if the 171bytes generated are cryptographically strong, 0 otherwise. Both 172functions return \-1 if they are not supported by the current \s-1RAND\s0 173method. 174.SH "SEE ALSO" 175.IX Header "SEE ALSO" 176\&\fIrand\fR\|(3), \fIERR_get_error\fR\|(3), 177\&\fIRAND_add\fR\|(3) 178.SH "HISTORY" 179.IX Header "HISTORY" 180\&\fIRAND_bytes()\fR is available in all versions of SSLeay and OpenSSL. It 181has a return value since OpenSSL 0.9.5. \fIRAND_pseudo_bytes()\fR was added 182in OpenSSL 0.9.5.
|