]> git.ipfire.org Git - thirdparty/openssl.git/blame - doc/man1/openssl-ts.pod.in
openssl.pod: Move verification doc to new doc/man1/openssl-verification-options.pod
[thirdparty/openssl.git] / doc / man1 / openssl-ts.pod.in
CommitLineData
c7235be6 1=pod
625c781d 2{- OpenSSL::safe::output_do_not_edit_headers(); -}
9fcb9702 3
c7235be6
UM
4=head1 NAME
5
4b537191 6openssl-ts - Time Stamping Authority command
c7235be6
UM
7
8=head1 SYNOPSIS
9
65718c51
RS
10B<openssl> B<ts>
11B<-help>
12
c7235be6
UM
13B<openssl> B<ts>
14B<-query>
e8769719
RS
15[B<-config> I<configfile>]
16[B<-data> I<file_to_hash>]
17[B<-digest> I<digest_bytes>]
8dc57d76 18[B<-I<digest>>]
e8769719 19[B<-tspolicy> I<object_id>]
c7235be6
UM
20[B<-no_nonce>]
21[B<-cert>]
e8769719
RS
22[B<-in> I<request.tsq>]
23[B<-out> I<request.tsq>]
c7235be6 24[B<-text>]
9fcb9702 25{- $OpenSSL::safe::opt_r_synopsis -}
6bd4e3f2 26{- $OpenSSL::safe::opt_provider_synopsis -}
c7235be6
UM
27
28B<openssl> B<ts>
29B<-reply>
e8769719
RS
30[B<-config> I<configfile>]
31[B<-section> I<tsa_section>]
32[B<-queryfile> I<request.tsq>]
33[B<-passin> I<password_src>]
34[B<-signer> I<tsa_cert.pem>]
f91d003a 35[B<-inkey> I<filename>|I<uri>]
8dc57d76 36[B<-I<digest>>]
e8769719
RS
37[B<-chain> I<certs_file.pem>]
38[B<-tspolicy> I<object_id>]
39[B<-in> I<response.tsr>]
c7235be6 40[B<-token_in>]
e8769719 41[B<-out> I<response.tsr>]
c7235be6
UM
42[B<-token_out>]
43[B<-text>]
d55e4487 44{- $OpenSSL::safe::opt_engine_synopsis -}{- $OpenSSL::safe::opt_provider_synopsis -}
c7235be6
UM
45
46B<openssl> B<ts>
47B<-verify>
e8769719
RS
48[B<-data> I<file_to_hash>]
49[B<-digest> I<digest_bytes>]
50[B<-queryfile> I<request.tsq>]
51[B<-in> I<response.tsr>]
c7235be6 52[B<-token_in>]
2b264aee 53[B<-untrusted> I<file>]
03e16083
RS
54[B<-CAfile> I<file>]
55[B<-CApath> I<dir>]
56[B<-CAstore> I<uri>]
21d08b9e 57{- $OpenSSL::safe::opt_v_synopsis -}
6bd4e3f2 58{- $OpenSSL::safe::opt_provider_synopsis -}
c7235be6 59
9f3c076b 60=for openssl ifdef engine
1738c0ce 61
c7235be6
UM
62=head1 DESCRIPTION
63
35a810bb
RL
64This command is a basic Time Stamping Authority (TSA) client and
65server application as specified in RFC 3161 (Time-Stamp Protocol, TSP). A
c7235be6
UM
66TSA can be part of a PKI deployment and its role is to provide long
67term proof of the existence of a certain datum before a particular
68time. Here is a brief description of the protocol:
69
70=over 4
71
72=item 1.
73
74The TSA client computes a one-way hash value for a data file and sends
75the hash to the TSA.
76
77=item 2.
78
79The TSA attaches the current date and time to the received hash value,
9c0586d5 80signs them and sends the timestamp token back to the client. By
c7235be6
UM
81creating this token the TSA certifies the existence of the original
82data file at the time of response generation.
83
84=item 3.
85
9c0586d5 86The TSA client receives the timestamp token and verifies the
c7235be6
UM
87signature on it. It also checks if the token contains the same hash
88value that it had sent to the TSA.
89
90=back
91
490c8711
GN
92There is one DER encoded protocol data unit defined for transporting a
93timestamp request to the TSA and one for sending the timestamp response
35a810bb 94back to the client. This command has three main functions:
9c0586d5
RS
95creating a timestamp request based on a data file,
96creating a timestamp response based on a request, verifying if a
c7235be6
UM
97response corresponds to a particular request or a data file.
98
99There is no support for sending the requests/responses automatically
100over HTTP or TCP yet as suggested in RFC 3161. The users must send the
101requests either by ftp or e-mail.
102
103=head1 OPTIONS
104
65718c51
RS
105=over 4
106
107=item B<-help>
108
109Print out a usage message.
110
111=back
112
9c0586d5 113=head2 Timestamp Request generation
c7235be6 114
9c0586d5 115The B<-query> switch can be used for creating and printing a timestamp
c7235be6
UM
116request with the following options:
117
118=over 4
119
e8769719 120=item B<-config> I<configfile>
c7235be6 121
e9681f83
RS
122The configuration file to use.
123Optional; for a description of the default value,
124see L<openssl(1)/COMMAND SUMMARY>.
c7235be6 125
e8769719 126=item B<-data> I<file_to_hash>
c7235be6 127
9c0586d5 128The data file for which the timestamp request needs to be
c7235be6
UM
129created. stdin is the default if neither the B<-data> nor the B<-digest>
130parameter is specified. (Optional)
131
e8769719 132=item B<-digest> I<digest_bytes>
c7235be6
UM
133
134It is possible to specify the message imprint explicitly without the data
135file. The imprint must be specified in a hexadecimal format, two characters
136per byte, the bytes optionally separated by colons (e.g. 1A:F6:01:... or
4c583c36 1371AF601...). The number of bytes must match the message digest algorithm
c7235be6
UM
138in use. (Optional)
139
8dc57d76 140=item B<-I<digest>>
c7235be6 141
c03726ca 142The message digest to apply to the data file.
35a810bb 143Any digest supported by the L<openssl-dgst(1)> command can be used.
02f209bb 144The default is SHA-256. (Optional)
c7235be6 145
e8769719 146=item B<-tspolicy> I<object_id>
c7235be6
UM
147
148The policy that the client expects the TSA to use for creating the
9c0586d5 149timestamp token. Either the dotted OID notation or OID names defined
c7235be6
UM
150in the config file can be used. If no policy is requested the TSA will
151use its own default policy. (Optional)
152
153=item B<-no_nonce>
154
155No nonce is specified in the request if this option is
156given. Otherwise a 64 bit long pseudo-random none is
157included in the request. It is recommended to use nonce to
158protect against replay-attacks. (Optional)
159
160=item B<-cert>
161
162The TSA is expected to include its signing certificate in the
163response. (Optional)
164
e8769719 165=item B<-in> I<request.tsq>
c7235be6 166
9c0586d5 167This option specifies a previously created timestamp request in DER
c7235be6
UM
168format that will be printed into the output file. Useful when you need
169to examine the content of a request in human-readable
c7235be6
UM
170format. (Optional)
171
e8769719 172=item B<-out> I<request.tsq>
c7235be6
UM
173
174Name of the output file to which the request will be written. Default
175is stdout. (Optional)
176
177=item B<-text>
178
179If this option is specified the output is human-readable text format
180instead of DER. (Optional)
181
9fcb9702
RS
182{- $OpenSSL::safe::opt_r_item -}
183
c7235be6
UM
184=back
185
9c0586d5 186=head2 Timestamp Response generation
c7235be6 187
9c0586d5
RS
188A timestamp response (TimeStampResp) consists of a response status
189and the timestamp token itself (ContentInfo), if the token generation was
190successful. The B<-reply> command is for creating a timestamp
191response or timestamp token based on a request and printing the
c7235be6 192response/token in human-readable format. If B<-token_out> is not
9c0586d5
RS
193specified the output is always a timestamp response (TimeStampResp),
194otherwise it is a timestamp token (ContentInfo).
c7235be6
UM
195
196=over 4
197
e8769719 198=item B<-config> I<configfile>
c7235be6 199
e9681f83
RS
200The configuration file to use.
201Optional; for a description of the default value,
202see L<openssl(1)/COMMAND SUMMARY>.
e8769719 203See L</CONFIGURATION FILE OPTIONS> for configurable variables.
c7235be6 204
e8769719 205=item B<-section> I<tsa_section>
c7235be6 206
4c583c36 207The name of the config file section containing the settings for the
c7235be6 208response generation. If not specified the default TSA section is
e8769719 209used, see L</CONFIGURATION FILE OPTIONS> for details. (Optional)
c7235be6 210
e8769719 211=item B<-queryfile> I<request.tsq>
c7235be6 212
9c0586d5 213The name of the file containing a DER encoded timestamp request. (Optional)
c7235be6 214
e8769719 215=item B<-passin> I<password_src>
c7235be6
UM
216
217Specifies the password source for the private key of the TSA. See
e8769719 218description in L<openssl(1)>. (Optional)
c7235be6 219
e8769719 220=item B<-signer> I<tsa_cert.pem>
c7235be6
UM
221
222The signer certificate of the TSA in PEM format. The TSA signing
223certificate must have exactly one extended key usage assigned to it:
224timeStamping. The extended key usage must also be critical, otherwise
225the certificate is going to be refused. Overrides the B<signer_cert>
226variable of the config file. (Optional)
227
f91d003a 228=item B<-inkey> I<filename>|I<uri>
c7235be6
UM
229
230The signer private key of the TSA in PEM format. Overrides the
231B<signer_key> config file option. (Optional)
232
8dc57d76 233=item B<-I<digest>>
e20b4727
DSH
234
235Signing digest to use. Overrides the B<signer_digest> config file
29716a03 236option. (Mandatory unless specified in the config file)
e20b4727 237
e8769719 238=item B<-chain> I<certs_file.pem>
c7235be6
UM
239
240The collection of certificates in PEM format that will all
241be included in the response in addition to the signer certificate if
242the B<-cert> option was used for the request. This file is supposed to
243contain the certificate chain for the signer certificate from its
244issuer upwards. The B<-reply> command does not build a certificate
245chain automatically. (Optional)
246
e8769719 247=item B<-tspolicy> I<object_id>
c7235be6
UM
248
249The default policy to use for the response unless the client
250explicitly requires a particular TSA policy. The OID can be specified
251either in dotted notation or with its name. Overrides the
252B<default_policy> config file option. (Optional)
253
e8769719 254=item B<-in> I<response.tsr>
c7235be6 255
9c0586d5 256Specifies a previously created timestamp response or timestamp token
c7235be6
UM
257(if B<-token_in> is also specified) in DER format that will be written
258to the output file. This option does not require a request, it is
259useful e.g. when you need to examine the content of a response or
9c0586d5
RS
260token or you want to extract the timestamp token from a response. If
261the input is a token and the output is a timestamp response a default
c7235be6
UM
262'granted' status info is added to the token. (Optional)
263
264=item B<-token_in>
265
266This flag can be used together with the B<-in> option and indicates
9c0586d5
RS
267that the input is a DER encoded timestamp token (ContentInfo) instead
268of a timestamp response (TimeStampResp). (Optional)
c7235be6 269
e8769719 270=item B<-out> I<response.tsr>
c7235be6
UM
271
272The response is written to this file. The format and content of the
273file depends on other options (see B<-text>, B<-token_out>). The default is
274stdout. (Optional)
275
276=item B<-token_out>
277
9c0586d5 278The output is a timestamp token (ContentInfo) instead of timestamp
c7235be6
UM
279response (TimeStampResp). (Optional)
280
281=item B<-text>
282
283If this option is specified the output is human-readable text format
284instead of DER. (Optional)
285
018aaeb4 286{- $OpenSSL::safe::opt_engine_item -}
c7235be6 287
6bd4e3f2
P
288{- $OpenSSL::safe::opt_provider_item -}
289
c7235be6
UM
290=back
291
9c0586d5 292=head2 Timestamp Response verification
c7235be6 293
490c8711
GN
294The B<-verify> command is for verifying if a timestamp response or
295timestamp token is valid and matches a particular timestamp request or
c7235be6
UM
296data file. The B<-verify> command does not use the configuration file.
297
298=over 4
299
e8769719 300=item B<-data> I<file_to_hash>
c7235be6
UM
301
302The response or token must be verified against file_to_hash. The file
4c583c36 303is hashed with the message digest algorithm specified in the token.
c7235be6
UM
304The B<-digest> and B<-queryfile> options must not be specified with this one.
305(Optional)
306
e8769719 307=item B<-digest> I<digest_bytes>
c7235be6
UM
308
309The response or token must be verified against the message digest specified
310with this option. The number of bytes must match the message digest algorithm
311specified in the token. The B<-data> and B<-queryfile> options must not be
312specified with this one. (Optional)
313
e8769719 314=item B<-queryfile> I<request.tsq>
c7235be6 315
9c0586d5 316The original timestamp request in DER format. The B<-data> and B<-digest>
c7235be6
UM
317options must not be specified with this one. (Optional)
318
e8769719 319=item B<-in> I<response.tsr>
c7235be6 320
9c0586d5 321The timestamp response that needs to be verified in DER format. (Mandatory)
c7235be6
UM
322
323=item B<-token_in>
324
325This flag can be used together with the B<-in> option and indicates
9c0586d5
RS
326that the input is a DER encoded timestamp token (ContentInfo) instead
327of a timestamp response (TimeStampResp). (Optional)
c7235be6 328
e8769719 329=item B<-untrusted> I<cert_file.pem>
c7235be6
UM
330
331Set of additional untrusted certificates in PEM format which may be
332needed when building the certificate chain for the TSA's signing
333certificate. This file must contain the TSA signing certificate and
334all intermediate CA certificates unless the response includes them.
335(Optional)
336
03e16083 337=item B<-CAfile> I<file>, B<-CApath> I<dir>, B<-CAstore> I<uri>
21d08b9e 338
03e16083 339See L<openssl(1)/Trusted Certificate Options> for details.
21d08b9e
RS
340At least one of B<-CApath>, B<-CAfile> or B<-CAstore> must be specified.
341
342{- $OpenSSL::safe::opt_v_item -}
343
344Any verification errors cause the command to exit.
08538fc0 345
c7235be6
UM
346=back
347
348=head1 CONFIGURATION FILE OPTIONS
349
e9681f83
RS
350The B<-query> and B<-reply> commands make use of a configuration file.
351See L<config(5)>
c7235be6
UM
352for a general description of the syntax of the config file. The
353B<-query> command uses only the symbolic OID names section
354and it can work without it. However, the B<-reply> command needs the
355config file for its operation.
356
357When there is a command line switch equivalent of a variable the
358switch always overrides the settings in the config file.
359
360=over 4
361
4c583c36 362=item B<tsa> section, B<default_tsa>
c7235be6
UM
363
364This is the main section and it specifies the name of another section
365that contains all the options for the B<-reply> command. This default
2b4ffc65 366section can be overridden with the B<-section> command line switch. (Optional)
c7235be6
UM
367
368=item B<oid_file>
369
23f39931
DMSP
370This specifies a file containing additional B<OBJECT IDENTIFIERS>.
371Each line of the file should consist of the numerical form of the
6f72b210 372object identifier followed by whitespace then the short name followed
373by whitespace and finally the long name. (Optional)
c7235be6
UM
374
375=item B<oid_section>
376
23f39931
DMSP
377This specifies a section in the configuration file containing extra
378object identifiers. Each line should consist of the short name of the
379object identifier followed by B<=> and the numerical form. The short
380and long names are the same when this option is used. (Optional)
c7235be6
UM
381
382=item B<RANDFILE>
383
23f39931
DMSP
384At startup the specified file is loaded into the random number generator,
385and at exit 256 bytes will be written to it. (Note: Using a RANDFILE is
386not necessary anymore, see the L</HISTORY> section.
c7235be6
UM
387
388=item B<serial>
389
390The name of the file containing the hexadecimal serial number of the
9c0586d5 391last timestamp response created. This number is incremented by 1 for
28f7e60d 392each response. If the file does not exist at the time of response
c7235be6
UM
393generation a new file is created with serial number 1. (Mandatory)
394
395=item B<crypto_device>
396
4c583c36 397Specifies the OpenSSL engine that will be set as the default for
9c0586d5 398all available algorithms. The default value is built-in, you can specify
c7235be6
UM
399any other engines supported by OpenSSL (e.g. use chil for the NCipher HSM).
400(Optional)
401
402=item B<signer_cert>
403
404TSA signing certificate in PEM format. The same as the B<-signer>
405command line option. (Optional)
406
407=item B<certs>
408
409A file containing a set of PEM encoded certificates that need to be
410included in the response. The same as the B<-chain> command line
411option. (Optional)
412
413=item B<signer_key>
414
415The private key of the TSA in PEM format. The same as the B<-inkey>
416command line option. (Optional)
417
e20b4727
DSH
418=item B<signer_digest>
419
420Signing digest to use. The same as the
8dc57d76 421B<-I<digest>> command line option. (Mandatory unless specified on the command
29716a03 422line)
e20b4727 423
c7235be6
UM
424=item B<default_policy>
425
426The default policy to use when the request does not mandate any
08538fc0 427policy. The same as the B<-tspolicy> command line option. (Optional)
c7235be6
UM
428
429=item B<other_policies>
430
431Comma separated list of policies that are also acceptable by the TSA
432and used only if the request explicitly specifies one of them. (Optional)
433
434=item B<digests>
435
436The list of message digest algorithms that the TSA accepts. At least
437one algorithm must be specified. (Mandatory)
438
439=item B<accuracy>
440
441The accuracy of the time source of the TSA in seconds, milliseconds
442and microseconds. E.g. secs:1, millisecs:500, microsecs:100. If any of
443the components is missing zero is assumed for that field. (Optional)
444
445=item B<clock_precision_digits>
446
4c583c36 447Specifies the maximum number of digits, which represent the fraction of
9c0586d5 448seconds, that need to be included in the time field. The trailing zeros
c7235be6
UM
449must be removed from the time, so there might actually be fewer digits,
450or no fraction of seconds at all. Supported only on UNIX platforms.
451The maximum value is 6, default is 0.
452(Optional)
453
454=item B<ordering>
455
456If this option is yes the responses generated by this TSA can always
457be ordered, even if the time difference between two responses is less
458than the sum of their accuracies. Default is no. (Optional)
459
460=item B<tsa_name>
461
462Set this option to yes if the subject name of the TSA must be included in
463the TSA name field of the response. Default is no. (Optional)
464
465=item B<ess_cert_id_chain>
466
467The SignedData objects created by the TSA always contain the
468certificate identifier of the signing certificate in a signed
469attribute (see RFC 2634, Enhanced Security Services). If this option
470is set to yes and either the B<certs> variable or the B<-chain> option
471is specified then the certificate identifiers of the chain will also
472be included in the SigningCertificate signed attribute. If this
473variable is set to no, only the signing certificate identifier is
474included. Default is no. (Optional)
475
f0ef20bf
MK
476=item B<ess_cert_id_alg>
477
478This option specifies the hash function to be used to calculate the TSA's
a6dfa188 479public key certificate identifier. Default is sha256. (Optional)
f0ef20bf 480
c7235be6
UM
481=back
482
c7235be6
UM
483=head1 EXAMPLES
484
485All the examples below presume that B<OPENSSL_CONF> is set to a proper
4c583c36 486configuration file, e.g. the example configuration file
1948394d 487F<openssl/apps/openssl.cnf> will do.
c7235be6 488
9c0586d5 489=head2 Timestamp Request
c7235be6 490
1948394d 491To create a timestamp request for F<design1.txt> with SHA-256 digest,
02f209bb
TM
492without nonce and policy, and without requirement for a certificate
493in the response:
c7235be6
UM
494
495 openssl ts -query -data design1.txt -no_nonce \
1bc74519 496 -out design1.tsq
c7235be6 497
9c0586d5 498To create a similar timestamp request with specifying the message imprint
c7235be6
UM
499explicitly:
500
501 openssl ts -query -digest b7e5d3f93198b38379852f2c04e78d73abdd0f4b \
1bc74519 502 -no_nonce -out design1.tsq
c7235be6
UM
503
504To print the content of the previous request in human readable format:
505
506 openssl ts -query -in design1.tsq -text
507
9c0586d5 508To create a timestamp request which includes the SHA-512 digest
1948394d 509of F<design2.txt>, requests the signer certificate and nonce, and
c7235be6
UM
510specifies a policy id (assuming the tsa_policy1 name is defined in the
511OID section of the config file):
512
a6dfa188 513 openssl ts -query -data design2.txt -sha512 \
1bc74519 514 -tspolicy tsa_policy1 -cert -out design2.tsq
c7235be6 515
9c0586d5 516=head2 Timestamp Response
c7235be6
UM
517
518Before generating a response a signing certificate must be created for
519the TSA that contains the B<timeStamping> critical extended key usage extension
dfee8626
RS
520without any other key usage extensions. You can add this line to the
521user certificate section of the config file to generate a proper certificate;
522
523 extendedKeyUsage = critical,timeStamping
524
8bc93d2f
RL
525See L<openssl-req(1)>, L<openssl-ca(1)>, and L<openssl-x509(1)> for
526instructions. The examples below assume that F<cacert.pem> contains the
527certificate of the CA, F<tsacert.pem> is the signing certificate issued
528by F<cacert.pem> and F<tsakey.pem> is the private key of the TSA.
c7235be6 529
9c0586d5 530To create a timestamp response for a request:
c7235be6
UM
531
532 openssl ts -reply -queryfile design1.tsq -inkey tsakey.pem \
1bc74519 533 -signer tsacert.pem -out design1.tsr
c7235be6
UM
534
535If you want to use the settings in the config file you could just write:
536
537 openssl ts -reply -queryfile design1.tsq -out design1.tsr
538
9c0586d5 539To print a timestamp reply to stdout in human readable format:
c7235be6
UM
540
541 openssl ts -reply -in design1.tsr -text
542
9c0586d5 543To create a timestamp token instead of timestamp response:
c7235be6
UM
544
545 openssl ts -reply -queryfile design1.tsq -out design1_token.der -token_out
546
9c0586d5 547To print a timestamp token to stdout in human readable format:
c7235be6
UM
548
549 openssl ts -reply -in design1_token.der -token_in -text -token_out
550
9c0586d5 551To extract the timestamp token from a response:
c7235be6
UM
552
553 openssl ts -reply -in design1.tsr -out design1_token.der -token_out
554
9c0586d5 555To add 'granted' status info to a timestamp token thereby creating a
c7235be6
UM
556valid response:
557
558 openssl ts -reply -in design1_token.der -token_in -out design1.tsr
559
9c0586d5 560=head2 Timestamp Verification
c7235be6 561
9c0586d5 562To verify a timestamp reply against a request:
c7235be6
UM
563
564 openssl ts -verify -queryfile design1.tsq -in design1.tsr \
1bc74519 565 -CAfile cacert.pem -untrusted tsacert.pem
c7235be6 566
9c0586d5 567To verify a timestamp reply that includes the certificate chain:
c7235be6
UM
568
569 openssl ts -verify -queryfile design2.tsq -in design2.tsr \
1bc74519 570 -CAfile cacert.pem
c7235be6 571
9c0586d5 572To verify a timestamp token against the original data file:
c7235be6 573 openssl ts -verify -data design2.txt -in design2.tsr \
1bc74519 574 -CAfile cacert.pem
c7235be6 575
9c0586d5 576To verify a timestamp token against a message imprint:
c7235be6 577 openssl ts -verify -digest b7e5d3f93198b38379852f2c04e78d73abdd0f4b \
1bc74519 578 -in design2.tsr -CAfile cacert.pem
c7235be6
UM
579
580You could also look at the 'test' directory for more examples.
581
582=head1 BUGS
583
fadb57e5 584=for openssl foreign manual procmail(1) perl(1)
b275f3b6 585
2f61bc2e
RS
586=over 2
587
588=item *
c7235be6 589
9c0586d5 590No support for timestamps over SMTP, though it is quite easy
9b86974e
RS
591to implement an automatic e-mail based TSA with L<procmail(1)>
592and L<perl(1)>. HTTP server support is provided in the form of
c7235be6 593a separate apache module. HTTP client support is provided by
9b86974e 594L<tsget(1)>. Pure TCP/IP protocol is not supported.
c7235be6 595
2f61bc2e
RS
596=item *
597
598The file containing the last serial number of the TSA is not
c7235be6 599locked when being read or written. This is a problem if more than one
9c0586d5 600instance of L<openssl(1)> is trying to create a timestamp
c7235be6
UM
601response at the same time. This is not an issue when using the apache
602server module, it does proper locking.
603
2f61bc2e
RS
604=item *
605
606Look for the FIXME word in the source files.
607
608=item *
609
610The source code should really be reviewed by somebody else, too.
c7235be6 611
2f61bc2e 612=item *
c7235be6 613
2f61bc2e 614More testing is needed, I have done only some basic tests (see
c7235be6
UM
615test/testtsa).
616
617=back
618
23f39931
DMSP
619=head1 HISTORY
620
621OpenSSL 1.1.1 introduced a new random generator (CSPRNG) with an improved
622seeding mechanism. The new seeding mechanism makes it unnecessary to
623define a RANDFILE for saving and restoring randomness. This option is
624retained mainly for compatibility reasons.
625
0f221d9c
P
626The B<-engine> option was deprecated in OpenSSL 3.0.
627
c7235be6
UM
628=head1 SEE ALSO
629
b6b66573 630L<openssl(1)>,
fadb57e5 631L<tsget(1)>,
b6b66573
DMSP
632L<openssl-req(1)>,
633L<openssl-x509(1)>,
634L<openssl-ca(1)>,
635L<openssl-genrsa(1)>,
fd3397fc
RL
636L<config(5)>,
637L<ossl_store-file(7)>
c7235be6 638
e2f92610
RS
639=head1 COPYRIGHT
640
33388b44 641Copyright 2006-2020 The OpenSSL Project Authors. All Rights Reserved.
e2f92610 642
449040b4 643Licensed under the Apache License 2.0 (the "License"). You may not use
e2f92610
RS
644this file except in compliance with the License. You can obtain a copy
645in the file LICENSE in the source distribution or at
646L<https://www.openssl.org/source/license.html>.
647
648=cut