はじめのいっぽ  ページ一覧  更新履歴

req(1)

 
 =pod
 
 =head1 NAME
 
 req - PKCS#10 certificate request and certificate generating utility.

NAME

req - PKCS#10 証明書リクエスト及び証明書生成ユーティリティ

 =head1 SYNOPSIS

SYNOPSIS

 B<openssl> B<req>
 [B<-inform PEM|DER>]
 [B<-outform PEM|DER>]
 [B<-in filename>]
 [B<-passin arg>]
 [B<-out filename>]
 [B<-passout arg>]
 [B<-text>]
 [B<-pubkey>]
 [B<-noout>]
 [B<-verify>]
 [B<-modulus>]
 [B<-new>]
 [B<-rand file(s)>]
 [B<-newkey rsa:bits>]
 [B<-newkey dsa:file>]
 [B<-nodes>]
 [B<-key filename>]
 [B<-keyform PEM|DER>]
 [B<-keyout filename>]
 [B<-[md5|sha1|md2|mdc2]>]
 [B<-config filename>]
 [B<-subj arg>]
 [B<-x509>]
 [B<-days n>]
 [B<-set_serial n>]
 [B<-asn1-kludge>]
 [B<-newhdr>]
 [B<-extensions section>]
 [B<-reqexts section>]
 [B<-utf8>]
 [B<-nameopt>]
 [B<-batch>]
 [B<-verbose>]
 [B<-engine id>]
 
 =head1 DESCRIPTION

DESCRIPTION

 The B<req> command primarily creates and processes certificate requests
 in PKCS#10 format. It can additionally create self signed certificates
 for use as root CAs for example.

req コマンドは、始めに PKCS#10 フォーマット証明書リクエストの生成と処理を行なう。さらに、例えばルートCAとして利用できる自己署名証明書の生成も可能である。

 =head1 COMMAND OPTIONS

COMMAND OPTIONS

 =over 4
 
 =item B<-inform DER|PEM>
 
 This specifies the input format. The B<DER> option uses an ASN1 DER encoded
 form compatible with the PKCS#10. The B<PEM> form is the default format: it
 consists of the B<DER> format base64 encoded with additional header and
 footer lines.

-inform DER|PEM

入力フォーマットを指定する。DER オプションは、PKCS#10と互換性のある ASN1 DER エンコードフォームを使用する。PEM 形式はデフォルトフォーマットである : PEM は ヘッダとフッタを持つ DER 形式の base64 エンコード版である。

 =item B<-outform DER|PEM>
 
 This specifies the output format, the options have the same meaning as the 
 B<-inform> option.

-outform DER|PEM

これは出力フォーマットを指定する。オプションは -inform オプションの値と同じである。

 =item B<-in filename>
 
 This specifies the input filename to read a request from or standard input
 if this option is not specified. A request is only read if the creation
 options (B<-new> and B<-newkey>) are not specified.

-in filename

これは読み込みたいリクエストが格納されているファイル名を指定する。このオプションが指定されていない場合は、標準入力から読み込む。リクエストは生成オプション (-new 及び -newkey) が指定されていない場合のみ読み込まれる。

 =item B<-passin arg>
 
 the input file password source. For more information about the format of B<arg>
 see the B<PASS PHRASE ARGUMENTS> section in L<openssl(1)|openssl(1)>.

-passin arg

パスワードソースを入力するファイル。 arg のフォーマットについてより詳細の情報は openssl(1) の PASS PHRASE ARGUMENTS を参照の事。

 =item B<-out filename>
 
 This specifies the output filename to write to or standard output by
 default.

-out filename

これは書き出すファイル名を指定する。デフォルトでは標準出力が設定される。

 =item B<-passout arg>
 
 the output file password source. For more information about the format of B<arg>
 see the B<PASS PHRASE ARGUMENTS> section in L<openssl(1)|openssl(1)>.

-passout arg

パスワードソースの出力ファイル。 arg のフォーマットについてより詳細の情報は openssl(1) の PASS PHRASE ARGUMENTS を参照の事。

 =item B<-text>
 
 prints out the certificate request in text form.

-text

テキスト形式で証明書リクエストを出力する。

 =item B<-pubkey>
 
 outputs the public key.

-pubkey

公開鍵を出力する。

 =item B<-noout>
 
 this option prevents output of the encoded version of the request.

-noout

このオプションはリクエストのエンコードバージョンの出力を抑制する。

 =item B<-modulus>
 
 this option prints out the value of the modulus of the public key
 contained in the request.

-modulus

このオプションは、リクエストに含まれている公開鍵のモジュールの値を出力する。

 =item B<-verify>
 
 verifies the signature on the request.

-verify

