2020/04/04 17:07:01
| 改訂履歴 | ||
|---|---|---|
| 改訂 0.00 | 2015/03/01 14:41:02 | aaauuue |
初版 | ||
| 改訂 0.01 | 2015/03/06 21:45:14 | aaauuue |
説明の修正 | ||
最近は物騒な世の中になってきました。これはインターネットの世界も例外ではなく、アメリカのスノーデン氏がNSAのメールの覗き見や盗聴などを白日の元に晒した事は記憶に新しいと思います。その中で彼は「インターネットの盗聴の可能性を少しでも軽減する方法は堅牢な暗号を正しく運用する事だ」というような趣旨の発言を行っています。
この暗号という技術は一般人には手の届かないものなのでしょうか。実は、少しの手間をかけるだけで、誰でも費用をかけずに暗号の技術の恩恵に預かれます。それが公開鍵暗号です。以下では、この公開鍵暗号について説明を試みます。というのも、この文章を書いている筆者も公開鍵暗号を使用するのは初めてなので、分からない事だらけです。その為、説明をするというよりは、調べた事をまとめたものという方が適切な表現になると思います。それでも読んでみようと思う方は暫くお付き合い下さい。
まず、「公開鍵暗号」とは何か、という所から始めたいと思います。
普通、「暗号」と言えば、秘密にしたい物を一定の規則に従って処理を行うという事を連想すると思います。この「一定の規則」というのが暗号の「肝」であり、これが複雑であれば複雑である程、強力な暗号であると言えます。当然、この「一定の規則」は暗号を使用する者だけの秘密であり、外部へ漏らす事は暗号の暗号としての機能が無効となる事を意味しました。古来より暗号の使用者は一定の規則を頑に秘匿し様々な事柄を秘密にしてきましたし、その秘密を知らんとする者は様々な手を尽して一定の規則を推測しようとしました。また、暗号の開発者は、一定の規則を推測する「解読者」が容易に解読できないように、より複雑で、しかし使用するには簡単な一定の規則を模索し続けてきました。
このようにして暗号の技術は発展してきましたが、このような形態の暗号には致命的な欠点があります。それが、「一定の規則」の伝達方法です。暗号を使用してある種の情報を秘密にする場合、情報の発信者と受信者の双方が「一定の規則」を知っていなければなりません。「一定の規則」を手渡し出来るならそれに越した事はありませんが、時には直接手渡しする事が難しい場合があります。昔はそれでも何とかなっていたのですが、インターネットが登場すると事情が少し変わってきます。解読者達は、この「一定の規則」を推測するのではなく、「一定の規則」が伝達される隙を狙って盗み見るという事をし始めたのです。このような中で考え出されたのが、冒頭でも出てきた「公開鍵暗号」です。ちなみに、「一定の規則」を発信者と受信者双方が使用して行う暗号を「共通鍵暗号」と言います。
「公開鍵暗号」は1960年代、イギリスのGCHQで考案されました(http://ja.wikipedia.org/wiki/%E5%85%AC%E9%96%8B%E9%8D%B5%E6%9A%97%E5%8F%B7)。この暗号の最大の特徴は、共通鍵暗号で言う「一定の規則」を二つ用意して、片方の規則は秘密にし、もう片方の規則は誰にでも公開するというものです。これによって共通鍵暗号の欠点であった一定の規則の伝達における盗み見という問題が解決される事になりました。
「仕組み」で公開鍵暗号というのは何かというのを説明しました。以下では公開鍵暗号の手順の説明を行います。ここでは、公開鍵暗号の説明で用いられている用語の一部を筆者なりに解釈して置き換え(表1「用語の置き換え」)ています。ご注意下さい。
AさんはBさんにインターネットを利用してファイルを送りたいと思っています(図2「gpg_phase1a」)。
しかし暗号を使用しないで送ってしまうと、図2「gpg_phase1a」のCのように悪意のある人物に盗み見られるかもしれません。
そこでAさんBさんは、公開鍵暗号の技術を導入してファイルのやり取りを行う事にしました。Bさんは、公開鍵暗号の定義に従い、封筒と秘密の鍵を準備します(図3「gpg_phase2」の赤い色の封筒と紫色の鍵がそれです)。この二つにはそれぞれ特徴があって、以下のようになっています。
AさんはBさんの準備した封筒をインターネット上から探してきて送りたいファイルを封筒に入れます(図4「gpg_phase3」)。
正しくファイルが封筒に入ったのを確認したAさんは、それをインターネット経由でBさんに送ります(図5「gpg_phase4」)。
もし仮に図6「gpg_phase4a」のCのように、悪意のある人物が伝達中の封筒を盗み見ようとしても、list:[封筒と秘密の鍵の特徴]の1で説明した通り、秘密の鍵を持っていないCは途方もない力を発揮しなければ封筒を開ける事ができず、結果、中のファイルは見られる事はありません。
封筒を受け取ったBさんは、自分の秘密の鍵で封筒を開け、中のファイルを読む事ができます(図7「gpg_phase5」)。
以上が、公開鍵暗号の手順です。
上記の説明に使用した図は、以下のサイトのアイコンを使用させてもらっています。この場を借りてお礼申し上げます。
Themify Icons(http://themify.me/themify-icons)