1.暗号メールとは
電子メールは葉書のようなもので内容は誰にでも見られてしまいます。また、発信人の偽証や本文の改ざんの可能性もあります。暗号メールでは、発信人の署名の証明と本文の暗号化を行ってメールの安全性を高めます。
2.公開鍵(証明書)と秘密鍵
暗号メールには公開鍵暗号(PKI)を用います。これは暗号化と復号化に別の鍵を用いる特徴があります。発信人はその人の個人秘密鍵で暗号化し、受信人は発信人の公開鍵で復号化します。
(注)PKI: Public Key Infrastructure
3.認証局
公開鍵は第3者の認証局(CA)で証明してもらいます。これは印鑑証明の原理です。認証された公開鍵を証明書と呼んでいます。認証局は例えばVerisignという会社が有料で運営しています。
4.認証局の実験
認証局は自分でもつくれます。俗に自己認証局などといいます。ソフトとしては openssl が有名ですが、本来はLinux上で使用し
ます。最近Windows上でビルドしたものを入手しましたので、簡単に実験できるようになりました。手順はこんな感じです(括弧内は実験用ファイル
名)。
- 認証局: 認証局秘密鍵(cakey.pem)と認証局証明書(cacert.pem)をつくる。
- 個人 : 秘密鍵(mykey.pem)と証明書要求書(myreq.pem)をつくり、後者を認証局へ送る。
- 認証局: 証明書要求書を証明する。→個人証明書(mycert.pem)
- 個人 : 秘密鍵と個人証明書からPKCS12形式の証明書(mycert.p12)をつくる。
(注)自己認証局の証明書は仲間内でのみ通用します。
5.メーラの設定
- PKCS12形式の証明書をメーラに搭載する。
- 通信の相手の公開鍵をメーラに搭載する。
- 暗号メールを作成する。(署名付も可能。)
代表的なメーラの設定方法
- Thunderbird
- ツール→オプション→プライバシー→セキュリティ→証明書を表示
- あなたの証明書タブ→インポート→mycert.p12
証明局証明書タブ→設定→3ヶの□にチェックを入れる→OK
- 他の人の証明書→インポート→hiscert.pem
- OutlookExpress
- ツール→オプション→セキュリティ→デジタルID
- 信頼されたルート証明機関→インポート→全てのファイル→cacert.pem
(警告が出るが信頼する。)
- 個人タブ→インポート→全てのファイル→mycert.p12
- ほかの人→インポート→全てのファイル→hiscert.pem
- Outlook
パスワードとデジタルIDは共に鍵を作成したときのパスワードを用いる。
(注)相手の証明書(公開鍵)はder形式を要する。試作鍵発行システムはpem形式なのでNG。下記5参照。
- 受信した電子署名から相手の証明書(公開鍵)をインポートする方法
(OutlookExpress, Outlook, ThunderBird)
http://www.geotrust.co.jp/ssl_help/tcx_smime.html
6.鍵の生成方法
(準備中)
7.参考文献
- Windows版opensslの入手先
株式会社イー・ポスト http://www.e-postinc.jp/
メールサーバの仕組みについて http://www.e-postinc.jp/epmsent_construct_guide/
の中の、SSLで送受信してみよう http://www.e-postinc.jp/epmsent_construct_guide/22.html
に主要な部分が含まれています。利用したのは最初の部分です。後半はサーバへの搭載方法がされています。
- httpsサーバ(Apache)に搭載するssl
http://nlogn.ath.cx/archives/000171.html
今回はサーバ用鍵は使用していないが、opensslのパラメータ設定法は共通なので参考になった。
- SSL用証明書の作成(Windows編) http://www.aconus.com/~oyaji/www/certs_win.htm
この資料にはWindows版をつくる場合の課題が記載されているので参考として掲載しておきます。(最近発見した資料です。)
|