、HTTPS、そのWebのセキュリティを確保
HTTPプロトコルの存在下でのアイデンティティ情報の盗聴やその他のセキュリティ上の問題、HTTPの欠点を隠すことがあります。
プレーンテキストを使用して通信(暗号化されていない)コンテンツが盗聴かもしれ |
通信当事者の身元を確認していない、変装が発生する可能性があります |
メッセージの整合性を証明することができませんので、そこで改ざんされた可能性があります |
図1に示すように、通信は、平文を使用してタップすることができます
HTTP自体は、プレーンテキストを使用して送信されたHTTPメッセージを暗号化機能を持っていません。さらに通信機構TCP / IPプロトコルでは、通信内容は、すべての通信回線にのぞき見する可能性があります。それは暗号化されているにもかかわらず
通信プロセスは、通信がのぞきにコンテンツになります。通信上の盗聴を困難に同一のセグメントではない、唯一の我々は、ライン上のインターネット・データ・パケット(フレーム)の流れを収集する必要があります。
プログラム:盗聴を防ぐために暗号化
(1)は、通信の暗号化(安全な通信回線を確立します)
HTTPの暗号化なしのプロトコル、しかしによると、SSL(セキュア・ソケット・レイヤー、セキュア・ソケット・レイヤー)またはTLS(トランスポート層セキュリティ、セキュリティレイヤ転送プロトコル)を組み合わせて使用されます
HTTPを介した通信内容を暗号化。SSLとのセキュアな通信リンクを確立した後、HTTPトラフィックがこのルートで行うことができます。SSLは、HTTPセキュア(HTTPSと呼ばれるHTTPと組み合わせて使用されています
HTTPS)
(2)暗号化されたコンテンツ
暗号化メカニズムなしにHTTPプロトコルので、その後、HTTPプロトコル自体の内容は、送信を暗号化。HTTPパケットの内容が暗号化された内部に含まれること。この場合、クライアントは、HTTPに必要
メッセージボディ(ボディ)は、要求を送信する前に暗号化されています。
2は、変装が発生する可能性が通信当事者の身元を確認していません
HTTPプロトコルの要求と応答は、通信相手を確認していません。ホストサーバは、実際のリターンに応じて、実際に要求しているクライアントを返しているかどうかを、真の存在であるリクエストURIで指定されているかどうか
そして、他の同様の問題。
(1)誰もが要求を開始することができます
ときにHTTP通信プロトコルは、通信相手が存在しないプロセスステップので、誰もが要求を開始することができます。また、限り、サーバーが要求を受信すると、関係なく、相手はまた、(応答を返します誰
Webサーバーの制限された送信側のIPアドレスとポート番号は、アクセスを制限するの前提の下で設定されていません)。通信相手が確認されていないため、さまざまな問題があるでしょう。
ターゲットWebサーバーへの要求を決定することはできません、それはそのサーバーの本音であるかどうかに応じて応答を返します。すでに装ったWebサーバーがあるかもしれません |
クライアントが応答を受信した真の意図に基づいているかどうかをクライアントに返される応答を決定することができません。すでにそこに偽装することができるクライアント |
私たちは、通信相手がアクセス権を持っているかどうかを判断することはできません。Webサーバー上のいくつかの重要な情報が保存されているので、単に特定のユーザーの通信のための権限を送信 |
要求が手から来ている人は、それがどこから来るかを決定することができません |
でも、要求はすべて無意味を受け入れます。あなたはマッシヴ・アタックドス(サービス拒否、サービス妨害攻撃)の要請で停止することはできません |
(2)相手の認証情報を特定
HTTPプロトコル通信パーティを使用している間に決定することはできませんが、SSLを使用することができます。SSLは、暗号化処理を提供するだけでなく、証明書を使用する手段は、正方形を決定するために参照することができます。信頼さによって発行された証明書
サーバとクライアントを証明するためにサードパーティの問題は、実際の予選です。
3、メッセージの整合性を証明することはできませんが、改ざんされた可能性があります
(1)は、受信したコンテンツが間違っている可能性があり
要求または応答の内容が改ざんされた場合でも、受信するために、他のパーティの前にこの時間まで送信された要求または応答の後、そのため、メッセージの整合性を証明することができないHTTPがあるので、知っている方法はありません。その
/受信送信された要求を確認するまさか、と要求に応じて/応答は、前と後と同じです。
そのため、輸送中の要求または応答は、攻撃の人々はリクエストとレスポンスの改ざん、中間者攻撃(man-in-the-middle攻撃、MITM)と呼ばれる攻撃者の攻撃の内容を傍受して改ざんし、
だから、クライアントとサーバ間の通信は、まだ正常であるように思われます。
(2)、改ざんを防止する方法
そこパケットの完全性を決定するためにHTTPプロトコルを使用する方法があるが、実際には、便利で信頼性の高い、前記一般MD5とSHA-1ハッシュチェックの値、及びデジタル署名ファイルを検証するために使用される方法のような使用方法ではない。が
ダウンロードサービスのWebサイトを提供するようなも世代を作成するためにデジタル署名とMD5アルゴリズムPGP(プリティグッドプライバシー、プリティグッドプライバシー)に対応するハッシュ値を提供します。ユーザーがダウンロードした検証ファイルをチェックするための
これは、サーバー上の元のファイルかどうか、です。残念ながら、これらの方法はまだない100%がPGPとMD5自体が書き換えられているため、ユーザーは、実現する方法はありません、結果を確認する権利を保障することができます。そう
HTTPSを使用する必要があるSSLは、認証と暗号化処理と要約機能を提供します。
+ + +暗号化された完全性保護HTTP認証= HTTPS
//:私たちがログオンし、WebでのHTTPS通信決済を使用しますと証明書は、HTTPSを使用して、、、HTTPS通信の使用をサーバーまたはクライアントの身元を証明することができます。
1、HTTPSはHTTP SSLハウジングを身に着けています
HTTPSは、新しいプロトコルのアプリケーション層ではありません。HTTP通信インタフェース部は、単にだけSSLおよびTLSプロトコルを置換します。典型的には、直接HTTP及びTCP通信、SSLを使用して、SSL通信と最初に発展し、
SSLその後、TCP通信による。だから、HTTPS SSLは、HTTPのシェルを着用しています。
SSLは、HTTPプロトコルとは無関係であるので、そのようなSMTP、Telnetプロトコルなどのアプリケーション層で動作する他のプロトコルは、SSLで使用することができます。SSLは、世界で最も広く使用されているネットワークセキュリティ技術であると言えます。
2、交換鍵と公開鍵暗号
SSL暗号化のアプローチは、公開鍵暗号と呼ばれています。
(1)、対称鍵暗号化キーは、相手に送信する必要があるが、人々は、キーを攻撃するために得るようにキーの通信を送信すると、他の身柄を確保する方法は、キーを受け取っ見つけなければならなかった、監視することができます
(2)2つの公開鍵暗号の鍵(非対称鍵暗号)、困難対称鍵暗号に良い解決策を使用。両側それぞれは、公開鍵と秘密鍵のペアを持って、双方は、公開鍵暗号を交換しました
公開鍵暗号化、復号化するための秘密鍵、秘密鍵の承認、公共の検査記号。
(3)、HTTPSハイブリッド暗号化:すなわち、両方の対称暗号化機構混合および非対称キー暗号化キー暗号化に使用します。その処理速度と比較して、対称暗号化と非対称暗号化が遅いからです。対称暗号化
主な高速だが、セキュアではない伝送。
双方の強みに満ち、メッセージの安全な伝送を保証するために、非対称鍵暗号を使用して対称暗号鍵の交換リンクに使用されている通信相対称暗号化方式で交換。
3、非対称暗号化証明書は、公開鍵の正しさを証明します
残念ながら、公開鍵暗号、いくつかの問題があります。公開鍵、公開鍵自体が本物であることを証明することができません。設立非対称暗号化による準備とサーバー
公開鍵の交換後の文字は、公開鍵は、公開鍵はもともと、おそらく途中で公共交通機関では、そのサーバーを想定されている受信方法を証明するためにすると、実際の公開鍵が出て、攻撃者が交換されています。
認証機関は、サードパーティのクライアント側とサーバー側の位置にあるが信頼性があります。デジタル証明書の認証プロセス:
(1)、サーバ自身の公開鍵認証局は、サインインします
(2)、認証局がクライアントに発行されたサーバのデジタル署名の公開鍵と公開鍵証明書にその秘密鍵で署名しました
(3)、クライアントは、公開鍵証明書のデジタル署名を検証するために、認証局として、(ブラウザへの着床前)認証局の公開鍵を使用して、公開鍵証明書サーバーを取得します
サーバの公開鍵の正当性を確認してください
(4)、クライアントは、後に送信されたパケットを暗号化するために、サーバの公開鍵を使用しています
(5)、サーバーの秘密鍵でメッセージを復号化します。
非対称公開鍵暗号方式を使用している認証局は、公開鍵の正しさを保証するために、記号や処理の両方を暗号化するために、非対称暗号化交換公開鍵を使用して、事前にのみ公開鍵認証局
ブラウザに移植し、それを信頼することができます。
HTTPSは、安全で信頼性の高いので、なぜ常にHTTPSを使用していませんか?
HTTPSは、SSL通信しながら、ゆっくりとすべてのSSLトラフィックの最初の、HTTP、SSL通信よりもHTTP 2-100倍よりも遅くなるだけでなく、CPUとメモリのリソースを大量に消費します。HTTPS通信に加えて、証明書が不可欠であり、かつ
証明書は、認証局(CA)を購入する必要があり、高価です。
したがって、HTTP通信を利用した非機密情報場合、のみHTTPSを使用して暗号化通信の前に機密データが含まれています。