0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SSL/TLS通信と証明書の関係

Posted at

SSL(Secure Sockets Layer)およびその後継である TLS(Transport Layer Security)は、HTTPを暗号化してHTTPS通信を可能にするプロトコルです。この仕組みは、ウェブサイトとクライアント(例えばブラウザ)の間の通信を安全にするために使用されます。以下に、SSL/TLS通信の仕組みと証明書の関係を詳しく説明します。


1. SSL/TLS通信の主な目的

  1. 暗号化:
    • 通信内容を第三者に盗聴されないように暗号化します。
  2. 認証:
    • サーバー(場合によってはクライアント)の正当性を証明します。
  3. データの完全性:
    • 通信中にデータが改ざんされていないことを保証します。

2. SSL/TLS通信の仕組み

SSL/TLS通信は、以下の手順で行われます。

(1) ハンドシェイク (Handshake)

ハンドシェイクは、通信を始めるための準備段階で、以下のステップを含みます。

  1. クライアントからのリクエスト:
    • クライアント(例: ブラウザ)がサーバーに接続を要求し、対応可能なSSL/TLSのバージョンや暗号スイートを送信します。
  2. サーバー証明書の送信:
    • サーバーは自分の公開鍵と一緒にSSL/TLS証明書をクライアントに送ります。
    • この証明書には、ドメイン名、発行者(CA: Certificate Authority)、有効期限、公開鍵などが含まれます。
  3. 証明書の検証:
    • クライアントは、証明書が信頼できる認証局(CA)によって署名されているかを確認します。
    • 証明書の内容(例: ドメイン名や有効期限)が正しいかを検証します。
  4. セッション鍵の生成:
    • クライアントは、セッションで使用する共通鍵(対称鍵)を生成します。
    • この鍵をサーバーの公開鍵で暗号化し、サーバーに送信します。
  5. サーバーによる鍵の復号:
    • サーバーは自分の秘密鍵を使って共通鍵を復号します。
  6. セッションの開始:
    • 共通鍵を使った暗号化通信が開始されます(対称暗号方式を使用)。

(2) 本通信(データ転送)

  • ハンドシェイク後、クライアントとサーバーは共通鍵を使用して通信を行います。
  • 対称暗号方式により、通信が高速かつ安全に行われます。
  • データが改ざんされていないことを確認するためにメッセージ認証コード(MAC)が使用されます。

3. SSL/TLS証明書の役割

SSL/TLS通信において証明書は、サーバーの正当性を証明し、安全な通信を確立するために重要な役割を果たします。

  1. 認証:
    • 証明書に記載された情報(例: ドメイン名や組織名)を通じて、サーバーが信頼できる存在であることを保証します。
  2. 公開鍵の提供:
    • 証明書にはサーバーの公開鍵が含まれており、この鍵を使ってクライアントはデータを暗号化します。
  3. 信頼のチェーン(Certificate Chain):
    • SSL/TLS証明書は、信頼された認証局(CA)によって署名されています。
    • クライアントは、証明書が信頼できるかどうかを検証するために、この署名のチェーン(ルート証明書→中間証明書→サーバー証明書)を確認します。

4. HTTPS通信の動作例

  1. ブラウザが「https://example.com 」にアクセス:
    • HTTPS通信を開始します。
  2. サーバーから証明書を受け取る:
    • サーバーは自分のSSL/TLS証明書を送信。
  3. 証明書を検証:
    • ブラウザは、証明書が信頼できるCAによって発行されたかを検証。
    • 問題がない場合、通信が続行されます。
  4. データの暗号化と転送:
    • ハンドシェイク後、暗号化されたデータ通信が行われます。

5. 証明書の種類

  • ドメイン認証(DV: Domain Validation):
    • ドメインの所有権のみを確認。
    • 個人ブログや小規模サイトに適している。
  • 組織認証(OV: Organization Validation):
    • ドメイン所有者の組織情報を確認。
    • 企業向け。
  • 拡張認証(EV: Extended Validation):
    • 詳細な組織審査が行われる。
    • 銀行や大企業向け。

SSL/TLS証明書は、HTTPS通信を可能にする基盤であり、安全なインターネットの普及に不可欠な技術です。

0
0
7

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?