【3/18〜】Amazon、VMwareが語る『クラウドの未来』 スラッシュドット    はてなブックマーク  Yahoo!ブックマークに登録  印刷

TCP/IPアレルギー撲滅ドリル【番外編】 第3回

読み出しを暗号化しないpop3やapopメールは危険か?

福永勇二
インタラクティブリサーチ
2005/12/13

前回「メールを安全に読み出すpop3s」に引き続き、メールを安全に読み出すための仕組み、pop3s、apop、pop3それぞれの性質を比較。PCからメールサーバまでpop3でも安全なケースもあるというが、pop3が安全でないケースはどんなときか?メールの転送中は安全なのか? はたまた、pop3で読み出しだけ暗号化しても無意味なのではないか、などの素朴な疑問をさらに深く迫っていきます。

 pop3s、apop、pop3を比較する

 
メールを安全に読み出すために
 
目次
pop3s、apop、pop3を比較する
1 メールを安全に読み出すために
ネットワークに生パスワードを送らずにすむapop
2 apopのハッシュってなんですか?
3 apopのどこに一方向ハッシュ関数?
pop3はどうしても危険なのか?
4 PCからメールサーバまで、pop3でも安全なケースも
5 pop3が安全じゃないのはどんなとき?
6 メール配送中は安全なんですか?
メールの読み出し暗号化の意義は?
7 たとえpop3sで読み出しだけ暗号化しても無意味では?

 前回「メールを安全に読み出すpop3s」に引き続き、pop3s、apop、pop3それぞれの性質にさらに深く迫っていきます。表1で○は安全、×は安全でないことを表しています。また○の下にある説明は、安全にするための仕組みを書きました。

 まずpop3は、本人確認、一覧読み出し、本文読み出し、いずれも安全ではありません。apopは、「ハッシュ」という暗号化の仕組みを使って本人確認は安全に行えます。しかしメール一覧やメール本文の読み出しは盗聴される可能性があります。一番安全なのはpop3sです。TLS/SSLの仕組みを使うことで、通信内容を暗号化(盗聴防止)し、また通信相手を特定する(なりすまし防止)ことができます。

プロトコル (1)本人確認 (2)一覧読出 (3)本文読出
pop3
×
×
×
apop

ハッシュ
×
×
pop3s

SSL

SSL

SSL
表1 pop3s、apop、pop3の機能比較

 ネットワークに生パスワードを送らずにすむapop

 
apopのハッシュってなんですか?
 

 少し話がそれますが、apopで使われている「一方向ハッシュ関数」を簡単に説明しておきましょう。「一方向ハッシュ関数」とは、図1のような性質を持った関数です。ちょっとややこしいですが、じっくり読んでみてください。

一方向ハッシュ関数は……

  • メッセージが不正に書き換えられていないか(改ざん)を見つけ出したり、パスワードを保護するためなどに使う
  • メッセージダイジェスト関数とも呼ばれる
  • 具体的にはMD5やSHA-1といった関数がある
図1 一方向ハッシュ関数の性質

 何かの文字列を一方向ハッシュ関数に与えると、長さが一定の別の文字列に変換されます。図では「I have a pen」という文章が「4a25880d19034b05ea27a3de98109343」になっています。では元の文字列を「I have a pin」に変えるとどうでしょうか? 今度は「e2f830b0e1b4b9488b8f853cc53562e4」という結果になりました。元の文章は1文字違うだけなのに、結果はまったく違います(図中(1))。また、このとき結果から元のデータを逆算することは困難です(図中(2))。

 このような性質のある一方向ハッシュ関数は、メッセージが不正に書き換えられていないか(改ざん)のチェックによく使われます。これは1文字違っているだけで結果がまったく違うこと、また結果から逆算するのが困難な性質を利用するものです。またapopでパスワードの保護に使う場合は、主に逆算がとても難しい性質を利用していると考えられます。

 なお、一方向ハッシュ関数では、極めてまれですが、図中(3)のように元の文字列がまったく違うのに同じ結果をもたらすことがあります。ただ、その確率は実用上ほぼゼロになるように設計されています。また同じ結果が得られる元の値を逆算することは困難です。

 
apopのどこに一方向ハッシュ関数?
 

 apopでは、パスワードをそのまま送る代わりに、一方向ハッシュ関数の結果をやりとりすることで、パスワードが正しいことを確認しています。

 具体的には、図2のような動作をします。