リクエストの署名を検証する。

 =item B<-new>
 
 this option generates a new certificate request. It will prompt
 the user for the relevant field values. The actual fields
 prompted for and their maximum and minimum sizes are specified
 in the configuration file and any requested extensions.
 
 If the B<-key> option is not used it will generate a new RSA private
 key using information specified in the configuration file.

-new

このオプションは新しい証明書リクエストを生成する。実行時に、ユーザに関係したフィールドの値の入力を求めるプロンプトが表示される。実際に入力を求められるフィールド及びそれらの最大及び最小サイズは設定ファイル及びリクエストされた拡張領域によって指定される。

-key オプションは、設定ファイルに指定された情報を利用する、新しい RSA 秘密鍵の生成時には使用されない。

 =item B<-rand file(s)>
 
 a file or files containing random data used to seed the random number
 generator, or an EGD socket (see L<RAND_egd(3)|RAND_egd(3)>).
 Multiple files can be specified separated by a OS-dependent character.
 The separator is B<;> for MS-Windows, B<,> for OpenVMS, and B<:> for
 all others.

-rand file(s)

乱数生成のためのシード、あるいは EGD ソケット (RAND_egd(3)を参照) として利用するためのランダムデータを含むファイル (複数でも可)。 OS 毎に決まった区切り文字で区切る事で複数のファイルが利用できる。区切り文字は、MS Windows の場合 ;、OpenVMS の場合 ,、それ以外は : である。

 =item B<-newkey arg>
 
 this option creates a new certificate request and a new private
 key. The argument takes one of two forms. B<rsa:nbits>, where
 B<nbits> is the number of bits, generates an RSA key B<nbits>
 in size. B<dsa:filename> generates a DSA key using the parameters
 in the file B<filename>.

-newkey arg

このオプションは新しい証明書リクエストと新しい秘密鍵を生成する。引数は2つの形式のどちらかをとることができる。rsa:nbitsは、この nbits はビット数を指すが、サイズが nbits のRSA 鍵を生成する。dsa:filename は filename ファイルに記述されたパラメータを利用して DSA 鍵を生成する。

 =item B<-key filename>
 
 This specifies the file to read the private key from. It also
 accepts PKCS#8 format private keys for PEM format files.

-key filename

これは秘密鍵を読み込むファイルを指定する。PKCS#8 フォーマットの秘密鍵及び PEM フォーマットのファイルの両方を受け入れられる。

 =item B<-keyform PEM|DER>
 
 the format of the private key file specified in the B<-key>
 argument. PEM is the default.

-keyform PEM|DER

秘密鍵ファイルのフォーマットは -key オプションの引数で指定される。PEM がデフォルトである。

 =item B<-keyout filename>
 
 this gives the filename to write the newly created private key to.
 If this option is not specified then the filename present in the
 configuration file is used.

-keyout filename

これは新しく生成された秘密鍵を書き込むためのファイル名を与える。もしもこのオプションが指定されていなければ、設定ファイルによって与えられるファイル名が利用される。

 =item B<-nodes>
 
 if this option is specified then if a private key is created it
 will not be encrypted.

-nodes

このオプションが指定されている場合、秘密鍵が生成されても暗号化されない。

 =item B<-[md5|sha1|md2|mdc2]>
 
 this specifies the message digest to sign the request with. This
 overrides the digest algorithm specified in the configuration file.
 This option is ignored for DSA requests: they always use SHA1.

-[md5|sha1|md2|mdc2]

これは、リクエストに署名するメッセージダイジェストを指定する。これは設定ファイルで指定されたダイジェストアルゴリズムを上書きする。このオプションは DSA リクエストでは無視される。この場合、通常 SHA1 が使用される。

 =item B<-config filename>
 
 this allows an alternative configuration file to be specified,
 this overrides the compile time filename or any specified in
 the B<OPENSSL_CONF> environment variable.

-config filename

これは、代替の設定ファイルの指定を許す。これはコンパイル時のファイル名や OPENSSL_CONF 環境変数の値で指定されたものを上書きする。

 =item B<-subj arg>
 
 sets subject name for new request or supersedes the subject name
 when processing a request.
 The arg must be formatted as I</type0=value0/type1=value1/type2=...>,
 characters may be escaped by \ (backslash), no spaces are skipped.

-subj arg

新しいリクエストで subject name (所有者名) を設定、あるいはリクエストの処理中に subject name を更新する。 arg は /type0=value0/type1=value1/type2=... といった形式でなければならない。arg は、キャラクタは \ でエスケープする必要があり、スペースはスキップされない。

 =item B<-x509>
 
 this option outputs a self signed certificate instead of a certificate
 request. This is typically used to generate a test certificate or
 a self signed root CA. The extensions added to the certificate
 (if any) are specified in the configuration file. Unless specified
 using the B<set_serial> option B<0> will be used for the serial
 number.

-x509

