トップ > 用語解説 > ネットワーク関係 > プロトコル > HTTP(Hyper Text Transfer Protocol)
HTTP(Hyper Text Transfer Protocol)は、 今やインターネットの代名詞となったWWW(World Wide Web)上でWebサーバとクライアントが、 HTML(Hyper Text Markup Language = Webページを記述するための言語)で書かれた文書などの情報をやりとりする時に使われる通信手順(プロトコル)を意味します。 基本的には普通のテキストデータを使い、ブラウザなどのクライアントがWebサーバに対してget、putといったコマンドを送ると、それに応じた結果がサーバから送られてきます。 送られてきた結果であるHTML、JPEGといったデータをきれいに成形して見せるのは、Webブラウザの仕事になっています。 とはいえ、テキストしか表示できないWebブラウザも存在しますし、必ずしも全てのWebブラウザで見た目が同じになることが保証されているわけではありません。
HTTPの特徴としては、原則としてステートレス(= stateless 前回の状態は非保持の意)、 つまり1回コマンドを送ったら1回結果が返ってきてそれで終わり、ということが挙げられます。 利点としては、プログラムがシンプルになることですが、 逆に欠点として複数回のやりとりを追跡できないことにもなります。 このため買い物サイトなどでは、別途cookieなどの技術を組み合わせて使うことで複数回のやりとりを追跡しています。 また、HTTPではデータが暗号化されていないため、通信経路のどこかで内容を知られる可能性があります。 第三者に知られたくない情報をやりとりする時は、別途暗号化を行うか、 暗号化されたHTTPSという通信手順を使う必要があります。
HTTPS ウェブサイトは、独立したプライベート認証局 (CA) からSSL/TLS証明書を取得する必要があります。 これらのウェブサイトは、データを交換して信頼を確立する前に、証明書をブラウザと共有します。 SSL/TLS証明書には暗号化情報も含まれているため、サーバーとウェブブラウザは暗号化されたデータやスクランブルされたデータを交換できます。 プロセスは次のように機能します。