XML署名(2)  共通鍵暗号方式

2004年08月15日(日)更新


■シーザー暗号の復習

たけち: 前回は暗号(あんごう)ってなにかということを簡単にみたね。

さらら: えぇ、シーザー暗号の例で学んだわ。

たけち: うん。ここで、復習なんだけど、データの暗号化と復号には何が必要だったかな?

さらら: えっ。え〜っと。。。鍵と。。。

たけち: 暗号化規則(暗号化アルゴリズム)鍵(かぎ)だったね。

さらら: あっ、そうそう。(^ ^*

たけち: シーザー暗号の場合は、暗号化規則(暗号化アルゴリズム)鍵(かぎ)の関係は次のようだったね。

【シーザー暗号の暗号化規則と鍵】

  • 暗号化規則(暗号アルゴリズム):アルファベットの文字を、特定の数だけ後ろにある文字と置き換える。
  • 鍵: 何文字後ろの文字と置き換えるかを示す「数」が鍵です。


■共通鍵暗号方式

さらら: そうだったわね。鍵が「3」の場合には、「MANYO」という文字列が暗号化されると「PDQBR」になるのよね。

たけち: そうだね。じゃあ、暗号化された「PDQBR」を復号するにはどうするのかな?

さらら: えっ〜と。。同じ「3」だけ前の文字と置き換えればいいのよ。

たけち: そうだね。「1」とか「2」だけ前の文字と置き換えるとうまく行かないよね。

さらら: もちろんだわ。暗号化したのと同じ「3」でないと元に戻らないわ。

たけち: うん。このように、暗号化するときと復号するときに同じ鍵(共通の鍵)を使う暗号方式を共通鍵暗号方式というんだ。

さらら: そうなの。

共通鍵暗号


■共通鍵暗号の欠点

たけち: ちょっと、ここで共通鍵暗号化について少し考えてみよう。たとえば、さららが僕に秘密のメールを送るとしようね。

さらら: はい。だれかに覗かれてもメールの内容が分からないように暗号化するのね。

たけち: そのとき、さららがそのメールを暗号化するときに使った鍵を僕にどうやって渡す。

さらら: そうねぇ。。。やっぱりメールで送ろうかしら。

たけち: そんなことをしたら、メールを覗き見している人が鍵を見つけて、その鍵で暗号化されたメールをそのまま複合化されちゃうよ。

さらら: あっ、そっか。。。。じゃあ、手渡ししようかしら。困ったわね。

たけち: それから、さららが僕にだけ送るメールを暗号化するだけならいいんだけど、額田(ぬかた)、草壁(くさかべ)、大海人(おおあま)、鎌足(かまたり)、大伯(おおく)、十市(とおち)などにそれぞれ他の人に内容を知られないように暗号化したメールを送るとするよね。そうしたら、それぞれの相手先ごとに違う鍵を使わなくちゃいけないんだよ。

さらら: わぁ〜。そんなに鍵が必要だなんて、どれがどれだかわかんなくなりそう。面倒だわね。

たけち: そうだね。この共通鍵暗号方式には、いくつもの方式があるんだけど、情報の送り手と受け手とで同じ鍵を使うということから、今考えたような欠点があるんだ。

共通鍵暗号方式で複数の人に暗号化データを送るとき

【共通鍵暗号の欠点】

  • 通信相手に鍵を安全に届ける方法を別に考えなければならない。
  • 通信相手の数だけ鍵を保有・管理しなければならないので、多人数との通信の場合、管理や通信処理が複雑になる。

さらら: だいたいのイメージはつかめたけど、じゃあどうしたらいいのかしら。

たけち: うん。この共通鍵暗号方式の欠点を解消する方式として、公開鍵暗号方式というものが考えられたんだ。

さらら: 公開鍵暗号方式??

たけち: じゃあ、今回はこれまでにして、次回は、公開鍵暗号方式について学ぼうね。

さらら: はっ、は〜い!!

→次回は、公開鍵暗号方式です。 (^ ^;


■(注) 共通鍵暗号方式は、秘密鍵暗号方式とか共有鍵暗号方式などとも呼ばれています。共通鍵暗号方式として有名な方式に、DES(Data Encryption Standard)、それを改良したTriple DESなどがあります。