2004年08月01日(日)更新 |
■重要なドキュメントへの署名
たけち: まず、ここでは暗号(あんごう)について知っておこうね。 さらら: 暗号? XMLと何か関係あるの? たけち: うん、たとえば、さららが重要なドキュメントをもらったとするね。たとえば、税に関する報告書とか、法律案とかね。 さらら: えぇ。それってとっても大事だわ。それをみて私がサインしたり印を押したりするんだものね。 たけち: そうだね。でも、もし、さららのサインや印を、だれかが偽造したりしたらどうなると思う? さらら: それは大変なことになるわ。だって、私の知らないところで勝手に法律を発行したり、税額をごまかしたりされると。。。考えただけでもぞっとするわ。 |
たけち: そうだよね。同じようにXMLドキュメントも勝手に偽造されたりしたら困るよね。 さらら: ええ。でも、XMLドキュメントって、テキストデータだから勝手に編集できちゃうわ。あっ、じゃあ、大事なドキュメントにはXMLを使っちゃいけないのかしら。 たけち: でも、それだと困るよね。そこで、「確かに"さらら"がサインしたXMLドキュメントです。」というようなしくみが必要なんだよね。 さらら: そういうことなのね。でも、それと暗号っていうのと、どんな関係があるの? たけち: うん、それをこれから少しずつ学んでいこう、ってこと。 さらら: わかったわ。 |
■暗号ってなに?
さらら: で。暗号って? たけち: 暗号は、データを他人に読まれないように、意味が分からないデータ(暗号データ)に変換して相手に渡して、受け取った方で暗号データを元の(意味のある)データに戻す仕組みなんだよ。 さらら: メールなんかも覗かれちゃうの? たけち: うん。残念だけどね。インターネットの世界では、電子メールも覗き見しようと思えばできちゃうんだよ。また、パソコンの中のデータなんかも勝手にコピーされて持っていかれても困るよね。 さらら: そうね。じゃあ、大事なメールやデータなんかは、その、暗号にしておくのがいいのね。 たけち: そうなんだね。次の図に、暗号を使った通信の仕組みのイメージを載せておくね。 |
|
■シーザー暗号
さらら: 暗号ってどうやって作るのかしら? たけち: まず、有名な暗号の例として、シーザー暗号について簡単に見てみよう。シーザー暗号は、シーザーが使った暗号として有名なんだ。 さらら: シーザーってだれ? たけち: 古代ローマの軍事的な指導者だった人だよ。敵の国に通信文の内容が分からないようにするために、この暗号を使ったと言われているんだ。 さらら: そうなんだぁ。 たけち: どんな暗号かと言うと、 さらら: う〜ん。。。具体的に教えて。 |
たけち: たとえば、"MANYO"という文字を暗号化してみることを考えよう。このとき、それぞれの文字を、アルファベット順に見て何文字か後ろの文字と置き換えるんだ。たとえば、ひとつだけうしろの文字に置き換えてみるとどうなる? さらら: えっと。。 |
たけち: そうだね。この"NBOZP"が暗号文になるね。 さらら: そっか。これだと意味が分からないわね。で、この"NBOZP"を受け取った人は、これと逆のことをすればいいよね。 たけち: そうだね。この場合、「アルファベットの文字を、特定の数だけ後ろにある文字と置き換える。」という処理を暗号化規則(暗号化アルゴリズム)といって、「何文字後ろの文字と置き換えるかを示す数(今の例だと"1")」を鍵(かぎ)というんだ。
さらら: ええ。鍵を"3"にすると、平文"MANYO"は、暗号文"PDQBR"になるのね。 |
たけち: そうだね。このほかにも暗号にはいくつも種類があるんだけど、暗号化規則(暗号化アルゴリズム)と鍵(かぎ)によって決まるんだね。 さらら: なるほどね。 たけち: じゃあ、今回は暗号ってどんなことなのかを学んだね。。次からは、共通鍵暗号と公開鍵暗号について学ぼうね。 さらら: は〜い!! (なんのことかしら。。。 (^ ^; ) →次回は共通鍵暗号方式です。 (^ ^; |
■(注) シーザー暗号は、単一換字式暗号(たんいつかんじしきあんごう)のひとつです。単一換字式暗号では、平文のある文字が常に同じ文字に変換されます。たとえば、"a"が常に"c"に変換され、"b"が常に"d"に変換されるような暗号方式です。 |