openssl
を使用してCSRに署名する方法は知っていますが、結果の証明書はv3ではなくx509 v1です。
私は次のコマンドを使用しています:
x509 -req -days 365 -in myCSR.csr -CA myCA.crt -CAkey myCA.key -CAcreateserial -out userCertificate.crt
私は検索しましたが、解決策を見つけることができませんでした。これをプログラムで行う別の方法はありますか?
拡張機能ファイルを指定する必要があります。
例えば:
openssl x509 -days 365 -in myCSR.csr -extfile v3.ext -CA myCA.crt -CAkey myCA.key -CAcreateserial -out userCertificate.crt
拡張機能ファイル(v3.ext)は次のようになります。
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment