暗号とは

暗号技術とは,自分(送信者)が 相手(受信者)に伝えたいメッセージなどの情報(データ)を, 暗号データに変換(これを暗号化という)することによって, 暗号データが盗聴者(送信者と受信者以外の人) に盗まれても盗聴者には元の情報の意味が わからないようにする技術である. 暗号技術は,安全に秘密の情報を送るために使われる.

暗号技術は,2000年以上前から軍事目的に利用されていた. その中でも,シーザーが使用したシフト暗号(シーザー暗号) は 有名で、今でも言葉遊びに使われたりする. シフト暗号とは,文字通り元の文章の文字を 数文字シフトした文が暗号文として使用されるような 暗号技術である. 例えば, 「おはよう」 という文章を 五十音順に3文字シフトさせると 「くへるか」 という文章になり, 『この文はすべての文字を3文字シフトしている文である』 という事実を知らない人では, 「くへるか」 がどのような意味の文章か見当もつかないだろう. もし,シフトした文章を受け取った人が 『この文はすべての文字を3文字シフトしている文である』 という事実を 知っていさえすれば, 「くへるか」 を 逆に3文字シフトすることにより元の文「おはよう」 を 得ることができるわけである.

暗号にはシフト暗号のほかにも いろいろな方式が存在するのだが, すべての暗号の基本的な原理は次のようになる.

  • まず,送信者と受信者は,あらかじめ 何らかの方法により「鍵」となる情報データを 共有しておく.
  • 次に,送信者は共有した鍵情報を使用して 送りたいデータを暗号化し,暗号化されたデータを受信者に 向けて送信する.

  • 受信者は,受け取った暗号化されたデータを, あらかじめ共有しておいた鍵情報を使用して元のデータに 戻す.
暗号の原理 図1: 暗号の原理

このとき,正規の受信者以外は, 鍵情報を知らないため,暗号化したデータを盗聴しても 元のデータに戻すことができないので, 元のデータを知ることができない.

鍵情報とはどのような情報だろうか. 例えば,シフト暗号においての鍵情報は 「すべての文字を何文字分シフトするか」 という情報にあたる. 鍵情報は,暗号方式によって様々なものがある.

このように,実は暗号というものは使おうと思えば 誰でも使うことができるわけである. しかし,ここで問題になるのは, 「どのようにして鍵の情報を共有するか」ということである. 鍵情報を共有する最も単純な方法としては, 送信者と受信者が直接会うということが考えられる. しかし,いつも2人が直接会うことができるとは限らない. もしも,二人が会うことなしに 通信などを用いて鍵情報を共有することができれば 便利だろう.そのような方法はあるのだろうか.






電子透かしにも興味がある

トップページにもどる