図2 パスワードをやりとりしない認証

 まずpopサーバは「チャレンジ文字列」をユーザーPCに送ります。ユーザーPCでは、チャレンジ文字列にパスワードをくっつけて、それをMD5という種類のハッシュ関数に与えます。そうして得られた結果を「レスポンス文字列」として送り返します。

 popサーバは、チャレンジ文字列と自分自身が知っているパスワードから、MD5によってレスポンス文字列を作っておきます。ユーザーPCからレスポンス文字列を受け取ったら、自分が作ったものと比較して、両方が同じだったら正しいパスワードだと判断します。これだけです。

 ここでpopサーバとユーザーPCの間で、パスワードのやりとりをしていないことに注目してください。やりとりしているのはレスポンス文字列です。一方向ハッシュ関数の性質上、レスポンス文字列からその元になった値(チャレンジ文字列+パスワード)を逆算することは困難です。そのため、いくらネットワークが盗聴されたとしても、盗聴者がパスワードを知ることはできない、というわけです。

 なお、実際のpopのやりとりを「連載第4回 TCP/IPアレルギー撲滅ドリル【超実践編】ちょっとジミなPOP3でメールを読む」で紹介していますので参考にしてください。


目次
  pop3s、apop、pop3を比較する/ネットワークに生パスワードを送らずにすむapop
pop3はどうしても危険なのか?
メールの読み出し暗号化の意義は?
関連リンク
  連載:インターネット・プロトコル詳説




「Master of IP Network総合インデックス」

ホワイトペーパーTechTargetジャパン

Master of IP Network フォーラム 新着記事
  • どこまで出る? LTEの通信速度 (2010/3/17)
     光ファイバに匹敵する通信速度を実現すると期待されているLTE。ホントにそんなに出るの? という疑問に答えます
  • インターネット世界の地図 (2010/2/23)
     荷物の届け先まではどの道を通っていけばいいのでしょう? それを決める「経路選択」の仕組みを説明します
  • Androidアプリはビジネスになるのか (2010/2/12)
     「iPhoneアプリの次はAndroid?!」NECビッグローブのAndroidアプリ販売サイト「andronavi」を通して、その可能性に迫る
  • 知られざるLTEのネットワーク構成 (2010/1/13)
     LTEのネットワーク構成やプロトコルスタックを詳解。それぞれどんな役割を果たしているかを解説します

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

スキルアップ/キャリアアップ(JOB@IT)

- PR -
- PR -

お勧め求人情報

キャリアアップ 〜JOB@IT
@IT Special -PR-
  TomcatやJBossなどAPサーバ環境に関する
情報を集約! “業務”用APサーバ大百科

New!
  一気に解説! 最新のクラスタストレージ
「RAIDを超えたストレージ基準」……など

New!
  クラウド的ユーザー体験の変化は脅威か?
仮想化技術を使いこなす運用管理術を紹介

New!

  上司や部下、部署内メンバーとの情報共有
を“ガラッ”と変えるコラボツールとは?

New!
  おばかアプリ選手権、第4弾開催中!!
ムダにカッコよくてくだらない作品求ム!

  社内ファイルサーバを“クラウド”に統合
VPN直結「クラウド型ストレージ」を紹介

  Twitterのアカウントはなぜ突破された?
メールによる新手の攻撃手法とその対策

  もう仮想化のお試しフェイズは終わりだ!
Hyper-V 2.0が基幹システムも仮想化

  美人!? まあまあ? 気になる いやし系!!
PV急増で「美人時計」がとった手段とは?

  クライアント企業から求められる人材
⇒IT技術と経営戦略を併せ持つ「戦略家」

  .NET編集長が実践する「技術情報検索術」
サンプル・コードを簡単に探す“技”は?

  業務効率と情報セキュリティ対策を両立!
手間なく確実に機密情報を守る方法とは?

  進化を続ける富士通ストレージETERNUS DX
製品開発者の自信を裏付けるものとは何か

  運用管理の課題を“2つの観点”から分析
ユーザー満足度の高い「仮想環境」とは?

  【CTC事例】約30の基幹システムを統合!
膨大なバッジジョブを制御した方法は?

  仮想化すればコストは削減できるか?
仮想化に必要な「3つの視点」を解説する

  その数、なんと400台以上! グループ内
サーバの「統合管理」によるメリットは?