みなさん、こんにちは!
ブリュの公式ブログ.netにお越しいただきまして、ありがとうございます。
このサイトでは、ITについて特化したサイトを運営しています。
今回は、HTTP/2について解説します。
HTTP/2は、SSL通信を行っているサイトのみで使える規格です。
目次
SSL通信って何?
SSL通信とは、暗号化通信のことです。
現在お使いのパソコンとサーバー間の通信が暗号化されます。
それに対し、HTTP通信とは、内容を平文(そのままの状態)で送受信するものになります。
インターネット上で、もしも悪意を持っている人がいた場合、HTTP通信の場合には、簡単に書き換えができます。
この時に、悪意あるコードを埋め込まれた場合、サイト閲覧者に対して被害が発生します。
例えば、ウイルスダウンロードサイトにリダイレクトしたり、詐欺サイトにリダイレクトしたり、他にはクレジットカードの情報を盗み見たり・・・
考えるだけで恐ろしいですよね。
しかし、SSL通信を行うことで通信を暗号化できます。
つまり、クレジットカード情報の盗み見については、暗号解読できなければ、意味不明な情報しか手に入らなくなるので、セキュリティにおいて最強であることがわかりますね!
そして、この暗号解読は難しいので、「盗み見」に対するセキュリティは最強というわけです。
また、悪意を持ったコードを埋め込むなどの「改ざん」に対しては、SSL通信ではデーターの完全性が保証されていて、もしも間に悪意を持った人がいて何かしらの操作を行っても、ブラウザ側ではサーバーが送信した内容と違うことが判明します。
故意、悪意に限らず、データーの破損あるいは改ざんは確実に検知できるので、インターネット上でのセキュリティは強いというわけです。
★参考
HTTPの平文通信
SSL化暗号化通信
SSL化についての詳細期は、SSL通信って何?をご覧ください。
SSL通信は遅い?
今まで、SSL通信は遅いといわれていました。
サーバー側で暗号化処理をし、送信する。
パソコンでは暗号を解析し、もとのデーターに戻してブラウザに表示する。
これでは、作業量が増えてしまうので「SSL通信は遅い」といわれてきました。
しかし、時代は変わったわけです・・・!
HTTP/1とHTTP/2の違い
HTTP/1とHTTP/2の違いについて説明します。
HTTP/1は、従来の通信法です。
イメージ図を示します。
簡単に言えば、一つ一つを丁寧に送受信するといった感じでしょう。
画像も1枚1枚通信を行います。
そして、新世代のHTTP/2の通信は次のようになっています。
つまり、複数のリクエストに対して、一気に送信できるのです。
これにより、たとえ暗号化および暗号解析で時間がかかったとしても、送受信時間を短縮できるので高速になります。
このHTTP/2は、SSL通信しかサポートしなくなりました。
つまり、HTTP通信でHTTP/1を利用するよりも、SSL通信でHTTP/2を利用したほうが高速なのです!
なんでHTTPではHTTP/2をサポートしないのか?
ここまでの話を見れば、HTTP通信でHTTP/2を行えば高速なんじゃないのか?
と考える方もいるでしょう。
しかし、世界的にはインターネット上のすべての通信をSSL化する方針があります。
したがって、HTTP/2を利用させるために、強制的にSSL化させたい狙いがあるでしょう。
また、世界中の通信がSSL通信になれば、ネット上における情報の盗聴などを限りなくゼロにできるため、個人のプライバシーを守ることができるメリットもあります。
世界的にSSL化の動きがあるので、それに従わなければならない側面もありますし、十分合理的な方策だっと思うので、当サイトでもSSL通信を実施しています。
もちろん、HTTP/2で通信しています。
今はSSLは無料で使える!
今は、独自ドメインさえ取得していれば、無料でSSL通信を行うことができます。
当サイトも、無料のSSL証明書である、「Let’s Encrypt」を利用しています。
ブラウザで有名な「FireFox」を提供している「Mozila」等が創立した無料SSLです。
ロリポップ!では自動で設定してくれるので非常に便利です。
ここで、「無料のSSLって安全性でも落ちるんじゃ・・・」と感じるでしょう。
そんな心配は全くありません。
SSL通信に対しては、SSL証明書があります。
このSSL証明書は有料のものから無料のものまでありますが、セキュリティについて差はありません。
有料のものは、運営者の信頼性を確保するためのものであって、「ちゃんとした人が運営しているサイトですよ~」という意味のものです。
要は、「現実世界において実在する組織あるいは人ですよ」という意味です。
それに対し、無料のSSL証明書はドメインに対して行われるものであり、簡単に言えば、「通信を暗号化する」こと以外に意味はありません。
しかし、もしも起業してホームページを持つ場合には、信頼性獲得のために有料のSSL証明書が必要ですが、当サイトのように単なる情報発信サイトであれば、無料のSSL証明書で十分です。
もともとSSLは通信を暗号化して安全な通信環境を提供するものです。
その役目は十分に達しています。
もう一度書きますが、有料のSSL証明書と無料のSSL証明書では、セキュリティ上において全く差はありません。
まとめ
ここまで、HTTP/1とHTTP/2の違いについて説明してきました。
HTTP/2は高速ですが、SSL化していないと利用できない規格です。
サイト運営の参考になれば幸いです。