HTTPSを使う理由
Coddyの「ターミナルで学ぶネットワーク」コースのレッスン 38/47。
これまでのすべては、プレーンテキストとして送られていました。これは比喩ではありません。リクエスト行、ヘッダー、そしてボディは、入力したとおりにそのままネットワーク上を通過し、途中にいる誰もがそれらを読むことができます。
それを証明するツールは、すでに手元にあります。自分自身のリクエストをリスナーで監視し、ボディを見てみましょう。プレーンHTTPで送信されたパスワードが、完全な形でそこに表示されます。
HTTPSは、TLSでラップされた同じHTTPです。TLSは、会話があなたのマシンを離れる前に暗号化する層です。観察者には、あなたがあるホストに接続したことや、おおよそどの程度のデータが移動したかは分かりますが、パス、ヘッダー、ボディは分かりません。
HTTPSには、それと同じくらい重要なもう一つの役割があります。それは、サーバーが主張どおりの相手であることを証明することです。暗号化だけでは、なりすまし相手と、見事にプライベートな会話をすることになりかねません。
チャレンジ
難しいプレーンな HTTP がなぜプライベートではないのか、自分で確かめてみましょう。
- ポート 9128 でキャプチャリスナーを起動します
- フィールド
password=hunter2を/loginに POST します req.txtの最後の行を出力します
秘密情報はリクエスト内に丸見えの状態で存在します。期待される出力:
password=hunter2自分で試してみよう
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
ターミナルで学ぶネットワークのすべてのレッスン
自分で練習してみよう: Terminalプレイグラウンド