第3章情報の伝達と通信lecture.ecc.u-tokyo.ac.jp/~cnakamur/2008/2012-Chap03.pdfA:000, B:001,...

58
1 第3章 情報の伝達と通信 プロトコル (3.2.2) (a) 通信の際の決めごと 通信の秘密と相手の認証 (3.2.3) (a) 暗号 盗聴を防ぐ –(認証 通信参加者の身元の保証) –(署名 通信内容の改竄の防止、否認の防止)

Transcript of 第3章情報の伝達と通信lecture.ecc.u-tokyo.ac.jp/~cnakamur/2008/2012-Chap03.pdfA:000, B:001,...

1

第3章 情報の伝達と通信

• プロトコル (3.2.2) (a)– 通信の際の決めごと

• 通信の秘密と相手の認証 (3.2.3) (a)– 暗号 盗聴を防ぐ

– (認証 通信参加者の身元の保証)– (署名 通信内容の改竄の防止、否認の防止)

2

Shannonの情報理論通信の最適な符号化の理論

• C.E. Shannon, A mathematical theory of communications, Bell Syst. Tech. J. 27 (1948), pp.10-21.

• C. E. Shannon, A mathematical theory of communications, Bell Syst. Tech. J. 27 (1948), pp.379-423.

• C. E. Shannon, Communications in the presence of noise, Proc. IRE 37 (1949), pp.10-21.

• C. E. Shannon and W. Weaver, The Mathematical Theory of Communication, Univ. Illinois Press, 1949.

3

事象{A1,A2,…An} が確率的に生起する

H 情報源の出す1事象あ

たりの平均情報量(情報源のエントロピー) ビット

符号化Coding

復号化Decoding

情報源

通話路

R ビット/秒

R 通話路容量

最適な符号化を取れれば、平均 R/H文字(事象)伝送できる

A1’A2’・・・

4

情報量 (ビット bit (binary digit))(1)確率事象の生起に伴う情報量

確率 p で生起する事象が起こったことを伝達されたとき得る

情報量

ビット

(2)記号列としての情報量 (場合の数の対数)

(記号列のとりうる場合の総数) ビット

= 0, 1 の記号列の長さ

[注] 8ビット (bit) を1バイト (byte) と呼ぶ。

3.1.2 情報量の定義

pH 2log

2logH

5

・ 前提:情報量は確率によって決まる。

・ 前提: 情報量の加法則が成立する。つまり

確率事象AとBが独立で、それぞれの生起確率

がp 、 qとするとき 以下が成立する。

確率p の事象の生起を知って得られる情報量は

• 特に をビットという単位で呼ぶ

)0(log)( は定数   CpCpf

)()()( pqfqfpf

)(log)( 2 ppf

6

対数関数、指数関数の定義

)exp(1)exp()(log)exp(

1)log(1)log(

1

1

xy

dydxx

dxdxx

xx

dxddt

tx

x

   

      

整数   

 

 

  

    

:)exp(...718.2)1exp(

//)exp()exp()exp()log()log()log(

)exp(),exp(//)exp()exp()exp(

//)log(1

)log()log(11)log(//

)log()log()log(

nene

yxabyxabbayx

ybxayxxy

Cyx

Cxxyx

yxy

xydxd

yxxy

n

)()()( qfpfpqf

xC

xf

xfxf

x

xfxfxfxf

1'1)1('/

)1()/1(lim1

)/1(lim)()(lim)('

0

00

0)1( f)1()()( fpfpf ゆえに

加法則

)log()( xCxf ゆえに )0( C

• ここでCの値を決めると、それぞれの単位の取り方に対応する

2log1

C のとき ビット

1C のとき ppf log)(

)(log2log)log()( 2 pppf

ニット

10log1

C )(log10log

)log()( 10 pppf ディット

情報量の加法性の要請

)41()

31()

43( fff

)41()

31()

43( fff

)41log()

31log()

43log(log)( CCCpCpf   

情報量の加法性の再検討

)41()

83()

42()

