openssl pkcs12 -in tako-2004.p12 で、秘密鍵(tako-2004.key.crypt)と公開証明書(tako-2004.crt)を取り出すopenssl rsa -in tako-2004.key.crypt -out tako-2004.key で秘密鍵のDES暗号化解除基本的には年1回更新なので、証明書は年がわかるようなファイル名にしている。 Subversionなどの設定から参照するのは、年を含まないファイル名にしてシンボリックリンクをはるような運用にするのが楽かも。
WindowsServer環境で証明書を発行すると、日本語が CommonName に含まれた状態の証明書がへろっとできる。
PKCS#12形式にエクスポートしたら MacOSX のキーチェーンに読み込ませることもできてちゃんと日本語が表示されるのだが、 どうも Safari で使わせてくれない。昔もはまったような気がするが… あんまり闘ってる余裕がないので 英数字だけの CommanName なユーザを作って対処。
CommonName にどういう文字セットを使っていいのかの規格を探さないと、WindowsとMacのどっちが悪者なのかが判別できない。
Perl から証明書の検証ができるのかは不明。 Net::SSLeayモジュールがあれば勝手に有効になるというあたり、証明書指定のインターフェースがなさそうな雰囲気濃厚。
それとも Net::SSLeayモジュール側が環境変数見るのかな?
正規表現の文字クラスとして、「ひらがな」「カタカナ」というのを Unicode グループで指定できる。
\p{IsHiragana}
\p{IsKatakana}
\p{IsCJKUnifiedIdeographs}
CJKUnifiedIdeographs とJIS第一水準/JIS第二水準との関係は全然わからんが「普通の漢字」と思っていいんかな。
(21日追記)Shift_JISな環境のASP.NETで送られた文字を Char.GetUnicodeCategory メソッドで調べると OtherLetter らしい。謎。