こんにちは!
管理人のひでまるノートです。

今回ブログを開始するにあたり、URLをhttpsにするサーバのSSL化というものにチャレンジしてみました。

SSL?URLがhttps?ってなによ!っていう僕がサーバにSSLを導入しようと思った理由は単純。
Google公式ブログの「httpsのページを優先的にインデックスしていく」という記事をみたからです。

Google公式ブログ:httpsのページを優先的にインデックスしていく

古いネタかもしれませんが・・・心の中で、「今やらきゃいつ対応するの?」

今でしょ!

でも、SSL?URLがhttpsではじまる?という感じでしたので、勉強しました。

ということで、記念すべき記事の第一弾として、SSLについて僕が勉強した備忘録です。
僕と同じようにURLをhttpsにしたいと考えている方、一緒に勉強していきましょう。

ssl_topimg

URLがhttpsになるってなに?

普段アマゾンや楽天などでネットショッピングをしたり、ネットサーフィンをしながらいろいろなWebサイトを見ているので、URLがhttps、もしくはhttpのWebサイトが存在していることは認識していました。

下記の図の感じです。

SSL導入の確認方法

ですが、「http」「https」のURLの違いまでは理解していませんでした。

あえて言うならhttpsのURLには「鍵マーク」がついているなぁ〜程度の認識。
今、思えば、恐ろしい・・・汗

なぜか?
それは、URLがhttpのWebサイトは、データの通信が暗号化されていなくて、httpsのWebサイトは暗号化されているという違いがあるからです。

えっ!?ちょっとまって、通信データの暗号化って?

たとえば、あなたがネットショッピングを利用したとします。
このとき商品を購入するために、Webサイトに個人情報やクレジットカード情報を入力して送信しますよね?
この送信するときの通信データのやりとりが暗号化されているのか?暗号化されていないのか?のことです。

つまり、データ通信が暗号化されていないと、ハッカーなどの第三者によって通信データのやりとりが盗聴されて、悪用される危険性が・・・
怖い・・・って思いますよね。

なので、URLがhtppsになっていると通信データのやりとりが暗号化されていて、安心できると覚えてください!

SSLってなに?

「URLをhttpsにするとデータ通信のやりとりが暗号化される」とお話ししてきました。
実はSSLとは、このインターネット上の情報を暗号化して送受信する仕組みのことなんです!

ちなみに、SSLとはSecure Socket Layerの略こと。
そしてこのSSLの仕組みを利用するためには、サーバにSSL証明書を導入する必要があります。

SSLサーバ証明書ってなに?

SSLサーバ証明書とは、SSL証明書を発行する権限を持っている第三者機関である認証局が発行する電子的な証明書のことです。

といっても意味がわからないですよね・・・?

とりあえず、SSLの仕組みを利用するには、SSL証明書が必要で、SSL証明書には、「サイトの所有者の証明をすること」「通信データの暗号化ができること」の2つの働きがあると覚えてください。

Webサイト所有者の確認ができる

SSL証明書がサーバに導入されていると、Webサイトの所有者の実在証明をすることができます。

例えば、今あなたが利用しているWebサイトの運営者確認ができます。
当ブログ「ひでまるノート」の場合は、運営者である私が実在して、ドメインの使用権を第三者機関から証明されていることになります。

通信データの暗号化ができる

2つ目は、通信の暗号化ができるようになります。

SSLを導入するとサーバ内に「公開鍵」「秘密鍵」が生成されます。
この公開鍵を使って暗号化したデータのやりとりがされます。
そして、暗号化したデータを解読できるのは、秘密鍵が保管されているサーバのみ。

つまり、ハッカーなどの第三者からこの暗号化したデータをみられる心配がなく、安全に通信データのやりとりができます。

詳しくは、僕が参考にさせてもらったサイトを引用させてもらいます。

SSLサーバ証明書には通信を暗号化するための「公開鍵」が記述されています。
この公開鍵を使って暗号化されたデータは、ペアになる「秘密鍵」を持ったサーバしか読むことができません。

SSL/TLSで通信するとき、パソコン側で新しい鍵を作成し、それをSSLサーバ証明書の公開鍵で暗号化してサーバに送ります。
通信データはこの新しい鍵を使って暗号化されます。

このように役割の異なる3つの鍵を使うことで、安全な通信が実現されています。

SSLサーバ証明書の確認方法

SSLサーバ証明書の詳しい内容は、簡単に確認することができます。
今回は、私が「Google chrome」を使っているので、「Google chrome」を使った確認手順です。

ステップ1:「Google chrome」でSSLに対応しているWebサイトを開く。

ステップ2:httpsの横の「鍵マーク」をクリックする。(図1参照)

ステップ3:図1の「接続」タブをクリック

図1
SSL証明書の確認方法

ステップ4:「証明書情報」をクリック(図2参照)

図2
SSL証明書の確認方法

ステップ5:図3のようにSSLサーバ証明書情報を確認することができます。

図3
SSL証明書の確認方法

SSL通信の暗号化の仕組み

SSLは、「共通鍵暗号方式」「公開鍵暗号方式」という2つの仕組みを利用して通信を暗号化しています。

すいません・・・いろいろ調べてみたのですが、理解することができませんでした・・・勉強して追記していきます。

なので、参考にしているサイトを掲載しておきます。

バイラルクラブ
分で理解できる!共通鍵暗号方式と公開鍵暗号方式の仕組み

Common key cryptosystem / Public key cryptosystem
共通鍵暗号と公開鍵暗号とは

ITpro
Lesson2:二つの暗号方式を組み合わせて,安全かつ高速に通信をする

かせいさんとこ
公開鍵暗号について理解が足りていなかったのでメモAdd Starこれは何?

まとめ

いかがでしたか。
SSLは、サイト利用者が安全にWebサイトを利用するために必要な仕組みだということがわかって頂けたと思います。

GoogleがランキングのアルゴリズムにSSLを使用すると公式ブログで公開している点からも、Googleが「SSL」を重要視していることがわかります。

参考記事:HTTPS をランキング シグナルに使用します

ですが、今現在、SSLを導入したからといって順位に大きな影響があるわけではなさそうです。
「早急に対応する必要はないけど、いずれ対応しなければいけない日がくる」という感じだと思います。

もちろん、クレジットカード情報や個人情報など、サイト利用者の重要な情報を扱うサイトは、SSLを導入したほうがよいです。