...

情報処理基礎第3回「情報セキュリティ」

by user

on
Category: Documents
15

views

Report

Comments

Transcript

情報処理基礎第3回「情報セキュリティ」
情報処理基礎 第 3 回 「情報セキュリティ」
小林 裕之
26-Apr-2007
セキュリティ
1
1.1
さまざまなセキュリティ問題
計算機の世界にはさまざまなセキュリティ問題がある。
• 迷惑メイル
• コンピュータウィルス・スパイウェア
• フィッシング (phishing)・詐欺
人間を騙すものは「ソーシャルエンジニアリング」と呼ばれる。フィッシングもソーシャルエンジニア
リングの例。ソーシャルエンジニアリングは人間の問題なので、各自が注意すること。今回はもう少し
技術的な話題を取り上げる。
1.2
電子メイルにおけるセキュリティ問題
以下に主要な 3 つの問題を説明する。
1.2.1
盗聴 (snooping)
本来の受信者以外の (望まれない) 者が通信内容を傍受してしまうこと (図 1) 。
ないしょだね。
送信者
ないしょ
だよ。
受信者
ないしょかよ。
p!
oo
sn
盗聴者
図 1: 盗聴
盗聴は通信を することで対応する。
1
1.2.2
改竄 (alternation)
本来のメッセージの内容を書き換えてしまうこと (図 2) 。
ないしょじゃないの?
送信者
ないしょ
だよ。って
のはウソ
ぴょん。
受信者
al
te
rn
at
e!
ないしょ
だよ。
改竄者
図 2: 改竄
改竄はメッセージに をすることで対応する。
1.2.3
なりすまし (spoofing)
別の送信者になりすましてメッセージを送ること (図 3) 。
Mr. Aからメイルだ!
Mr. A
sp
oo
f!
オッス!
受信者
from A
なりすまし男
図 3: なりすまし
なりすましも で対応できる。
2
電子メイルで使う暗号システム
データの暗号化・電子署名に使う主要な暗号システム:
• PGP, GPG
• S/MIME
2
その中で使われている重要な技術:
• 秘密鍵暗号
• 公開鍵暗号
• メッセージダイジェスト関数 (ハッシュ関数
2.1
の一種)
PGP…Pretty Good Privacy
• 汎用の暗号化・電子署名のしくみ (メイル専用というわけではない)
• 1991 年に Philip Zimmermann が PGP を発表。
• 1999 年に OpenPGP という規格となる。
• 主な実装として、商用ソフトの “PGP”、フリーソフトの “GnuPG(GNU Privacy Guard; GPG
とも)” がある。
2.2
S/MIME…Secure MIME
• 電子メイル専用の暗号化・電子署名のしくみ
• 認証局が公開鍵の妥当性を証明してくれる
2.3
暗号における重要な語句
暗号化 (encryption) オリジナルのデータ (平文) を他人に解読不能なデータ (暗号文) にすること。
平文 (plaintext) 暗号化する前の元のデータ (“文” といっても文章とは限らない。)。
暗号文 (ciphertext, cryptogram) 暗号化されたデータ。
復号 (decryption) 暗号文を平文に戻すこと。
鍵 (key) 暗号化したり復号したりする際に用いるデータ。
アルゴリズム (algorithm) 暗号化/復号する際の手順・計算方法。
2.4
秘密鍵暗号 (共通鍵暗号)
• 昔からある暗号(今でも使われている)。
• 「秘密鍵 (共有鍵)」という一つの鍵を使う。
• 例:
換字式暗号 文字をある規則で置き換える。(例: シーザー暗号, エニグマ, 踊る人形)
最近のもの DES, 3DES, IDEA, ...
図 4: 踊る人形
問: 秘密鍵方式の暗号の決定的な問題点はなんだろう。
3
2.5
公開鍵暗号
• 「公開鍵 (public key)」と「秘密鍵 (private key; 私有鍵)」の二種類の鍵を使う。
• 公開鍵は秘密鍵から生成するのがふつう。
• 公開鍵で暗号化したら、秘密鍵でしか復号できない (図 5)。
• 秘密鍵で暗号化したら、公開鍵でしか復号できない。
• 基本的には素因数分解のように「一方向には簡単な計算」に基づいたアルゴリズム。
• 例: RSA(1977), DSA(1994)
ENCRYPTION
ONLY
PUBLIC KEY
SENDERS
PLAINTEXT
CIPHERTEXT
ONE WAY
PRIVATE KEY
(SECRET)
DECRYPTION
ONLY
RECEIVER
図 5: 公開鍵で暗号化したら秘密鍵でしか復号できない
2.6
メッセージダイジェスト
メッセージダイジェスととは:
• 任意のデータから作られる小さなデータ
• メッセージダイジェストからオリジナルデータは復元できない
• 同一のメッセージダイジェストをもつオリジナルデータを見つけるための計算量が非常に大きい
(「衝突がない」という)
代表的なメッセージダイジェスト:
• MD5
• SHA1
メッセージダイジェストは、複数の (大きな) データが同一のものかどうかを検証するときなどに用いら
れる。表 1 はメッセージダイジェスとの一例。ほぼ同一のオリジナルデータにもかかわらず、メッセー
ジダイジェストはひどく異なっていることから、「衝突がなさそう」な感じがする?
4
表 1: MD5 の例
オリジナルデータ
円周率 1000 桁
円周率 1001 桁
2.7
MD5 メッセージダイジェスト
4ce1aac59993fa076ba1bc395aec7a57
7a62f739621654e460443d7b1633c1c2
SHA1 メッセージダイジェスト
65e94af46204c04e9923c0e508384c98fa1f90bb
fffb2d70fc23082513c00176d6f22ec13330fbe3
電子署名
電子署名は「改竄」と「なりすまし」の両方に対抗する技術。ペンで書く署名や印鑑と目的はいっしょ。
電子署名の特徴は次のとおり。
• 本文を一文字でも書き変えるとバレてしまう。
• 電子署名も一文字でも書き換えてもバレてしまう。
• 本人以外には署名できない。
問: サインや印鑑に比べてどこが優れているか考えよう。
2.8
電子署名の原理
非常に簡略化すると電子署名は次のような仕組みである (図 6 も参照)。ただし本当はもっと込み入っ
ている (らしい)。
1. オリジナルメッセージ (M とする) のメッセージダイジェスト (D とする) を求める。
2. D を秘密鍵で暗号化する。これが電子署名 (S とする)。
3. M と S をセットで送る → M’ と S’ として届くとする (正しく送られていれば M=M’, S=S’)
4. 受信者は送信者の公開鍵を使って S’ を復号する (D’ とする)。S’=S であれば D’=D となるはずで
ある。
5. 受信者は M’ のメッセージダイジェストを自分でも求めてみる (d’ とする)。M’=M であれば、d’=D
となるはずである。
6. 上記 4. と 5. より D’=d’ であればデータは改竄されていないと考える。
電子署名を作成する際には、送信者しか知らない (はずの) 秘密鍵が必要なので「なりすまし」もでき
ない。
オリジナル
メッセージ
M
M’
d’
比較
送信者
D
S
S’
メッセージ PRIVATE 電子署名
ダイジェスト
D’
PUBLIC
図 6: 電子署名の基本概念
問: メッセージダイジェストを取る意味は?
5
受信者
2.9
2.9.1
実際の e-mail の例
電子メイルを公開鍵方式で暗号化する例
From: [email protected]
To: [email protected]
Subject: encryption
--text follows this line-○△です。
暗号化メイルのテストをします。
図 7: 暗号化前の e-mail
From: [email protected]
To: [email protected]
Subject: encryption
--text follows this line------BEGIN PGP MESSAGE----Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.8+ <http://mailcrypt.sourceforge.net/>
hQIOAz8ViyFPU9K0EAf/X8YRL69fnWsBGPlpcNo+/hN8nXt3qncUhJhRA8d5kFPm
z+kOcKUuBa7iBGCezm+TjBjPa9nAnAikD1SIFktKJj0w9RxJunBcz8rpPdnWHX/T
(中略)
rNSLE13OA43a/xecvtlonk+qP+kwj9qxntjSRSQiX1DBWK5LkgmLBBdgB9iVxnAY
YVqPfw4zbANpOQ==
=9+T+
-----END PGP MESSAGE-----
図 8: 暗号化後の e-mail
2.9.2
電子メイルに電子署名をつける例
From: KOBAYASHI Hiroyuki <[email protected]>
To: [email protected]
Subject: GPG signed mail
-----BEGIN PGP SIGNED MESSAGE----Hash: SHA1
小林です。メイルに電子署名をつけてみました。
-----BEGIN PGP SIGNATURE----Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.8+ <http://mailcrypt.sourceforge.net/>
iD8DBQFGLudHFc/ORnKwOpQRAnGtAJ9bmoUfReNJFFTCEGFZog2DNwSg8wCgszIO
kb149R0PiU7HVB0CSDcnONE=
=bK0g
-----END PGP SIGNATURE-----
図 9: 電子署名された e-mail の例
6
2.10
OSI 参照モデルとセキュリティ技術 (参考)
S/MIME や PGP に限らず、計算機の世界にはさまざまなセキュリティ技術がある。これらセキュリ
ティ技術は無意味にたくさんあるわけではない。役割分担がある。コンピュータネットワークにおける
OSI 参照モデル (コンピュータシステム基礎の教科書 (黄色い本)215 ページ) と対比するとよくわかる
(図 10)。
OSI参照モデル
TCP/IPなどの例
アプリケーション層
プレゼンテーション層
各種のアプリケーション
セッション層
トランスポート層
S/MIME,
PGP
SSL, TLS
TCP, UDP
ネットワーク層
IP
データリンク層
Ethernet
物理層
代表的な
セキュリティ技術
IPSec
WEP, WPA
ケーブル, 光ファイバ, 電波
図 10: OSI 参照モデルとセキュリティ技術の関係
暗号技術の将来
3
• 今までの暗号は「絶対解読できないわけではないが、その時代の技術水準では非現実的な計算量
が必要になるからまず無理」という前提で作られてきた。
• 量子コンピュータが実現すると、現代の暗号システムは根本的に無意味になってしまうかもしれ
ない。
• 量子コンピュータを使えば、理論的に絶対に盗聴不可能な通信が実現するかも知れない。
最近の話題
4
4.1
無線 LAN の暗号技術のニュース
無線 LAN の暗号化技術のひとつ、WEP がいよいよ危険になりそう (図 11) 。
7
図 11: WEP の問題を伝えるニュース記事
4.2
NDS は危険…かも
NDS は WEP しかサポートしていないためかなり危険そう (Apr/2007 現在)。
NDS
PSP
Vista
図 12: 無線セキュリティ設定画面の例
8
Fly UP