質問: httpとhttpsとsslの違い http は通信内容が平文でネットワークを流れる。 https は通信内容がwebサーバとpcのブラウザ間で暗号化される。ブラウザのキャッシュが効かない。 ssl は通信内容がwebサーバとpcのブラウザ間でssl証明書をもって暗号化できる。httpsに追加して使える(2重に暗号化?)。httpには使えない。通信を要求するサーバが信頼できることを証明する。 と理解していますが、たぶんどれか間違っていると思います。 上記3個の違いを簡潔に教えてください。 よろしくお願いします。
回答: http:htmlなどのコンテンツデータをサーバ・クライアント間でやり取りするプロトコル https:httpのuriスキームの一つ これがプロトコルを表しているのではなく、本質はhttp over ssl/tls ssl(tls):暗号化を提供するプロトコル 別にhttpに限定した話ではなく、アプリケーション層のプロトコルは問わない 一番間違っているのが >httpsに追加して使える(2重に暗号化?)。 >httpには使えない。 http over ssl/tlsで通信するときのuriスキームがhttpsなので、ssl/tslをhttpsに追加するというのが間違い。 httpのパケットをsslで包んで通信するのがhttp over ssl/tlsなんで、追加も何もssl/tlsを使わないならただのhttpでしかない。 >通信を要求するサーバが信頼できることを証明する。 あくまでもssl/tlsは暗号化をするプロトコルであって、証明書はその暗号鍵の正統性を証明するもの 暗号化の正統性を証明するのであって、そのサーバが信頼できるかどうかというものとは違う もし偽サイトだとしても、そのサイトドメインで証明書を取ってしまえばssl/tlsの暗号は正統なものとしてみなされる。