43( ffff

日本史

東洋史

西欧史

アメリカ史

日本史

東洋史

西欧史

アメリカ史

日本史

東洋史

西欧史

アメリカ史

日本史

東洋史

西欧史

アメリカ史

世界史です

東洋史でも西欧史でもありません

アメリカ史です場合の数 3 場合の数 2

場合の数 1

なぜ成り立たないのか?

P(東洋史 or 西欧史 or アメリカ史)= 3/4

P(日本史 or アメリカ史) = 2/4 = 1/2

P(アメリカ史)=1/4 83

21

43

• 事象AとBが独立でないときは、必ずしも加法則はなりたたない。

• P(世界史)P(東洋史、西洋史でない)

=3/4・2/4=3/8=1/4=P(世界史で、かつ東洋史、西洋史でない)

確率事象の独立性

P(A) : 事象Aが起こる確率 P(B) : 事象Bが起こる確率

P(A,B) : A,B がともに(同時に)起こる確率

定義: P(A,B)=P(A)P(B) のとき確率事象A,B は独立であるという。

例 20 面体さいころを振る。

事象A : 4 の倍数の目がでる。 P(A)=5/20=1/4 {4,8,12,16,20}

事象B : 6 の倍数の目がでる。 P(B)=3/20 {6,12,18}

A,B がともに起こる: P(A,B)=1/20 {12}

P(A,B) = P(A)P(B) なので A,B は独立な事象ではない。

13

例サイコロの目 -log2(1/6)  2.59 ビットルーレットの目 -log2(1/100)  6.64 ビットコイン投げの裏表 -log2(1/2) = 1 ビット

記号列の長さとしての情報量ビットと確率事象の生起の情報

量ビットの同値性

0,1 の2値がどちらも確率 1/2 で生起するとすると、そのひ

とつの値の情報量は 1 ビットになる。このとき 0,1 の特定の

長さ n の記号列が発生する確率は で、ゆえにその生起

確率から計算される情報量は ビットである。

ゆえに、長さ n の 0,1 列の情報量を n ビットとした記号列の長

さで定義した情報量と、整合的である。

n2/1nn )2/1(log 2

14

ほかの記号種類の記号列のメモリ容量(情報量)

・ {a,b,c,…,x,y,z,w}長さ 3 の列 26*26*26=17576 通り

・ {0,1,2,3,…,9} 長さ 3 の列 1000 通り

これらを 0, 1 の記号列として表すのに必要な長さは

  ...101.1417576log,217576 2 nn

  ...96578.91000log,21000 2 nn

ビット

ビット

15

3.1.3 平均情報量事象 A1,A2,…,An が独立に確率 (p1,…,pn) で発生す

る情報源があったとする。この情報源の1文字あたりの

平均情報量(情報源のエントロピー)を H とすると、それ

n

iii ppH

12log

情報源の生起事象を復元可能な符号化によって 0,1 に符号化した列で通知しようとすると、その長さの平均値を L ビットとすると、常に以下の不等式が成立する。

n

iii HAlpL

1)(

(ビット)

16

H が平均情報量の時任意の に対して平均符号長 L が以下を満たすような符号化が存在する。

0

HLH

情報源符号化定理 (Shcannon の第一定理)

つまり、良い符号化を使えば平均符号長が、情報

源のエントロピー(平均情報量) H にいくらでも近く

できるということが保証されている。

17

良い符号化を見つけよう

[ハフマン 符号化]データに出現する記号の個数を求める。 それが木構造

の葉に相当すると見なし、木を構成する。

(1)まず、葉を含むすべての節点のうち、親を持たないものを集める。

(2)その中から、最小の値をもつものと2番目に小さい値をもつものを取り出す。 それらを子供にもつ新しい節点を作る。 このとき、新しい節点の値は、両方の子供の値の和とする。

18

以上を繰り返して根節点まで到達して木が完成される。

(3) 次に、根から順に左右に0と1の値を割り振っていく(左右のどちらに0と1を与えるかは任意)。(4) すると、それぞれの葉(記号)に対して、一意にビット列が与えられる。 この記号とビット列の関係をもとに、も

とのデータの記号をビット列に変換していくことで符号化が行われる。

ハフマン符号は一意復元可能である。

19

出現頻度と割り当てられた符号

記号

個数

推定確率

符号

B C A D E

5 3 2 1 1

5/12 3/12 2/12 1/12 1/12

0 10 110 1110 1111

Sample データ :DAEBCBACBBBC

20

)....(0545.2

))121(log

121)

