12-5. WWWブラウザの暗号化 (1) Netscape Communicator のデジタルID `02/11 * WWWクライアント用デジタルIDの発行ソフト Clifford Heath 氏が SSLeay を用いて作成した、Client Certificate 用のフリ−ソフト を試してみた。 http://www.osa.com.au/~cih/software/crypto/ ここから certs.tar と いうファイルをダウンロ−ドする。展開して訳も分からずテストしていたら、本人にメ− ルが行ってしまった。このソフトの仕組みは HTML ベ−スで、ブラウザからデジタルID のリクエストをして、WWWサ−バで署名し、その後またブラウザからデジタルIDをダ ウンロ−ドするようになっている。発行デジタルIDはシリアル番号になっていて、その 番号をメ−ルで通知してくるようになっている。それがソフトを展開したままだとメ−ル が Clifford Heath 氏に行くようになっている。彼の個人的なテスト・ソフトを公開した ということだろう。 すいません、今テストしています。まだ成功していませんとメ−ルを送ると、すぐ返事が きた。このソフトはもう古くなってしまって、 Internet Explorer では DLL ファイルが 対応していない。 Netscape なんかにおいても Certificate Request Format が異なって きている。http://www.openca.org/ が今では参考になるよということだった。 そして最 後に Good luck! と。彼の言う通り、このソフトそのままでは有効なデジタルIDは作る ことができなかった。それ以前にだいぶソフトに手直しした。このソフトはデジタルID の発行の部分は OpenSSL を使用する。つまり OpenSSL の制御ファイルの openssl.cnfを 見るようになっている。後でまた詳しく述べるが、 Netscape 用にデジタルIDを作る場 合、openssl.cnf のパラメ−タをいじらないと正しいのができない。 いろいろ試した結果。Windows 98/NT とUNIXの Netscape では、クライアント用デジ タルIDの解釈に違いがあるようである。UNIXは INDY と Vine Linux でやってみた が、openssl.cnf を何もいじらずに、INDY では Netscape 4.05 で何の問題もなくS/MIME による暗号メ−ルまでできた。 Vine Linux でもCAのデジタルIDは素直に入って認識 した。Windows 98 の Netscape では openssl.cnf ファイルをそのままだと、動作が不安 定、挙動不審となった。有効期限が切れているとか、CAのデジタルIDが見つからない とか。全くおかしい。Netscape は 4.5 でも 4.7 でもおかしいのは同じだった。Windows の Netscape ではきちんと X.509 v3 の拡張仕様に準じなければいけないみたいである。 * 先にCA用デジタルIDを作成する % CA.sh -newca CA certificate filename (or enter to create) Making CA certificate ... Using configuration from /usr/local/ssl/openssl.cnf Generating a 1024 bit RSA private key .+++++ ...............+++++ writing new private key to './demoCA/private/./cakey.pem' Enter PEM pass phrase: 1234567 Verifying password - Enter PEM pass phrase: 1234567 | Country Name : JP このような表示がでてくる。 State or Province Name : Aichi Locality Name : Nagoya Organization Name : NIX Organizational Unit Name : CAD Common Name (YOUR name) :web.nix.co.jj Email Address :katou@nix.co.jj % openssl x509 -in demoCA/cacert.pem -outform der -out ccc.der % du -a demoCA 1 demoCA/certs 1 demoCA/crl 1 demoCA/newcerts 2 demoCA/private/cakey.pem << CA.sh -newca でできた。 3 demoCA/private 1 demoCA/serial << 01 となっている。 0 demoCA/index.txt << 中身は空である。 3 demoCA/cacert.pem << CA.sh -newca でできた。 11 demoCA * Clifford Heath 氏のソフトのエッセンス index.html ------------------------------------------------- | |