OpenSSL:basicConstraints
基本制約
事前に見るべきもの
CA は、認証局(CA)かどうかを制御する。
table:CA
CA:TRUE 認証局である
CA:FALSE 認証局ではない
実は 必須ではない。
pathlen オプションは、どこまでが認証局として認められるかを制御する。
pathlen:0 にすると、その証明書を持った認証局は、その下に認証局の署名をすることができない。
pathlen:1 にすると、直下の認証局までが認められる。
pathlen:n (nは整数)にすると、n段下の認証局までが認められる。
よって、ルート認証局、中間認証局、一般の証明書という場合
以下のようになるのが正しい。
ルート認証局
basicConstraints = critical,CA:TRUE,pathlen:1
中間認証局
basicConstraints = critical,CA:TRUE,pathlen:0
一般の証明書
basicConstraints = CA:FALSE
一般の証明書では basicConstraints は実は不要だが、互換性のために入れるとのこと。
basicConstraints は X509拡張の部分に書かれる。
req コマンドで使う場合と、ca, x509 コマンド(または req の -x509 オプション)で使う場合とで実は取り扱いが異なる。
CSR を作る場合