121(log

121)

122(log

122)

123(log

123)

125(log

125(

log

22222

12

ビット

n

iii ppH

[例] 12桁 を0,1のビット列に符号化

A:000, B:001, C:010, D:011, E:100 と符号化すると平均符号長 3.0 ビット

A:1110, B:0, C:10, D:110, E:1111 と符号化すると均符号長 2.1666… ビット

情報源の情報量

ハフマン符号化で達成された 2.1666… ビットは、良い値である。

21

5B

7

3C

4

2A

2

1D

1E

12

0 10

0 1

0 1

0 1

B 0

C 10

A 111

D 1100

E 1101

左の木による符号化

同じ例で違う木による符号化

B 0

C 10

A 110

D 1110

E 1111

前の例での符号化

22

0.02G

0.01H

0.030.04F

0.070.05E

0.12

0.08D

0.1 C

0.18

0.30.2 B

0.50.5 A

1.00 1

0

0

0

0

0

0

1

1

1

1

1

1

確率 Code

A 0.5 0

B 0.2 10

C 0.1 1100

D 0.08 1101

E 0.05 1110

F 0.04 11110

G 0.02 111110

H 0.01 111111

Huffman Code の例

23

Shannon 最適に近づける ---反復を用いる

生起確率 ハフマン符号化

A 2/3 1B 1/3 0

平均符号長

0.11 l

ハフマン符号化しても、少しも良くなっていない。

情報源のエントロピーの値

.....918295.0323log)}

31(log

31)

32(log

32{ 222 H

24

生起確率 ハフマン符号 単純符号

AA 4/9 0 00AB 2/9 10 01BA 2/9 111 10BB 1/9 110 11

ハフマン符号化の平均符号長

.....88888.19

17913

923

922

94'2 l

もとの1文字あたりの平均符号長

.....944444.01817'

21

22 ll

....91829.0.....944444.00.1 21 Hll

ゆえに以下のように情報源のエントロピーの値により近づく

25

3.5.3条件付きエントロピー

jjj

jjii j

jijii j

j

ji

j

jij

i j

jjj

YHYXHyypYXH

yyxpyxpyxp

ypyxp

ypyxp

yp

yyXHypYXH

)(),()log()(),(

)log(),()),(log(),(

))(

),(log(

)(),(

)(

)|()()|(

H(X|Y):Yを受信したときのXのエントロピー

(エントロピーはあいまい度のこと)

26

例 情報伝送速度

入力側で0,1を1/2 ずつの確

率で毎秒 1000個発生するとし、

通信路の誤り確率を 0.1 とす

る。すると、

0.9

0.90.1

0.1

1 1

0 0

1000))21log(

21)

