HTTP と HTTPS はどのように異なりますか?

ハイパーテキスト転送プロトコル (HTTP) は、クライアント-サーバー通信のためのプロトコルまたは一連の通信規則です。ウェブサイトにアクセスすると、ブラウザが HTTP リクエストをウェブサーバーに送信し、このウェブサーバーは HTTP レスポンスで応答します。ウェブサーバーとブラウザは、データをプレーンテキストとしてやり取りします。要するに、HTTP プロトコルは、ネットワーク通信を支える基盤テクノロジーです。その名称が示すとおり、ハイパーテキスト転送プロトコルセキュア (HTTPS) は、HTTP のより安全なバージョンまたは拡張版です。HTTPS では、ブラウザとサーバーは、データを転送する前に安全で暗号化された接続を確立します。

HTTP プロトコルはどのように機能しますか?

HTTP は、オープンシステム相互接続 (OSI) ネットワーク通信モデルのアプリケーション層プロトコルです。いくつかのタイプのリクエストとレスポンスが定義されています。例えば、ウェブサイトのデータを表示するには、HTTP GET リクエストを送信します。問い合わせフォームへの記入などの情報を送信する場合は、HTTP PUT リクエストを送信します。

同様に、サーバーは番号コードとデータの形式でさまざまなタイプの HTTP レスポンスを送信します。次に例を示します。

  • 200 - OK
  • 400 - バッドリクエスト (リクエストに失敗しました。無効なリクエストです。)
  • 404 - リソースが見つかりません

このリクエスト/レスポンス通信は、通常、ユーザーには見えません。これはブラウザとウェブサーバーが使用する通信方法なので、ワールドワイドウェブは誰にとっても一貫して機能します。

HTTPS プロトコルはどのように機能しますか?

HTTP は暗号化されていないデータを送信します。つまり、ブラウザから送信された情報は、第三者によって傍受され、読み取られる可能性があります。これは理想的なプロセスではなかったため、通信のセキュリティをさらに強化するために HTTPS に拡張されました。HTTPS は、HTTP リクエストとレスポンスを SSL および TLS テクノロジーと組み合わせます。

HTTPS ウェブサイトは、独立したプライベート認証局 (CA) から SSL/TLS 証明書を取得する必要があります。これらのウェブサイトは、データを交換して信頼を確立する前に、証明書をブラウザと共有します。SSL 証明書には暗号化情報も含まれているため、サーバーとウェブブラウザは暗号化されたデータやスクランブルされたデータを交換できます。プロセスは次のように機能します。

  1. HTTPS ウェブサイトにアクセスするには、ブラウザのアドレスバーに URL形式 https:// を入力します。
  2. ブラウザは、サーバーの SSL 証明書を要求してサイトの信ぴょう性を検証しようとします。
  3. サーバーは、公開キーを含む SSL 証明書を返信として送信します。
  4. ウェブサイトの SSL 証明書は、サーバー ID を証明します。ブラウザが満足すると、公開キーを使用して秘密のセッション鍵を含むメッセージを暗号化して送信します。
  5. Web サーバーは、秘密鍵を使用してメッセージを復号化し、セッション鍵を取得します。その後、セッションキーを暗号化し、ブラウザに確認メッセージを送信します。
  6. これで、ブラウザとWebサーバーの両方が同じセッションキーを使用してメッセージを安全に交換するように切り替わります。

SSL/TSL 証明書についてもっと読む »

HTTP/2、HTTP/3、HTTPS にはどのような違いがありますか?

1996〜97 年にリリースされたオリジナルの HTTP バージョンは HTTP/1.1 と呼ばれていました。HTTP/2 と HTTP/3 はプロトコル自体のアップグレード版です。データ転送システムは、より効率的になるように変更されました。例えば、HTTP/2 はデータをテキスト形式ではなくバイナリ形式で交換します。また、サーバーは新しい HTTP リクエストを待つ代わりに、積極的に応答をクライアントキャッシュに送信できます。HTTP/3 は比較的新しいものですが、HTTP/2 をさらに一歩進めようとしています。HTTP/3 の目標は、リアルタイムストリーミングやその他の最新のデータ転送要件をより効率的にサポートすることです。

HTTPS は HTTP のデータセキュリティ上の懸念を優先します。最近のシステムでは HTTP/2 と SSL/TLS を HTTPS として使用しています。HTTP/3 も成熟するにつれ、ブラウザとサーバーのテクノロジーにより、最終的に HTTPS に統合されるでしょう。

