かぎ
HTTPSのためには、ウェブ上でプライバシー、完全性、認証を提供する方法が必要です
このしくみを「暗号化」と呼んでいます
これから、2つの種類の暗号アルゴリズムについてお話しましょう
わたしはカギをどこに置いたかな?
さて、
共通鍵暗号アルゴリズムから始めましょう
このシナリオでは、メッセージを暗号化と復号するのに、カギは一つだけです
ピー子にメッセージを送る前に、メッセージをカギで暗号化します
暗号化プロセスは、メッセージを箱に入れてカギをかけるようなものと考えられます。
カギのコピーを持っている人だけが、箱を開けてメッセージを読むことができます
正しいカギを持つ人に渡ったときしか、箱は開けられないことが保証されています
ピー子が箱を手に入れたとき、カギを使って箱を開け、メッセージを読みます
ここで、カギを秘密にしておかなければならないことは重要です。 カギを暗号化されない状態で共有したり、箱と一緒に送ってはいけません。ポケットにしまっておいてください。
カギを持っている人は誰でも箱を開けられることを覚えておいてください
暗号化を理解するのに箱を使うのは良い表現ですが、本当に簡単にしすぎています
修正していきましょう
実際には、カギを使わずにメッセージを見た人は、意味のないテキストしか表示されません
このテキストは、暗号化アルゴリズムにより生成されます
これは一連のステップを経て、テキストがスクランブルされたという洒落た言い方です
テキストは何回も変換され拡散されます。どの都度、メッセージは難読化されます。
メッセージを復号するには、同じステップを逆順で行うだけです
暗号鍵はメッセージに混ざっているので、暗号アルゴリズムを知っていたとしても、カギがなければメッセージは意味がないままです。
カギはこのように見えます
一つの大きな問題は、共通鍵は共有するのが難しいということです
カギをどう渡すか、細心の注意を払わなければなりません
さて、公開鍵暗号を説明しましょう
共通鍵暗号との大きな違いは、2つのカギがあるということです
一つは公開鍵、もう一つは秘密鍵です。これらはペアで一緒に使います
公開鍵は誰にでも共有することができます。暗号化しないまま送って、ステッカーにしたり、タトゥーにします。好きなようにできます。それは公開されているので
私はタトゥーがすきです
ワン太はピー子に公開鍵を送ります
そしてピー子は、その公開鍵で暗号化してメッセージを送り返します
言い換えれば、ピー子はメッセージを箱の中に入れてワン太の公開鍵でカギをかけます
ワン太はメッセージを読むのに自分の秘密鍵を使います
これが主な考え方です。その秘密鍵だけが、ペアになった公開鍵でカギをかけた箱を開けることができるのです
別のメッセージを送るのにピー子の公開鍵を使います
これは、2つのカギを持つ人だけがメッセージを開けることをわたしたちは知っているのでプライバシーだけでなく、認証のためにも良い方法です。
次回は、SSLでサイトに接続するときに共通鍵暗号と公開鍵暗号がどのような役割をしているのかを見ていきましょう