summaryrefslogtreecommitdiffstats
path: root/doc/apps/rsa.pod
diff options
context:
space:
mode:
authorDr. Stephen Henson <steve@openssl.org>2000-01-21 02:17:04 +0000
committerDr. Stephen Henson <steve@openssl.org>2000-01-21 02:17:04 +0000
commitdd46d58f65bd3a342bbcd8586680942be643fc7d (patch)
treef573df02bef40f2fcc2f81b0aa89f37b0f40819f /doc/apps/rsa.pod
parente7f97e2d22e386df60c8da63277727a931bf22b7 (diff)
Change the 'man' directory to 'apps'. Yes I wish cvs
could rename too :-(
Diffstat (limited to 'doc/apps/rsa.pod')
-rw-r--r--doc/apps/rsa.pod160
1 files changed, 160 insertions, 0 deletions
diff --git a/doc/apps/rsa.pod b/doc/apps/rsa.pod
new file mode 100644
index 0000000000..05c64eb470
--- /dev/null
+++ b/doc/apps/rsa.pod
@@ -0,0 +1,160 @@
+
+=pod
+
+=head1 NAME
+
+rsa - RSA key processing tool
+
+=head1 SYNOPSIS
+
+B<openssl> B<rsa>
+[B<-inform PEM|NET|DER>]
+[B<-outform PEM|NET|DER>]
+[B<-in filename>]
+[B<-passin password>]
+[B<-envpassin var>]
+[B<-out filename>]
+[B<-passout password>]
+[B<-envpassout var>]
+[B<-des>]
+[B<-des3>]
+[B<-idea>]
+[B<-text>]
+[B<-noout>]
+[B<-modulus>]
+[B<-check>]
+[B<-pubin>]
+[B<-pubout>]
+
+=head1 DESCRIPTION
+
+The B<rsa> command processes RSA keys. They can be converted between various
+forms and their components printed out. B<Note> this command uses the
+traditional SSLeay compatible format for private key encryption: newer
+applications should use the more secure PKCS#8 format using the B<pkcs8>
+utility.
+
+=head1 COMMAND OPTIONS
+
+=over 4
+
+=item B<-inform DER|NET|PEM>
+
+This specifies the input format. The B<DER> option uses an ASN1 DER encoded
+form compatible with the PKCS#1 RSAPrivateKey or SubjectPublicKeyInfo format.
+The B<PEM> form is the default format: it consists of the B<DER> format base64
+encoded with additional header and footer lines. On input PKCS#8 format private
+keys are also accepted. The B<NET> form is a format compatible with older Netscape
+servers and MS IIS, this uses unsalted RC4 for its encryption. It is not very
+secure and so should only be used when necessary.
+
+=item B<-outform DER|NET|PEM>
+
+This specifies the output format, the options have the same meaning as the
+B<-inform> option.
+
+=item B<-in filename>
+
+This specifies the input filename to read a key from or standard input if this
+option is not specified. If the key is encrypted a pass phrase will be
+prompted for.
+
+=item B<-passin password>
+
+the input file password. Since certain utilities like "ps" make the command line
+visible this option should be used with caution.
+
+=item B<-envpassin var>
+
+read the input file password from the environment variable B<var>.
+
+=item B<-out filename>
+
+This specifies the output filename to write a key to or standard output by
+is not specified. If any encryption options are set then a pass phrase will be
+prompted for. The output filename should B<not> be the same as the input
+filename.
+
+=item B<-passout password>
+
+the output file password. Since certain utilities like "ps" make the command line
+visible this option should be used with caution.
+
+=item B<-envpassout var>
+
+read the output file password from the environment variable B<var>.
+
+=item B<-des|-des3|-idea>
+
+These options encrypt the private key with the DES, triple DES, or the
+IDEA ciphers respectively before outputting it. A pass phrase is prompted for.
+If none of these options is specified the key is written in plain text. This
+means that using the B<rsa> utility to read in an encrypted key with no
+encryption option can be used to remove the pass phrase from a key, or by
+setting the encryption options it can be use to add or change the pass phrase.
+These options can only be used with PEM format output files.
+
+=item B<-text>
+
+prints out the various public or private key components in
+plain text in addition to the encoded version.
+
+=item B<-noout>
+
+this option prevents output of the encoded version of the key.
+
+=item B<-modulus>
+
+this option prints out the value of the modulus of the key.
+
+=item B<-check>
+
+this option checks the consistency of an RSA private key.
+
+=item B<-pubin>
+
+by default a private key is input file with this option a public key is input
+instead.
+
+=item B<-pubout>
+
+by default a private key is output with this option a public
+key will be output instead. This option is automatically set if the input is
+a public key.
+
+=back
+
+=head1 NOTES
+
+The PEM private key format uses the header and footer lines:
+
+ -----BEGIN RSA PRIVATE KEY-----
+ -----END RSA PRIVATE KEY-----
+
+=head1 EXAMPLES
+
+To remove the pass phrase on an RSA private key:
+
+C<openssl rsa -in key.pem -out keyout.pem>
+
+To encrypt a private key using triple DES:
+
+C<openssl rsa -in key.pem -des3 -out keyout.pem>
+
+To convert a private key from PEM to DER format:
+
+C<openssl rsa -in key.pem -outform DER -out keyout.der>
+
+To print out the components of a private key to standard output:
+
+C<openssl rsa -in key.pem -text -noout>
+
+To just output the public part of a private key:
+
+C<openssl rsa -in key.pem -pubout -out pubkey.pem>
+
+=head1 SEE ALSO
+
+pkcs8(1), dsa(1), genrsa(1), gendsa(1)
+
+=cut