HTTP よりも HTTPS を選択する理由を教えてください。

次に、HTTP に対する HTTPS の利点について説明します。

セキュリティ

HTTP メッセージはプレーンテキストなので、権限のない者がインターネット経由で簡単にアクセスして読むことができます。対照的に、HTTPS はすべてのデータを暗号化された形式で送信します。ユーザーが機密データを送信すると、第三者がネットワーク経由でデータを傍受できないことを確信できます。クレジットカードの詳細や顧客の個人情報など、潜在的に機密性の高い情報を保護するには、HTTPS を選択することをお勧めします。

権限

検索エンジンは一般に、HTTP の信頼性が低いため、HTTP ウェブサイトのコンテンツは HTTPS ウェブページよりも低くランク付けされます。また、顧客は HTTP よりも HTTPS ウェブサイトを好みます。ブラウザは、ウェブサイトの URL の横にあるブラウザのアドレスバーに南京錠アイコンを配置することで、HTTPS 接続をユーザーに表示します。ユーザーは、こういった追加のセキュリティ要素や信頼要素により、HTTPS ウェブサイトやアプリケーションを好みます。

パフォーマンスと分析

HTTPS ウェブアプリケーションは HTTP アプリケーションよりも速くロードされます。同様に、HTTPS は別サイトからのリンクをより適切に追跡します。別サイトからのトラフィックとは、お客様のウェブサイトのトラフィックのうち、広告やソーシャルメディアのバックリンクなどの第三者ソースからのものです。分析ソフトウェアに信頼できるトラフィックソースを正確に識別させるには、HTTPS を有効にする必要があります。

HTTPS の設定は HTTP よりも高価ですか?

HTTPS では、サーバーで SSL/TLS 証明書を取得して管理する必要があります。以前は、ほとんどの認証局が証明書の登録と管理に年間手数料を請求していました。しかし、もはやそうではありません。

無料の SSL 証明書を入手できるソースはたくさんあります。例えば、Amazon Web Services (AWS) では、AWS Certificate Manager (ACM) を提供しています。ACM は、AWS サービスと内部で接続されたリソースで使用できるパブリックおよびプライベート SSL/TLS 証明書をプロビジョニング、管理、デプロイします。ACM では、SSL/TLS 証明書を購入、アップロード、更新するという、時間のかかる手動プロセスを不要にします。

相違点のまとめ: HTTP とHTTPS

 

 

HTTP

HTTPS

以下の略です

ハイパーテキスト転送プロトコル

ハイパーテキスト転送プロトコルセキュア

基盤プロトコル

HTTP/1 と HTTP/2 は TCP/IP を使用します。HTTP/3 は QUIC プロトコルを使用します。

HTTP/2 と SSL/TLS を使用して、HTTPリクエストとレスポンスをさらに暗号化する

ポート

デフォルトポート 80

デフォルトポート 443

以下に使用

古いテキストベースのウェブサイト

あらゆる最新のウェブサイト

セキュリティ

追加のセキュリティ機能なし

公開キー暗号化には SSL 証明書を使用

利点

インターネットを介した通信が可能に

ウェブサイトのオーソリティ、信頼性、検索エンジンのランキングを向上させる

AWS は HTTPS 要件をどのようにサポートできますか?

このウェブサイトでは、デフォルトで HTTPS と SSL/TLS をサポートする AWS のネットワークおよびコンテンツ配信サービスを確認できます。 

Amazon Lightsail では、低コストで事前設定されたクラウドリソースを使用してアプリケーションやウェブサイトをすばやく構築できます。また、Lightsail ロードバランサーを使用して、安全なアプリケーションを構築し、HTTPS トラフィックを受け入れることができます。Lightsail を使用すると、SSL/TLS 証明書のリクエスト、プロビジョニング、管理が簡単になります。お客様の代わりに、組み込みの証明書管理機能が証明書のリクエストと更新を行い、自動でお客様のロードバランサーに証明書を追加します。

Amazon Cloudfront は、ウェブサイト全体を高速化する 3 つのオプションを提供し、CloudFront のどのエッジロケーションからでも HTTPS 経由でコンテンツを安全に配信します。エッジからの安全な配信に加えて、オリジンフェッチに HTTPS 接続を使用するようにコンテンツ配信ネットワーク (CDN) を設定することもできます。つまり、オリジンからユーザーまでのデータはエンドツーエンドの暗号化で保護されます。

今すぐ無料のアカウントを作成して、AWS で HTTPS の使用を開始しましょう。

AWS での次のステップ