このオプションは、証明書リクエストではなく自己署名証明書を出力する。これは一般的にテスト証明書、あるいは自己署名ルート CA を生成するために利用される。証明書の拡張領域 (がある場合) は、設定ファイルから指定される。set_serial オプション で 0 を指定しなければ、シリアル番号が付加される。

 =item B<-days n>
 
 when the B<-x509> option is being used this specifies the number of
 days to certify the certificate for. The default is 30 days.

-days n

-x509 オプションと共にこのオプションを利用すると、証明書の信頼期間が日数で指定される。デフォルトは 30 日である。

 =item B<-set_serial n>
 
 serial number to use when outputting a self signed certificate. This
 may be specified as a decimal value or a hex value if preceded by B<0x>.
 It is possible to use negative serial numbers but this is not recommended.

-set_serial n

自己署名証明書の出力時に利用するシリアル番号。これは十進数あるいは 0x を頭に付けて16進数の値を指定できる。シリアル番号には負の数を指定できるが、推奨されない。

 =item B<-extensions section>
 
 =item B<-reqexts section>
 
 these options specify alternative sections to include certificate
 extensions (if the B<-x509> option is present) or certificate
 request extensions. This allows several different sections to
 be used in the same configuration file to specify requests for
 a variety of purposes.

-extensions section

-reqexts section

これらのオプションは (-x509オプションが選択されていれば) 証明書拡張領域あるいは証明書リクエスト拡張領域に含まれている領域を代わりに指定する。これは目的に応じてリクエストを指定する際に、同じ設定ファイルを利用しつつ設定内容の異なる領域の設定を許す。

 =item B<-utf8>
 
 this option causes field values to be interpreted as UTF8 strings, by 
 default they are interpreted as ASCII. This means that the field
 values, whether prompted from a terminal or obtained from a
 configuration file, must be valid UTF8 strings.

-utf8

このオプションによって、フィールド値がUTF8文字列と解釈されるようになる。デフォルトは ASCII と解釈される。これはターミナルから入力を要求されたり、設定ファイルから取得された文字列を取得するフィールドの値として UTF8 文字列が有効でなければならない事を意味する。

 =item B<-nameopt option>
 
 option which determines how the subject or issuer names are displayed. The
 B<option> argument can be a single option or multiple options separated by
 commas.  Alternatively the B<-nameopt> switch may be used more than once to
 set multiple options. See the L<x509(1)|x509(1)> manual page for details.

-nameopt option

subject (所有者) あるいは issuer (発行者)名の表示方法を決めるオプション。 option 引数は一つ、あるいはコンマで区切って複数指定できる。-nameopt スイッチは複数のオプションで利用可能である。詳細は x509 マニュアルページを参照の事。

 =item B<-asn1-kludge>
 
 by default the B<req> command outputs certificate requests containing
 no attributes in the correct PKCS#10 format. However certain CAs will only
 accept requests containing no attributes in an invalid form: this
 option produces this invalid format.
 
 More precisely the B<Attributes> in a PKCS#10 certificate request
 are defined as a B<SET OF Attribute>. They are B<not OPTIONAL> so
 if no attributes are present then they should be encoded as an
 empty B<SET OF>. The invalid form does not include the empty
 B<SET OF> whereas the correct form does.
 
 It should be noted that very few CAs still require the use of this option.

-asn1-kludge

デフォルトでは、 req コマンドは正確なPKCS#10 フォーマットでアトリビュートを一切含まない証明書リクエストを出力する。しかし、ある種の CA は、不正な形式の、アトリビュートを一切含まないリクエストのみを許す : このオプションは不正な形式のためのものである。

PKCS#10 証明書リクエストのより正確なアトリビュート (Attributes) は、 SET OF Attribute によって定義される。それらは not Optional (オプションではない) ため、一切アトリビュートが存在しなければ、SET OF は空が設定されなければならない。不正な形式は、正確な形式とは異なり SET OF に空を含めない。

ごく稀に、このオプションを利用する必要のある CA が未だに存在することに注意すること。

 =item B<-newhdr>
 
 Adds the word B<NEW> to the PEM file header and footer lines on the outputed
 request. Some software (Netscape certificate server) and some CAs need this.

-newhdr

NEW という単語を、PEM 形式で出力されたリクエストのファイルヘッダ及びフッタ行に追加する。ある種のソフトウェア (Netscape certificate server) や CA ではこれが必要である。

 =item B<-batch>
 
 non-interactive mode.

-batch

非対話モード

 =item B<-verbose>
 
 print extra details about the operations being performed.

-verbose