21(log

21(1000)( XH ビット/ 秒

が発信されるので、900 ビット/秒 の情報が受け取れるかというとそうではない。出力が 0でもとの信号が正しく0であった確率は0.9, 出力が0でもとの信号が1であった確率は0.1, 信号1についても同様なので, あい

まい度は

469)1.0log1.09.0log9.0(1000)|(

YXH

ビット/ 秒

27

3.5.4 相互情報量

);()|()()()(),(

)|()();(

XYIXYHYHYXHYXH

YXHXHYXI

I(X;Y): 受信Yを観測して得られるXに関する情報量

だから伝送速度は R=1000-469=531 ビット/秒であ

る。わずか1割の雑音で情報量はほぼ半分に減っ

てしまうのである。

28

通信路容量 C: 情報伝送速度 R は、入力 の

確率 によって決まる。このRの最大値を通信路

容量と呼ぶ。

ixip

情報伝達速度 R:1秒当たり受信によって得られる

情報量 R を情報伝送速度と呼ぶ。このとき、

);()|()( YXIYXHXHR

})(|);(max{ ,...,1 niixpYXIC

29

通信路容量

• Xの確率分布を変更したときの相互情報量I(X;Y)の最大値

• 符号化の方法によって相互情報量を通信路容量に近づけることが出来る

30

通信路容量Cの計算例

情報の構造の一様性を仮定する。すると、

,log)|(1

m

ijji ppxYH

m

ijj ppXYH

1log)|(

ゆえに

m

ijj ppYHXYHYHC

1log)}(max{)}|()(max{

H(Y)が最大の値を取るのは のときだからmxp i1)(

m

jjj ppmC

1log)log(

31

0p

1 1

1-p

1-p

m=2,誤り率: p

ppppppppC

22

222

log)1(log)1(1log)1(log)1(2log

この通信路の容量は

(注:p=1/2 ならば C=0)

32

このことは、雑音の混入が避けられない通信路で、誤

りのない通信ができる。しかも、そのときの情報伝送速

度を最大 C まで高められるという、一見常識に反する

ことを意味するので、通信理論にたずさわる人たちを

驚かせた。

定理(誤りを持つ通信路の基本定理)

容量 C の通信路と1秒当たりKのエントロピーを持

つ情報源があるとき、K<C ならば、情報源の情報

をこの通信路を通して任意に小さい誤り確率で送れ

るような符号化が存在する。

33

熱力学的観点から:熱力学のエントロピーと情報エントロピーの関係

・ 1 ビット 0.7 k erg (エルグ)

ボルツマン定数

・ 1 erg は 1 dyn の力で 1cm 物を動かしたときの仕事・エネルギー のCGS単位

・ 1 dyn は 1 g の質量に の加速度を与える力の大きさ (約98グラムの重さ)

KJk /1038.1 23

2/1 scm

34

3.2 情報通信

クライアントサーバ の例• WWW

WebブラウザWebサーバHTTPプロトコル

• 電子メイルメイルソフトメイルサーバ

imap, pop, 受信のプロトコルsmtp 送信のプロトコル

35

メイル受信プロトコル(POP と IMAP)

[参照] HWB 10.4.2 POPとIMAP

受信サーバ

端末

BA

POP方式 IMAP方式

BA

メイル メイル

メイルが受信される

端末Aで読む 端末Bで読む 端末Aで読む

端末Bで読む再びAで

読む

36

3.3.3 通信の秘密と相手の認証

・ 共通鍵暗号(対称鍵暗号)

–送信する暗号化での鍵と受信での復号化の鍵が同じもの。(シーザー暗号など)

• 公開鍵暗号(非対称鍵暗号)

–暗号化と復号での鍵が違うもの(RSA方式など)

37

共通鍵暗号(対称鍵暗号)

• ヴァーナム使い捨て鍵暗号 (Vernam‘s one-timepad) 全 て の 受 動 的 攻 撃 に 耐 え ら れ る 完 全 秘 匿(perfectly secure)な暗号系

• 欠点

– 文書と同一の長さの真正ランダム鍵が必要

– その鍵が、安全に届けられなければならない(ワシントンモスクワ間での信頼できる特使により運搬されていたそうである)

3838

共通鍵暗号

• 一つの鍵で暗号化と復号化が両方できるモデル 鍵を秘密に保つ必要がある

39

公開鍵暗号

P Aさんの公開鍵

E Aさんだけが知っている秘密鍵

平文 暗号文 平文

Aさんだけが復号化できる

平文 暗号文 平文

発信者が A さんであると分かる

P で暗号化 E で復号化

P で復号化E で暗号化

40

P Aさんの公開鍵

E Aさんだけが知っている秘密鍵

K 共通鍵

平文 暗号文 平文

共通鍵K 暗号 KAさんだけが復号化できる

K で暗号化 K で復号化

P で暗号化 E で復号化

41

公開鍵暗号(ハッシュ関数)

別掲PDFファイルへ

42

署名と検証

これによりメッセージの発信者が特定でき、かつメッセージが改ざんされていないことが分かる。別掲PDFファイルへ

43

3.3 交換の方式• 通信の交換の方式

(1) 回線交換

(2) パケット交換

--パケットごとに送られて受信側に到達すると、受信側でもとに組み立て直す。

– ネット内でのパケットの大きさは、数十から数千バイト程度の大きさ。

– イーサネット内では 1500 Byte

44

交換方式の特性交換方式 回線 (電話) パケット (インター

ネット)

流れる情報の種類 音声のように途切れては困るもの

WWWのように時間

がかかっても構わないもの

料金体系 回線を占有している時間に対して課す

全体の設備を使う権利に対して課す

端末の能力 単純でよい データをためる・送り直す等の能力が必要

交換機の能力 高くないといけない 比較的低い

3.4 インターネット

• ネットワークの集合体と通信 (3.4.1)• 階層プロトコル (3.4.2)• IPアドレスとポート番号 (3.4.3)

46

ルーターのネットワーク番号

各機器は同じネットワーク番号

ルーター

各機器はホスト番号を持つ

インターネットの世界

47

• IPアドレス: インターネット内の住所

8ビット. 8ビット.8ビット.8ビットの32ビット

これらの8ビットは通常0~255の整数で表す

(ゆえに 172.16.11.13 のように表示する)– インターネットに接続するホストは、すべて一意

のアドレスを必ず持つ

– 連続する番号が意味を持つ• 組織毎にIPアドレスのまとまりで使用を許可される

• ネットワークの住所を表す

IPアドレス

48

IPアドレスは、ネットワーク番号と機器のホスト番号をつ

なげたもの。

最初の何ビットがネットワーク番号となるかは、ネットワー

クごとに異なる

IPアドレスネットワーク番号 ホスト番号

左から何桁がネットワーク番号になるかは、ネットマスクで表される。

49

IPアドレスとネットマスクの例

・ 172.16.30.6 / 255.255.255.0

ネットマスクの値が 111....1100000000 で左

から24 個1が並んでいるので24ビットまでが

ネットワーク番号、その後がホスト番号。

・ 上を 172.16.30.6 /24 と表記しても、同じ意味

である。

50

TCPTCP

IP IP

HTTP

ブラウザ Webサーバ

ヘッダ データ

データ

51

1 2 3 4

12 4

インターネット

データ

1 2 3 4

3

送信側:データの分割

受信側で並べ直してデータを復元する

TCP によるデータの分割とパケットの送信、受信

52

パケットを作る

1. TCP がデータの前に TCP ヘッダをつける。

2. IP が TCP ヘッダの前に IP ヘッダをつける

3. IP がさらに IP ヘッダの前に MAC ヘッダをつける。

4. これでパケットが完成する

MAC IPヘッダ TCPヘッダ データ

MACアドレスとはイーサ-ネットで使われる機器固有の48ビット論理アド レス。

MACアドレス(マック・アドレス、Media Access Control address)

ネットワーク上で、ネットワーク機器のハードウェアに(原則として)一意に割り当てられる物理アドレスである。MACアドレスの表現には、04-A3-43-5F-43-23 や32:61:3C:4E:B6:05 といったオクテット表現を用いる。

1オクテットは8ビットに相当する。オクテットに似た情報量の

単位にバイトがある。多くの場合、バイトとオクテットは同じだが、1バイトが何ビットに相当するかは文脈によるため、必ずしも1バイトが8ビットとは限らない。オクテットは必ず8ビットである。オクテットは通信分野でよく出てくる。

54

A. IP ヘッダ(その中身)ーネットワーク間通信に使う

1. 生存期間(TTL)2. プロトコル番号

3. 送信元 IP アドレス

4. 発信元 IP アドレス

5. など

55

B. TCPヘッダ(その中身)アプリケーション間の通信に使う

1. 送信元ポート番号

2. 宛先ポート番号

3. シーケンス番号-このパケットデータの先頭位置が、このパケットの何バイト目かを受信側に知らせる

4. ACK 番号

5. など

56

• ポート番号 計算機では、ネットワーク通信

を行うアプリケーションが複数同時に働いて

いる。アプリケーションごとの通信で、相手の

計算機の中のどのアプリケーションと通信す

るのかを特定する必要がある。そのために、

開いているアプリケーションごとにポート番号

(16ビット)を付与して、区別できるようにして

ある。

57

ドメイン名

• 32ビットの IPアドレスは人間には扱いづらい。

• ドメイン名:IP アドレスのかわりに人間が使うためのもの・階層化されている

– 各ドメインには、ドメイン名サーバ(DNS)というコンピュータが用意されている

– DNSとインターネットを使って通信して IP アドレスを調べる

mail. ecc. u-tokyo. ac. jp情報基盤センタ

東京大学学術機関

日本

(WWW シミュレータを実演してみせる)

58

DNSによるIPアドレスの解決

root

ukdejp

ac

u‐tokyo

klee

tu‐berlin

W W W

co

1

2

3

4