]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - secure/usr.bin/openssl/man/rand.1
MFC: r359060, r359061, r359066
[FreeBSD/FreeBSD.git] / secure / usr.bin / openssl / man / rand.1
1 .\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.40)
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 >0, 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.
53 .\"
54 .\" Avoid warning from groff about undefined register 'F'.
55 .de IX
56 ..
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 1"
136 .TH RAND 1 "2020-03-17" "1.1.1e" "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"
142 openssl\-rand, rand \- generate pseudo\-random bytes
143 .SH "SYNOPSIS"
144 .IX Header "SYNOPSIS"
145 \&\fBopenssl rand\fR
146 [\fB\-help\fR]
147 [\fB\-out\fR \fIfile\fR]
148 [\fB\-rand file...\fR]
149 [\fB\-writerand file\fR]
150 [\fB\-base64\fR]
151 [\fB\-hex\fR]
152 \&\fInum\fR
153 .SH "DESCRIPTION"
154 .IX Header "DESCRIPTION"
155 This command generates \fInum\fR random bytes using a cryptographically
156 secure pseudo random number generator (\s-1CSPRNG\s0).
157 .PP
158 The random bytes are generated using the \fBRAND_bytes\fR\|(3) function,
159 which provides a security level of 256 bits, provided it managed to
160 seed itself successfully from a trusted operating system entropy source.
161 Otherwise, the command will fail with a nonzero error code.
162 For more details, see \fBRAND_bytes\fR\|(3), \s-1\fBRAND\s0\fR\|(7), and \s-1\fBRAND_DRBG\s0\fR\|(7).
163 .SH "OPTIONS"
164 .IX Header "OPTIONS"
165 .IP "\fB\-help\fR" 4
166 .IX Item "-help"
167 Print out a usage message.
168 .IP "\fB\-out file\fR" 4
169 .IX Item "-out file"
170 Write to \fIfile\fR instead of standard output.
171 .IP "\fB\-rand file...\fR" 4
172 .IX Item "-rand file..."
173 A file or files containing random data used to seed the random number
174 generator.
175 Multiple files can be specified separated by an OS-dependent character.
176 The separator is \fB;\fR for MS-Windows, \fB,\fR for OpenVMS, and \fB:\fR for
177 all others.
178 Explicitly specifying a seed file is in general not necessary, see the
179 \&\*(L"\s-1NOTES\*(R"\s0 section for more information.
180 .IP "[\fB\-writerand file\fR]" 4
181 .IX Item "[-writerand file]"
182 Writes random data to the specified \fIfile\fR upon exit.
183 This can be used with a subsequent \fB\-rand\fR flag.
184 .IP "\fB\-base64\fR" 4
185 .IX Item "-base64"
186 Perform base64 encoding on the output.
187 .IP "\fB\-hex\fR" 4
188 .IX Item "-hex"
189 Show the output as a hex string.
190 .SH "NOTES"
191 .IX Header "NOTES"
192 Prior to OpenSSL 1.1.1, it was common for applications to store information
193 about the state of the random-number generator in a file that was loaded
194 at startup and rewritten upon exit. On modern operating systems, this is
195 generally no longer necessary as OpenSSL will seed itself from a trusted
196 entropy source provided by the operating system. The \fB\-rand\fR  and
197 \&\fB\-writerand\fR  flags are still supported for special platforms or
198 circumstances that might require them.
199 .PP
200 It is generally an error to use the same seed file more than once and
201 every use of \fB\-rand\fR should be paired with \fB\-writerand\fR.
202 .SH "SEE ALSO"
203 .IX Header "SEE ALSO"
204 \&\fBRAND_bytes\fR\|(3),
205 \&\s-1\fBRAND\s0\fR\|(7),
206 \&\s-1\fBRAND_DRBG\s0\fR\|(7)
207 .SH "COPYRIGHT"
208 .IX Header "COPYRIGHT"
209 Copyright 2000\-2020 The OpenSSL Project Authors. All Rights Reserved.
210 .PP
211 Licensed under the OpenSSL license (the \*(L"License\*(R").  You may not use
212 this file except in compliance with the License.  You can obtain a copy
213 in the file \s-1LICENSE\s0 in the source distribution or at
214 <https://www.openssl.org/source/license.html>.