Webサイトの安全性は企業の信用に関わる、SSLの仕組みと意外なメリット

Webサイトにアクセスした時、アドレスが「http://~」の場合と「https://~」の場合があることにお気付きでしたか? 「https://~」は、そのページがSSL化されていて安全だという意味です。Webサイト上で個人情報を保護するためのSSLについて、その仕組みやメリット、導入の際のポイントなどを解説します。

安全な通信とは

インターネットの通信は、基本的には平文(暗号化していない通常の文字列)です。インターネットの設計思想として、基本的な機能だけを規定し、あとはその都度追加していく方式になっているからです。

これは、いわばハガキでやりとりしているようなもので、郵便配達人に悪意があれば、ハガキの文面は読まれてしまいます。コンピュータを使った通信でも同様です。例えば企業において、ネットワークにおける不正通信を監視しているIT管理者は、見ようと思えばあらゆる通信内容を見ることができます。インターネットを流れる通信でも、有料ないし無料のネットワーク監視ツールを使えば見ることができるのです。

Webサイトでも通信の暗号化が必要に

Webサイトが作られ始めた頃は、誰に見られても特に困りませんでした。当初のWebサイトは、研究成果を発表して誰かに見てもらうというのがメインの役割でした。また、企業においても会社案内や電子的なカタログとして作る程度だったからです。

しかし、ネット通販となると話は別です。誰でも見られるハガキにクレジットカード番号を書く人はいないでしょう。そこで、せめて封書にして不特定の人には見えないようにする必要性がでてきました。それが、通信の暗号化です。

悪意のある人に盗み見されては困る内容をやり取りする場合は、通信の暗号化が必須です。例えば、WebサイトのなかでユーザーIDとパスワードを入力するページや、クレジットカード番号や個人情報を入力するフォームがあるページは暗号化が必要です。また、オンライン銀行やネット証券などでの取引も、暗号化していなければ危なくて使えません。

「https://~」はSSL化されたWebサイト

Webサイトの通信暗号化に使われるのはSSL(Secure Sockets Layer)という仕組みです(実は、現在はその進化版であるTSL(Transport Layer Security)が使われていますが、SSLとしての名称のほうがよく知られているので、この記事ではSSLで統一します)。

SSLによって通信が暗号化されているかどうかは、Webブラウザのアドレスバーを見れば分かります。アドレスの先頭が「https://~」であれば暗号化されていますが、「http://~」なら暗号化されていません。暗号化されていないと、ブラウザによっては「保護されていない通信」と但し書きが出たり打ち消し線のついた鍵マークが出たりします。

SSLの仕組み

SSLは、次のような仕組みで通信を暗号化します。まず、通信の内容を暗号化するのは<共通鍵>です。鍵といっても物理的な何かではなく、データを暗号化する計算方法のことです。もし鍵が一つで、暗号化する鍵と復号(暗号を解除)する鍵が同じだと(これを共通鍵暗号方式といいます)、あらかじめお互いが鍵を持っていなければ、通信の秘密は守れません。鍵も通信で送ったら、それを盗聴されてしまうからです。

そこで、<共通鍵>を安全に送るために[公開鍵]と[秘密鍵]を使います。これを公開鍵暗号方式といいます。公開鍵暗号方式では、[公開鍵]で暗号化したものは[秘密鍵]でしか復号できず、[秘密鍵]で暗号化したものは[公開鍵]でしか復号できません。

Webサーバとブラウザ間の通信を暗号化するには、次のような手順が行われます。Webサーバは、[公開鍵]と[秘密鍵]をセットで持っています。内容の暗号化を行うのは、ブラウザ側が持っている<共通鍵>です。

  1. ブラウザが、Webサーバに接続を要求する
  2. Webサーバが、「サーバ証明書」を送付する
  3. ブラウザが、「サーバ証明書」を検証する
  4. ブラウザが、「サーバ証明書」に含まれる[公開鍵]で<共通鍵>を暗号化する
  5. ブラウザが、暗号化した<共通鍵>をWebサーバに送付する
  6. Webサーバが、送られてきた暗号化済みの<共通鍵>を[秘密鍵]で復号する
  7. ブラウザとWebサーバが<共通鍵>を持ち合い、通信の暗号化が開始される

