ルート証明書とは?簡単にわかるルート証明書の役割

こんにちは。今回はルート証明書にはどんな役割があって、どこに入っていなければならないのかなどを、わかりやすく説明してみました。

ルート証明書とは?わかりやすく説明してみた

SSL通信を行うためには、予めクライアント側のアプリケーションにルート証明書が搭載されている必要があります。

クライアント側のアプリケーションというのは、いわゆるIEのようなブラウザや携帯電話のことです。

今回はこのルート証明書について確認してみたいと思います。

どうしてルート証明書が必要なの?

どうしてルート証明書が必要なのかをオンラインショッピングをするシーンで考えてみます。

 

和子さんはオンラインショッピングをしようと思いAmazone(あまぞーん)にアクセスしました。

ここでURLを見てみるとhttps://から始まっています。

ということは既にSSL通信が始まっているということです。

 

和子さんがAmazoneのサイトにアクセスしたときにいったい何が行われたのでしょうか?

https通信でのやり取り

実はブラウザがhttpsでアクセスをした瞬間に以下のようなやりとりがサーバとされているのです。

1、 ブラウザ:暗号化通信をしたいのですが。
2、 サーバ :わかりました。
3、 サーバ :私が持っている証明書を渡しますね。
4、 ブラウザ:受け取りました。検証しますね。
5、 ブラウザ:検証しましたので、プレマスターシークレットを送りますね。
6、 ブラウザとサーバ:では暗号を切り替えます。

この流れでhttpsでの暗号化通信は開始されています。

あれ?どこにも「ルート証明書」が登場してませんね。

ルート証明書はどこで使われているの?

では、いったいルート証明書はどこで使われているのかというと、実は4の

「ブラウザ:受け取りました。検証しますね。」

で使われているんです。

ブラウザはサーバから受け取ったSSLサーバ証明書がキチンとした信頼できる認証局から発行された証明書であるかを検証しなければなりません。

そのためにルート証明書が使われているのです。

どうして検証する必要があるの?

ルート証明書で信頼された認証局から発行された証明書であることの確認をすることはわかりますが、そもそも、どうしてサーバから送られてきた証明書を検証しなければならないのでしょうか?

その理由は

 

「サーバ証明書は、誰でも作れちゃう」

 

からなんです。

いわゆる自己署名の証明書/オレオレ証明書(オレオレ詐欺みたいですね)のことです。

「SSL暗号化通信がしたい」ということから、誰もが自分でSSLサーバ証明書を作成して、サーバにインストールして利用できちゃうのであれば、デジサート(旧シマンテック、旧ベリサイン)やグローバルサイン、サイバートラストみたいな認証局って必要ないわけです。

暗号化通信をして安全なのは、そのWebサイトが信頼できる会社が運営していること(相手が信頼できる)を確認しているからこそです。

そのために信頼された認証局から発行された証明書であれば、信用して個人情報等の入力をする気になるんですよね。

そこでブラウザ側では、予め信頼された認証局のルート証明書を持っておいて(ストアするなんて言いますね)、その認証局から発行されている証明書であるかを確認するんです。

そのためルート証明書が必要なんですね。

まぁ、要するにこのルート証明書が、その認証局のクライアント対応状況(対応率)を決めることになるので、認証局にとっての生命線ともいえるものということです。

まとめ

  • ルート証明書はクライアント側に搭載されている必要がある。
  • httpsでの接続時はサーバから送られてきたサーバ証明書を、ルート証明書を使って検証している。
  • 検証することで信頼された認証局から発行された証明書であることが確認され、安心して通信できる。

ということでした。

httpsでの通信時にルート証明書のことなんて意識することはないと思いますが、かなり重要な仕事をしているものなんです。

コメント