実行されている操作についての冗長な詳細を出力する。

 =item B<-engine id>
 
 specifying an engine (by it's unique B<id> string) will cause B<req>
 to attempt to obtain a functional reference to the specified engine,
 thus initialising it if needed. The engine will then be set as the default
 for all available algorithms.

-engine id

(固有の id によって) エンジンを指定する。 req で指定されたエンジンの機能の詳細の取得を試み、必要であれば初期化を行なう。エンジンはすべての利用可能なアルゴリズムに対してデフォルトとして設定される。

 =back
 
 =head1 CONFIGURATION FILE FORMAT

CONFIGURATION FILE FORMAT (設定ファイルフォーマット)

 The configuration options are specified in the B<req> section of
 the configuration file. As with all configuration files if no
 value is specified in the specific section (i.e. B<req>) then
 the initial unnamed or B<default> section is searched too.
 
 The options available are described in detail below.

設定オプションは設定ファイルの req セクションで指定される。全ての設定ファイルで、(req のような) 各セクションの値がまったく設定されていない場合は、名前が設定されないか***、default セクションが同様に検索される。

以下に利用可能なオプションの詳細が説明されている。

 =over 4
 
 =item B<input_password output_password>
 
 The passwords for the input private key file (if present) and
 the output private key file (if one will be created). The
 command line options B<passin> and B<passout> override the
 configuration file values.

input_password output_password

(もし存在すれば) 秘密鍵ファイルの入力時や、 (もし生成されれば) 新しい秘密鍵の出力時のパスワード。これらの設定ファイルの値は、passin や passout コマンドオプションで上書きされる。

 =item B<default_bits>
 
 This specifies the default key size in bits. If not specified then
 512 is used. It is used if the B<-new> option is used. It can be
 overridden by using the B<-newkey> option.

default_bits

これは、デフォルトの鍵サイズを ビット単位で指定する。もしも指定されなければ 512 が利用される。この値は -new オプションが使われる時に使用される。この値は、 -newkey オプションによって上書きされる。

 =item B<default_keyfile>
 
 This is the default filename to write a private key to. If not
 specified the key is written to standard output. This can be
 overridden by the B<-keyout> option.

default_keyfile

これは、秘密鍵を書き出すデフォルトのファイル名を指定する。もしも設定されていなければ、鍵は標準出力に書き出される。これは -keyout オプションによって上書きされる。

 =item B<oid_file>
 
 This specifies a file containing additional B<OBJECT IDENTIFIERS>.
 Each line of the file should consist of the numerical form of the
 object identifier followed by white space then the short name followed
 by white space and finally the long name. 

oid_file

これは、追加の OBJECT IDENTIFIERS を含むファイルを指定する。ファイルの各行は、 object identifier の数値形式の値、次にそれぞれスペースで区切られて省略名、正式名の順で値が記述される。

 =item B<oid_section>
 
 This specifies a section in the configuration file containing extra
 object identifiers. Each line should consist of the short name of the
 object identifier followed by B<=> and the numerical form. The short
 and long names are the same when this option is used.

oid_section

これは、設定ファイルの拡張 object identifier を含むセクションを指定する。各行は object identifier の短縮名と数字形式を = で結んだものからなる。このオプションが利用されている場合、短縮名と正式名は同等である。

 =item B<RANDFILE>
 
 This specifies a filename in which random number seed information is
 placed and read from, or an EGD socket (see L<RAND_egd(3)|RAND_egd(3)>).
 It is used for private key generation.

RANDFILE

これは乱数のシードの情報が格納されたファイル名、あるいは EGD ソケットを指定する (RAND_egd を参照の事)。秘密鍵の生成の際に利用される。

 =item B<encrypt_key>
 
 If this is set to B<no> then if a private key is generated it is
 B<not> encrypted. This is equivalent to the B<-nodes> command line
 option. For compatibility B<encrypt_rsa_key> is an equivalent option.

encrypt_key

このオプションに no が設定されている場合、秘密鍵を生成しても、それは暗号化されない。これは -nodes コマンドラインオプションを設定した場合と同じである。互換性のために、同等なオプションとして encrypt_rsa_key がある。

 =item B<default_md>
 
 This option specifies the digest algorithm to use. Possible values
 include B<md5 sha1 mdc2>. If not present then MD5 is used. This
 option can be overridden on the command line.

default_md

このオプションは利用するダイジェストアルゴリズムを指定する。取り得る値は md5 sha1 mdc2 である。もしも設定されていない場合は MD5 が利用される。このオプションはコマンドラインオプションが設定されれば上書きされる。

 =item B<string_mask>
 
 This option masks out the use of certain string types in certain
 fields. Most users will not need to change this option.
 
 It can be set to several values B<default> which is also the default
 option uses PrintableStrings, T61Strings and BMPStrings if the 
 B<pkix> value is used then only PrintableStrings and BMPStrings will
 be used. This follows the PKIX recommendation in RFC2459. If the
 B<utf8only> option is used then only UTF8Strings will be used: this
 is the PKIX recommendation in RFC2459 after 2003. Finally the B<nombstr>
 option just uses PrintableStrings and T61Strings: certain software has
 problems with BMPStrings and UTF8Strings: in particular Netscape.

string_mask

このオプションはあるフィールドで利用できるストリングタイプを設定する。ほとんどのユーザは、このオプションを使う必要がない。

ここでは様々な値をデフォルトに設定できる。なお、デフォルトオプションでは PrintableStrings?, T61Strings? 及び BMPStrings が利用できるが、pkix 値が使用されている場合は PrintableStrings? 及び BMPStrings のみが利用可能となる。これは RFC2459 における PKIX に関する提言に従ったものである。もしも utf8only オプションが設定されれば、UTF8Strings のみが利用される : これは 2003 年以降、PKIX の推奨である。なお、nombstr オプションは PrintableStrings? 及び T61String? のみを利用する : 一部のソフトウェアは BMPStrings 及び UTF8Strings に問題がある : 特に Netscapeに。

 =item B<req_extensions>
 
 this specifies the configuration file section containing a list of
 extensions to add to the certificate request. It can be overridden
 by the B<-reqexts> command line switch.

req_extensions

これは証明書リクエストに追加する拡張領域のリストを含む設定ファイルのセクション (領域) を指定する。-reqexts コマンドラインスイッチによって上書きが可能である。

 =item B<x509_extensions>
 
 this specifies the configuration file section containing a list of
 extensions to add to certificate generated when the B<-x509> switch
 is used. It can be overridden by the B<-extensions> command line switch.

x509_extensions

これは、 -x509 スイッチが利用されている場合に、生成された証明書に追加する拡張領域のリストを含む設定ファイルのセクション (領域) を指定する。-extensions コマンドラインスイッチによって上書きが可能である。

 =item B<prompt>
 
 if set to the value B<no> this disables prompting of certificate fields
 and just takes values from the config file directly. It also changes the
 expected format of the B<distinguished_name> and B<attributes> sections.

prompt

no と設定されていれば、これは証明書フィールドのプロンプトを利用できなくし、直接設定ファイルから値を読み込む。distinguished_name 及び attributes セクションの期待されるフォーマットも変更する。***

 =item B<utf8>
 
 if set to the value B<yes> then field values to be interpreted as UTF8
 strings, by default they are interpreted as ASCII. This means that
 the field values, whether prompted from a terminal or obtained from a
 configuration file, must be valid UTF8 strings.

utf8

yes と設定されていれば、各フィールドの値は UTF8 として解釈される。デフォルトでは各値は ASCII として解釈される。要するに、ターミナルから入力される値や設定ファイルから読み込まれる値も含め、各フィールドの値は UTF8 文字列でなければならない。

 =item B<attributes>
 
 this specifies the section containing any request attributes: its format
 is the same as B<distinguished_name>. Typically these may contain the
 challengePassword or unstructuredName types. They are currently ignored
 by OpenSSL's request signing utilities but some CAs might want them.

attributes

これは、あらゆるリクエストのアトリビュートを含むセクションを指定する : フォーマットは distinguished_name と同じである。一般的に、これらは challengePassword あるいは unstructuredName を含むだろう。現在は OpenSSL のリクエスト署名ユーティリティでは無視しているが、一部の CA は必要とするだろう。

 =item B<distinguished_name>
 
 This specifies the section containing the distinguished name fields to
 prompt for when generating a certificate or certificate request. The format
 is described in the next section.

distinguished_name

これは、証明書、あるいは証明書リクエストを生成する際に入力を要求される distinguished name (別名) フィールドを含むセクションを指定する。フォーマットは次のセクションに記載される。

 =back
 
 =head1 DISTINGUISHED NAME AND ATTRIBUTE SECTION FORMAT

DISTINGUISHED NAME AND ATTRIBUTE SECTION FORMAT (別名とアトリビュートセクションのフォーマット)

 There are two separate formats for the distinguished name and attribute
 sections. If the B<prompt> option is set to B<no> then these sections
 just consist of field names and values: for example,
 
  CN=My Name
  OU=My Organization
  emailAddress=someone@somewhere.org
 
 This allows external programs (e.g. GUI based) to generate a template file
 with all the field names and values and just pass it to B<req>. An example
 of this kind of configuration file is contained in the B<EXAMPLES> section.

distinguished name 及びアトリビュートセクションには 2 種類のフォーマットが存在する。もしも prompt オプションが no と設定されていれば、これらのセクションはフィールド名と値のみをとる。

例)

