認証局は、インターネットセキュリティの最も重要な基盤の1つです。 認証局は、誰も他の人を信用していない最初のうちは、すべての人から信頼される人です。 ブラウザやウェブアプリで使われるHTTPSだけでなく、暗号化された電子メール、署名入りのソフトウェアアップデート、VPNなど、さまざまな場面で認証局は重要な役割を担っています。 ここでは、典型的な HTTPS の例として、この特殊な状況における CA について学びます。

インターネットは信頼されていない通信チャネルです。 ブラウザで古い HTTP サイト http://www.example.com から情報を送受信する場合、パケットの途中でさまざまなことが起こります。

  1. 悪意のある行為者は通信を傍受し、データを自分用にコピーしてから、自分または話していたサーバーに向けてチャネル上で再び送信することができます。 どちらの当事者も知らないうちに、情報は危険にさらされています。
  2. 悪意のある行為者は、チャネル上で送信される情報を変更することができます。 ボブはメッセージ「x」を送ったかもしれませんが、アリスはボブから「y」を受け取ることになります。これは、悪い行為者がメッセージを傍受し、それを変更したためです。 言い換えれば、メッセージの完全性は損なわれています。
  3. 最後に、最も重要なことは、話している相手が本当にその人であることを確認する必要があるということです。 example.com ドメインに戻ります。 私たちに返信したサーバーが本当にwww.example.com の正当な所有者であることを確認するにはどうしたらよいでしょうか? ネットワーク上のどの地点でも、別のサーバーに誤って誘導される可能性があります。 どこかのDNSは、www.example.com のようなドメイン名を、公共のインターネット上のIPアドレスに変換する役割を担っています。 しかし、あなたのブラウザは、DNSが変換したIPアドレスを確認する方法がありません。

最初の2つの問題は、それがサーバーにインターネット上で送信される前にメッセージを暗号化することによって解決することができます。 つまり、HTTPSに切り替えることによってです。

Initiating Encrypted HTTP sessions

安全でないチャネルでの暗号化通信の主な問題は、「どのように開始するか」です。 鍵という用語に馴染みがない場合、鍵は、安全でないチャネルで送信される前にデータが暗号化される、非常に長くランダムに生成されるパスワードだと考えてください。 さらに、www.example.com と主張するサーバーから送信された鍵が、本当にそのドメイン名の実際の所有者であると、どうやって信頼できるのでしょうか。 正当なサイトを装った悪意のある当事者と暗号化通信を行っても、その違いがわからない可能性があります。

Certificate Authorities

LetsEncrypt や DigiCert、Comodo、その他ドメイン名用の TLS 証明書を提供するいくつかのサービスについて聞いたことがあるかもしれません。 あなたのニーズに合ったものを選択することができます。 さて、ドメインを所有する個人/組織は、何らかの方法で、そのドメインを本当に管理していることを認証局に証明する必要があります。 これは、認証局が要求する一意の値を含む DNS レコードを作成するか、認証局が指定する内容のファイルを Web サーバーに追加することで実現できます。

次に、認証局と TLS 証明書を交渉し、秘密鍵と公開 TLS 証明書があなたのドメインに発行されます。 秘密鍵によって暗号化されたメッセージは、公開証明書によって復号化することができ、その逆も可能です。 これは非対称暗号化として知られています

FirefoxやChromeなどのクライアントブラウザは(時にはオペレーティングシステムでさえも)認証局に関する知識を持っています。 この情報は、ブラウザやデバイスに最初から(つまり、インストールされたときから)組み込まれているので、特定の CA を信頼できることが分かっています。 これで、HTTPS で www.example.com に接続しようとして、例えば DigiCert が発行した証明書を見たとき、ブラウザはローカルに保存されている鍵を使って実際にそれを検証することができます。

www.example.com が提供する証明書が信頼できるようになったので、これを使用して、クライアントとサーバーの間で残りのセッションに使用される固有の対称暗号化キーを交渉します。

Nuances

TLS とインターネット セキュリティのアイデアに魅力を感じるなら、LetsEncrypt と彼らの無料の TLS CA を掘り下げて、このトピックをさらに詳しく調べることができます。 この全体の厳密さには、上記で述べた以外にも多くのことがあります。

コメントを残す

メールアドレスが公開されることはありません。