記事

インターネット暗号通信プロトコルSSLの原理

1/2

 前回当ブログでインターネット上の暗号化ソフトSSLに重篤な欠陥があると一般の読者に警鐘を鳴らしました。

ネットショップ利用者は早急にパスワードの変更を!~暗号化ソフトSSLの欠陥・Heartbleed(心臓出血)は「壊滅的」

http://d.hatena.ne.jp/kibashiri/20140414

 重大な問題にも関わらず、予想通りといいますか読者の反応は今ひとつでありました。

 この問題、メディアの取り上げ方も地味でありますが、そもそも記者のみなさんが暗号通信とかSSLをどれほど理解して記事をおこしているのか、あまり理解されていない事は容易に想像できます。

 前回のエントリーに対してもある読者からそもそもSSLって何なのさ、知識もないし関心もない、という冷たい(苦笑)メールを頂きました。

 私は副業で工学系の大学や専門学校でネットワーク工学を外来講師として教えています。

 暗号通信やSSLの原理は専門知識のない人には理解するのはハードルが高いようです。

 そこで今回はSSLについて、専門知識を有しない読者を対象に暗号通信のいろはから理解いただけるように、説明を試みます。

 なお、難しい数学的理論や専門性の高い用語は省いて説明を試みますので、各暗号技術におけるハッシュ計算などの理論的説明は削ぎ落として説明いたします。

 ・・・

■暗号鍵が文字通りキーとなる暗号通信~共通鍵暗号方式

 ご存知のとおりデジタル通信においてはすべての情報はデジタル信号で送られます。

 例えばアルファベットの大文字半角文字'A'は0と1のデジタル信号では8ビット’0110 0001’で扱われます。

 送信側が暗号を掛けずそのままのビット列(以下暗号を掛けないそのままの情報を平文、暗号を掛けた情報を暗号文と記す)を通信して正しい受信者に送ろうとしてしまえば、ネット上第三者はその情報をのぞき見れば、それが’0110 0001’というビット列であること、すなわち文字'A'であることを盗み見可能です。

 そこで通信の暗号化がなされます、その際キーとなるのは文字通り暗号鍵(あんごうかぎ)と呼ばれるビット列です。

 送信側と受信側であらかじめ秘密裏に共通の暗号鍵暗号アルゴリズムを共有します。

 暗号鍵といってもただのビット列ですが、説明を簡単にするために暗号鍵を’1111 1111’の8ビットを採用したとしましょう。

 採用される暗号アルゴリズムは、やはり説明を簡単にするために、排他的論理和という論理演算にいたしましょう。

 排他的論理和とは、演算対象の二つのビットが排他的すなわち0と1の組み合わせなら結果は1、排他的でないすなわち0と0か1と1ならば結果は0となる論理演算です。

 送信側は送りたい平文に暗号鍵と暗号アルゴリズムを使って暗号化し暗号文を作成します。

 文字'A'すなわち’0110 0001’に、暗号鍵すなわち’1111 1111’を使って、暗号化すなわち排他的論理和を演算すれば、暗号文すなわち’1001 1110’が作られます。

 送信側はこの暗号文をネット上正しい受信者に通信致します。

 ネット上で第三者がこの情報’1001 1110’をのぞき見ても、それが文字'A'であることを解読することは、使用された暗号鍵と暗号アルゴリズムを知らない限り不可能です。

 一方正しい受信者は暗号文’1001 1110’を受信したら自分の持っている暗号鍵’1111 1111’を使って、暗号文を解読して平文に戻します(復号といいます)。

 すなわち暗号文’1001 1110’に、暗号鍵すなわち’1111 1111’を使って、復号化すなわち排他的論理和を演算すれば、平文すなわち'A'である’0110 0001’がよみがえります。

 このように送信側と受信側で秘密裏に世界でただひと組の共通の暗号鍵を共有することで暗号通信を行うことが可能です。

 この方式を共通鍵暗号方式と呼びます。

■図1:共通鍵暗号方式

f:id:kibashiri:20140303145325j:image



■不特定多数と可能な暗号通信~公開鍵暗号通信

 次に不特定多数と暗号通信を可能にする技術を説明しましょう。

 送信側を大切な個人情報を送信するネットショップのユーザー、受信者側をその個人情報を受信するネットショップ側と仮定すると理解しやすいでしょう。

 まず受信者側では暗号化する暗号鍵を広くネットで公開し誰もがダウンロード可能とします。

 ここでこの公開鍵は広く不特定多数のユーザーがダウンロード可能となります。

 ただしこの公開鍵は暗号を掛けることは可能ですが、暗号を解読して平文に戻す、すなわち復号することはできないように工夫されています。

 この暗号を解読できる鍵は、世界でたったひとつだけ受信側が秘密裏に持つのです。

 こうして不特定多数の送信者が受信側に暗号通信可能となります。

 第三者がのぞき見てもこの暗号文を解読することは不可能です。

 不特定多数からの暗号文は正しい受信者のみ、すなわち秘密鍵を持っているネットショップ側だけが復号可能となります。

 ただしこの方式では暗号通信は一方通行である点に注意が必要です。

 この方式を公開鍵暗号方式と呼びます。

■図2:公開鍵暗号方式

f:id:kibashiri:20140303150831j:image


あわせて読みたい

「サイバーセキュリティ」の記事一覧へ

トピックス

ランキング

  1. 1

    よしのり氏「日韓合意は失敗」

    小林よしのり

  2. 2

    羽生竜王vs藤井四段 対局は幻に?

    大村綾人

  3. 3

    橋下氏が岩上氏を名誉毀損で提訴

    橋下徹

  4. 4

    よしのり氏 徴兵制の実現は無い

    小林よしのり

  5. 5

    舛添氏 死去の西部邁氏を追悼

    舛添要一

  6. 6

    電車内出産の批判に「闇感じる」

    中村ゆきつぐ

  7. 7

    松本人志 小室謝罪に「何の罪?」

    女性自身

  8. 8

    野村克也「寂しくて仕方がない」

    NEWSポストセブン

  9. 9

    辺野古デモの訴える非暴力に疑問

    和田政宗

  10. 10

    「池の水~」はテレ東に合わない

    文春オンライン

ランキング一覧

ログイン

ログインするアカウントをお選びください。
以下のいずれかのアカウントでBLOGOSにログインすることができます。

コメントを書き込むには FacebookID、TwitterID のいずれかで認証を行う必要があります。

※livedoorIDでログインした場合、ご利用できるのはフォロー機能、マイページ機能、支持するボタンのみとなります。