CN=My Name
OU=My Organization
emailAddress=someone@somewhere.org

この場合、外部プログラムがすべてのフィールド名と値を含むテンプレートファイルを生成し req のみがそれを通す事を許す。*** このような場合の設定ファイルの例が、 EXAMPLES セクションに用意されている。

 Alternatively if the B<prompt> option is absent or not set to B<no> then the
 file contains field prompting information. It consists of lines of the form:
 
  fieldName="prompt"
  fieldName_default="default field value"
  fieldName_min= 2
  fieldName_max= 4
 
 "fieldName" is the field name being used, for example commonName (or CN).
 The "prompt" string is used to ask the user to enter the relevant
 details. If the user enters nothing then the default value is used if no
 default value is present then the field is omitted. A field can
 still be omitted if a default value is present if the user just
 enters the '.' character.

一方、もしも prompt オプションが存在しないか、no が設定されていない場合は、ファイルはプロンプトが表示された時に入力する内容が記述される。形式は行単位となる。

fieldName="prompt"
fieldName_default="default field value"
fieldName_min= 2
fieldName_max= 4

"fieldName" には利用されるフィールド名、例えば commonName (あるいは CN) が入る。"prompt" 文字列には、ユーザ入力画面で入力する適切な値が入れられる。もしもユーザが何も入力せず、デフォルトの値が利用されるが、デフォルトの値が設定されていない場合はそのフィールドは無視される。各フィールドで、デフォルトの値が与えられていても、ユーザが「. (ピリオド)」のみを入力した場合、そのフィールドは無視される。

 The number of characters entered must be between the fieldName_min and
 fieldName_max limits: there may be additional restrictions based
 on the field being used (for example countryName can only ever be
 two characters long and must fit in a PrintableString).

