今まではシェルスクリプトでコマンドを打ってcsrを作成していましたが、 phpでも出来るようだったのでまとめます。
- 識別名の指定
$dn = array( "countryName" => "JP", "stateOrProvinceName" => "Tokyo", "localityName" => "hoge", "organizationName" => "hoge, Inc.", "organizationalUnitName" => "hogehoge", "commonName" => "hoge.com", "emailAddress" => " " );
countryName
は大文字2文字
で無ければいけません。
- 秘密鍵の作成
$privkey = openssl_pkey_new();
- csr作成
$csr = openssl_csr_new($dn, $privkey);
用意した識別名とプライベートキーを入れます。
- csrを文字列に展開
openssl_csr_export($csr, $csrout)
により、文字列に展開されたcsrがcsrout
に作成されます。
http://php.net/manual/ja/function.openssl-csr-new.php