手順で出てきた「証明書」は、ブラウザのアドレスバーにある鍵マークをクリックすると見ることができます。公開鍵は、誰に見られても構わない無意味なビット列ですが、それが誰のものか分からないのでは、そもそも安全な通信暗号化とは言えません。

そこで、認証局(CA=Certificate Authority:デジタル証明書を発行する第三者機関)がその存在を証明するのが「証明書」です。この証明書によって、Webサイトの実在性や改ざんされていないことを証明しているのです。

SSLサーバ証明書の選び方

アドレスが「https://~」になっていればそれで安全かというと、実は必ずしもそうではありません。SSLサーバ証明書には、いくつか種類があるからです。証明書の種類と違いについて以下に解説します。

EV SSLサーバ証明書

通信の暗号化はもちろん、認証局が厳格な企業・組織の実在性証明を行います。このため、発行までに数週間程度かかり、価格は高めです。通販サイトやなりすまし対策が必要なサイトにはこの証明書が必要です。

OV SSLサーバ証明書(企業認証型証明書)

通信の暗号化に加えて、認証局が申請した企業の実在性を証明します。法的登記の有無で確認するため、個人では取得できません。発行までに数日程度かかりますが、EVよりは安価なので、資料請求や問い合わせページなどはこちらを使うケースもあります。

DV SSLサーバ証明書(ドメイン認証型証明書)

通信の暗号化を行うための証明書です。ドメイン使用権を保有してさえいれば発行されるため、個人でも取得でき、低価格・短期間で発行されます。企業の実在性を証明するわけではないので、個人での使用や社内公開用のWebサーバで使うものです。「https://」だからといって必ずしも安全と言い切れないのは、フィッシング詐欺サイトなどのなりすましでも、この証明書は取得できるからです。

SSLサーバ証明書の注意点

以上のように、一口にSSLサーバ証明書といっても、実在性証明をするものとしないものがあります。どのような用途で使うかによって、適切な証明書を選択する必要があります。また、SSLサーバ証明書は使用期限が決まっています。うっかり期限切れになると警告メッセージが出ますし、最新のブラウザではページを表示すること自体ができなくなります。ユーザーを不安にさせてしまうので、注意が必要です。

その他、一般的には一つのドメインに対して一つの証明書が必要ですが、一つの証明書で複数のドメインを保護できる証明書もあります。複数のブランドがあって複数のドメインを運用している企業などは、そういった証明書を検討してみるといいでしょう。

常時SSL化のメリット

入力フォームのあるページをSSL化(https化)するのは常識になっていますが、最近はWebサイト全体をSSL化する常時SSL化も増えています。企業のWebサイトが、トップページから全部https化しているというケースもまれではありません。これは、以下のようなさまざまなメリットがあるためです。

セキュリティの強化

全ページをSSL化することで、Webサイトのなりすましを防ぐことができる他、暗号化されていない公衆Wi-Fiを利用した攻撃や盗聴を防ぐことができます。

Webサイトの価値向上

SSL化していないページは、主要ブラウザで「保護されていない通信」と警告されます。そのため、ユーザーを不安にしてしまうリスクもあります。Webサイトの信頼性を上げるには、Webサイト全体をSSL化したほうがいいということです。また、暗号化すると通信が遅くなると考えられがちですが、実はSSL化するとhttpよりも速いプロトコルを使えるため、高速化することも可能です。さらに、SEOで優遇されるとも言われています。

管理性の向上

Webサイトの担当者は、ログ解析によってユーザーがどこから自社サイトに来たかというリファラー情報を確認しているはずです。実は、自社サイトがhttpだと、リンク元がhttpsの場合にリファラー情報が取得できません。つまり、世の中にhttpsのページが増えるほど、リファラー情報が取りにくくなるのです。しかし、自社サイトがhttpsであれば、リンク元がhttpsでもリファラー情報を取得できます。常時SSLにすると、取得できるリファラー情報が増え、ログ解析の精度が上がることが期待できるのです。

SSL化によって企業ブランドの向上も

インターネット上で情報をやり取りする時、SSL化によって通信を暗号化しなければ盗聴や改ざんといった危険があります。また、すべてのページをSSL化する常時SSLには、SEOやアクセス解析におけるメリットもあります。企業やブランドの価値を下げないためには、SSLの導入が必要です。