入力される文字数は、fieldName_min と fieldName_max の間でなければならない。: フィールドの種類によっては、さらなる制約が存在する事もある (例えば、contryName は PrintableString? で2文字でしか設定できない)。

 Some fields (such as organizationName) can be used more than once
 in a DN. This presents a problem because configuration files will
 not recognize the same name occurring twice. To avoid this problem
 if the fieldName contains some characters followed by a full stop
 they will be ignored. So for example a second organizationName can
 be input by calling it "1.organizationName".

(organizationName のような) 一部のフィールドは、DNで一度ならず利用される。しかし、設定ファイルでは同じ名前が 2 回出てくる場合、これを解釈できないために問題が生じる。この問題を避けるために、fieldName がピリオドの後に文字列を含む場合、それは無視される。 従って、例えば2つ目の organizationName は "1.organizationName"として入力する事が可能である。

 The actual permitted field names are any object identifier short or
 long names. These are compiled into OpenSSL and include the usual
 values such as commonName, countryName, localityName, organizationName,
 organizationUnitName, stateOrProvinceName. Additionally emailAddress
 is include as well as name, surname, givenName initials and dnQualifier.

フィールド名 として利用できるのは、実名あるいは省略名のオブジェクト識別子である。これらは OpenSSL でコンパイルされ、commonName、countryName、localityName、organizationName、organizationUnitName、 stateOrProvinceName のように決まった値をもつ。また、emailAddress は、name、surname、 givenName initials 及び dnQualifier と同様に含まれる。

 Additional object identifiers can be defined with the B<oid_file> or
 B<oid_section> options in the configuration file. Any additional fields
 will be treated as though they were a DirectoryString.

追加のオブジェクト識別子は、設定ファイルの old_file あるいは old_sectionプションを利用して定義される。すべての追加のフィールドは DirectoryString? のように扱われる。

 =head1 EXAMPLES
 
 Examine and verify certificate request:
 
  openssl req -in req.pem -text -verify -noout

証明書リクエストの調査と検証を行なう :

openssl req -in req.pem -text -verify -noout

 Create a private key and then generate a certificate request from it:
 
  openssl genrsa -out key.pem 1024
  openssl req -new -key key.pem -out req.pem

秘密鍵を作成し、証明書リクエストを作成する :

openssl genrsa -out key.pem 1024 openssl req -new -key key.pem -out req.pem

 The same but just using req:
 
  openssl req -newkey rsa:1024 -keyout key.pem -out req.pem

上記と同じだが、reqコマンドのみで作成する場合 :

openssl req -newkey rsa:1024 -keyout key.pem -out req.pem

 Generate a self signed root certificate:
 
  openssl req -x509 -newkey rsa:1024 -keyout key.pem -out req.pem

自己署名ルート証名所を生成する :

openssl req -x509 -newkey rsa:1024 -keyout key.pem -out req.pem

 Example of a file pointed to by the B<oid_file> option:
 
  1.2.3.4	shortName	A longer Name
  1.2.3.6	otherName	Other longer Name

oid_file オプションを利用した設定ファイルの例 :

1.2.3.4	shortName	A longer Name
1.2.3.6	otherName	Other longer Name
 Example of a section pointed to by B<oid_section> making use of variable
 expansion:
 
  testoid1=1.2.3.5
  testoid2=${testoid1}.6

oid_section を変数の拡張に利用しているセクションの例 :

testoid1=1.2.3.5
testoid2=${testoid1}.6
 Sample configuration file prompting for field values:
 
  [ req ]
  default_bits		= 1024
  default_keyfile 	= privkey.pem
  distinguished_name	= req_distinguished_name
  attributes		= req_attributes
  x509_extensions	= v3_ca
 
  dirstring_type = nobmp
 
  [ req_distinguished_name ]
  countryName			= Country Name (2 letter code)
  countryName_default		= AU
  countryName_min		= 2
  countryName_max		= 2
 
  localityName			= Locality Name (eg, city)
 
  organizationalUnitName		= Organizational Unit Name (eg, section)
 
  commonName			= Common Name (eg, YOUR name)
  commonName_max			= 64
 
  emailAddress			= Email Address
  emailAddress_max		= 40
 
  [ req_attributes ]
  challengePassword		= A challenge password
  challengePassword_min		= 4
  challengePassword_max		= 20
 
  [ v3_ca ]
 
  subjectKeyIdentifier=hash
  authorityKeyIdentifier=keyid:always,issuer:always
  basicConstraints = CA:true
 

入力画面にデフォルトの入力例が表示される設定ファイルの例 :

[ req ]
default_bits		= 1024
default_keyfile 	= privkey.pem
distinguished_name	= req_distinguished_name
attributes		= req_attributes
x509_extensions	= v3_ca

dirstring_type = nobmp
  
[ req_distinguished_name ]
countryName			= Country Name (2 letter code)
countryName_default		= AU
countryName_min		= 2
countryName_max		= 2 

localityName			= Locality Name (eg, city)

organizationalUnitName		= Organizational Unit Name (eg, section)

commonName			= Common Name (eg, YOUR name)
commonName_max			= 64

emailAddress			= Email Address
emailAddress_max		= 40

[ req_attributes ]
challengePassword		= A challenge password
challengePassword_min		= 4
challengePassword_max		= 20

[ v3_ca ]

subjectKeyIdentifier=hash
authorityKeyIdentifier=keyid:always,issuer:always
basicConstraints = CA:true

 Sample configuration containing all field values:
 
 
  RANDFILE		= $ENV::HOME/.rnd
 
  [ req ]
  default_bits		= 1024
  default_keyfile 	= keyfile.pem
  distinguished_name	= req_distinguished_name
  attributes		= req_attributes
  prompt			= no
  output_password	= mypass
 
  [ req_distinguished_name ]
  C			= GB
  ST			= Test State or Province
  L			= Test Locality
  O			= Organization Name
  OU			= Organizational Unit Name
  CN			= Common Name
  emailAddress		= test@email.address
 
  [ req_attributes ]
  challengePassword		= A challenge password
 

全てのフィールドの値を含む設定亜フィルの例 :

RANDFILE		= $ENV::HOME/.rnd

[ req ]
default_bits		= 1024
default_keyfile 	= keyfile.pem
distinguished_name	= req_distinguished_name
attributes		= req_attributes
prompt			= no
output_password	= mypass

[ req_distinguished_name ]
C			= GB
ST			= Test State or Province
L			= Test Locality
O			= Organization Name
OU			= Organizational Unit Name
CN			= Common Name
emailAddress		= test@email.address

[ req_attributes ]
challengePassword		= A challenge password
 
 =head1 NOTES

NOTES

 The header and footer lines in the B<PEM> format are normally:
 
  -----BEGIN CERTIFICATE REQUEST-----
  -----END CERTIFICATE REQUEST-----

通常、 PEM フォーマットのヘッダとフッタは以下のようになる :

-----BEGIN CERTIFICATE REQUEST-----
-----END CERTIFICATE REQUEST-----
 some software (some versions of Netscape certificate server) instead needs:
 
  -----BEGIN NEW CERTIFICATE REQUEST-----
  -----END NEW CERTIFICATE REQUEST-----

(一部のバージョンの Netscape certificate server )のような一部のソフトウェアでは、以下のように記載されている必要がある。

-----BEGIN NEW CERTIFICATE REQUEST-----
-----END NEW CERTIFICATE REQUEST-----
 which is produced with the B<-newhdr> option but is otherwise compatible.
 Either form is accepted transparently on input.
 
 The certificate requests generated by B<Xenroll> with MSIE have extensions
 added. It includes the B<keyUsage> extension which determines the type of
 key (signature only or general purpose) and any additional OIDs entered
 by the script in an extendedKeyUsage extension.

ヘッダとフッタを上のようにする場合 -newhdr オプションが必要だが、それ以外の部分はどちらも同じ形式である。どちらの形式でも入力時は透過的に許可される。

MSIE の Xenroll によって生成された証明書リクエストは 、拡張領域が追加されている。それは、(署名のみ あるいは様々な目的) の鍵の用途を記述したkeyUsage拡張領域 をもっており、 extendedKeyUsage 拡張領域に、すべての追加の OID がスクリプトによって入力される。

 =head1 DIAGNOSTICS

DIAGNOSTICS

 The following messages are frequently asked about:
 
 	Using configuration from /some/path/openssl.cnf
 	Unable to load config info

以下のようなメッセージについて良く問い合わせがある :

Using configuration from /some/path/openssl.cnf

Unable to load config info

 This is followed some time later by...
 
 	unable to find 'distinguished_name' in config
 	problems making Certificate Request

これは、時には表示される...

unable to find 'distinguished_name' in config

problems making Certificate Request

 The first error message is the clue: it can't find the configuration
 file! Certain operations (like examining a certificate request) don't
 need a configuration file so its use isn't enforced. Generation of
 certificates or requests however does need a configuration file. This
 could be regarded as a bug.

最初のエラーメッセージが手がかりとなる : これは設定ファイルを見つけられなかったと言っている。(証明書リクエストを審査するなどの) 実際の操作は設定ファイルが必要ではないため、その利用は強制ではない。しかし、証明書あるいは証明書リクエストの生成時には必要である。この動作はバグとみなしても良い。

 Another puzzling message is this:
 
         Attributes:
             a0:00

その他の不思議なメッセージは以下の通り :

       Attributes:
           a0:00
 this is displayed when no attributes are present and the request includes
 the correct empty B<SET OF> structure (the DER encoding of which is 0xa0
 0x00). If you just see:
 
         Attributes:
 
 then the B<SET OF> is missing and the encoding is technically invalid (but
 it is tolerated). See the description of the command line option B<-asn1-kludge>
 for more information.

これは、アトリビュートが一切存在せず、リクエストが実際に空の SET OF ストラクチャを含んでいる (DER エンコードの場合、0xa0 0x00 となる) 場合に表示される。単に以下のようである場合 :

       Attributes:

この場合は、SET OF がみつからず、エンコードが技術的に間違っている (が、耐性がある)。コマンドラインオプションの -asn1-kludge に、詳細の情報が用意されている。

 =head1 ENVIRONMENT VARIABLES

ENVIRONMENT VARIABLES (環境変数)

 The variable B<OPENSSL_CONF> if defined allows an alternative configuration
 file location to be specified, it will be overridden by the B<-config> command
 line switch if it is present. For compatibility reasons the B<SSLEAY_CONF>
 environment variable serves the same purpose but its use is discouraged.

もしも定義された OPENSSL_CONF 変数が、指定された設定ファイルの変更を許可する場合、-config コマンドラインスイッチが利用できれば、これによって設定の上書きが可能である。互換性の理由から、SSLEAY_CONF 環境変数も同じ目的で提供される。しかし、この変数の利用は推奨されない。

 =head1 BUGS

BUGS

 OpenSSL's handling of T61Strings (aka TeletexStrings) is broken: it effectively
 treats them as ISO-8859-1 (Latin 1), Netscape and MSIE have similar behaviour.
 This can cause problems if you need characters that aren't available in
 PrintableStrings and you don't want to or can't use BMPStrings.

OpenSSL の T61Strings? (aka TeletexStrings?) ハンドリングは壊れている : 実際には Netscape や MSIE と同様に ISO-8859-1 (Latin 1) とみなす。これは、PrintableStrings? が利用できないキャラクタが必要な場合や、BMPStrings が利用できない、あるいはしたくない場合に問題が発生する原因となる。

 As a consequence of the T61String handling the only correct way to represent
 accented characters in OpenSSL is to use a BMPString: unfortunately Netscape
 currently chokes on these. If you have to use accented characters with Netscape
 and MSIE then you currently need to use the invalid T61String form.

T61String? ハンドリングと同様に、OpenSSLでアクセントキャラクタを取り扱う唯一の方法は、BMPStringの利用である。 : 残念なことに、Netscape は現状これらを取り扱えない。もしも Netscape や MSIE でアクセントキャラクタを取り扱う必要が生じた場合、不正な T61String? 形式を利用する必要がある。

 The current prompting is not very friendly. It doesn't allow you to confirm what
 you've just entered. Other things like extensions in certificate requests are
 statically defined in the configuration file. Some of these: like an email
 address in subjectAltName should be input by the user.

現在の入力コンソールはあまり使い勝手が良くない。入力内容の確認が行なえない。また、証明書リクエストの拡張領域のような項目は設定ファイル内で静的に定義される。これらのうちのいくつか : subjectAltName のemail address などはユーザによって入力を可能とすべきである。

 =head1 SEE ALSO
 
 L<x509(1)|x509(1)>, L<ca(1)|ca(1)>, L<genrsa(1)|genrsa(1)>,
 L<gendsa(1)|gendsa(1)>, L<config(5)|config(5)>
 
 =cut
更新日時:2004/01/15 01:54:42
キーワード:
参照:[ca(1)] [はじめのいっぽ] [OpenSSL のマニュアルの翻訳] [CA.pl(1)]