例えで掴む「公開鍵基盤」のイメージ
概要
公開鍵基盤を説明する例えを思いついたので、書いてみます。
ゴール
「公開鍵基盤?何それ美味しいの?」状態から、「なんとなくイメージできた」レベルになることを目指します。
話さないこと
公開鍵基盤の技術的な詳細
結論
公開鍵基盤とは、インターネットの世界で「信用できる第三者を通して身分を証明する仕組み(≒基盤)」を実現したもの
です。
詳細を見ていきます。
現実世界において「身分を証明する」とは
公開鍵基盤の主な目的の一つは、身分証明のお墨付きを与えることです。
この仕組みは、現実世界の身分証明の仕組みと非常に類似しています。
そこで、公開鍵基盤を理解するために、現実世界における「身分を証明する」ことを少し掘り下げてみます。
例1 正規のサービス利用者であることを証明する
皆さんが銀行や郵便局に行って、身分を証明する必要が出たときに、何を使用して身分を証明しますか?
大体、以下のいずれかだと思います。
- 運転免許証
- 健康保険証
- マイナンバーカード
(以降、上記をまとめて「身分証明に使えそうな道具」と記述します)
ここで一つ提案です。
「そこらのメモ帳に自分の名前、生年月日あたりをフリーハンドで書いて、身分証明書として提出する」という手段はいかがでしょうか?
フリーハンドとはいえ、立派に自身の身分を相手に伝えることできます。
ですが、まず全員が、「いや、ダメでしょ」と感じるはずです。
なぜ、上記「身分証明に使えそうな道具」はよさそうで、「メモ帳にフリーハンドで書いた身分証明書(?)」はダメそうなのでしょうか?
その違いは一体何でしょうか?
その答えは、 「信用できる第三者のお墨付き」 です。
信用できる第三者(団体や公的機関など)が発行した道具だからこそ、その記載内容に信ぴょう性が生じ、身分を証明する道具として機能します。
言い換えると、私たちは、信用できる第三者を通すことで、自分の身分(≒「正規のサービス利用者」であること)を証明します。
例2 正規のサービス提供者であることを証明する
花の金曜日、1杯飲みに行こう!と繁華街へ繰り出した皆さんの目の前に、以下二つの居酒屋があったとします。
- 飲食店営業許可証を取得している、自治体の認可が下りている居酒屋
- 飲食店営業許可証を取得 していない 居酒屋 (いわゆる無許可営業)
どちらに入店したいですか?
まず全員が、「飲食店営業許可証を取得している、自治体の認可が下りている居酒屋」を選択するはずです。
なぜでしょうか?と問われれば、「自治体の認可があって安心だから」という回答になるかと思います。
この安心感は、 「信用できる第三者である自治体のお墨付き」 から来ています。
言い換えると、居酒屋は、"営業許可証"という第三者のお墨付きを通して、私たちに「正規のサービス提供者ですよ」という事を証明します。
現実世界における身分証明
上記2例をまとめます。
- 私たちは、信用できる第三者を通すことで、自分の身分(≒「正規のサービス利用者」であること)を証明します
- 居酒屋(サービス提供者)は、"営業許可証"という第三者のお墨付きを通して、私たちに「正規のサービス提供者ですよ」という事を証明します
このことから分かる通り、私たちの社会では、 「信用できる第三者を通して身分を証明する仕組み(≒基盤)」 が確立されています。
インターネットの世界で身分を証明する
現実世界では、「信用できる第三者を通して身分を証明する仕組み(≒基盤)」が確立されていることを確認しました。
この、「信用できる第三者を通して身分を証明する仕組み(≒基盤)」をインターネット上で実現したものが「公開鍵基盤」です。
以下は、公開鍵基盤の各種用語を、現実世界の用語に対応させた表です。
現実世界の用語 | 公開鍵基盤での用語 | |
---|---|---|
信用できる第三者 | => | 認証局(CA) |
第三者のお墨付き(署名捺印) | => | デジタル署名 |
サービス利用者 | => | クライアント(ユーザー) |
サービス提供者 | => | サーバー |
正規のサービス利用者を証明する情報(身分証明書) | => | クライアント証明書 |
正規のサービス提供者を証明する情報(許可証・証明書) | => | サーバー証明書 |
まとめ
改めて、
公開鍵基盤とは、インターネットの世界で「信用できる第三者を通して身分を証明する仕組み(≒基盤)」を実現したもの
です。
皆様の理解の一助になれば幸いです。
余談 : オレオレ証明書
公開鍵基盤における「第三者のお墨付き(デジタル署名)」ですが、第三者が生成したデジタル署名ではなく、自分で生成したデジタル署名を使用することもできます。
こうした「自分で生成したデジタル署名を含む証明書」を、自己署名証明書(通称オレオレ証明書)と呼んでいます。
オレオレ証明書は、動作確認などのテスト目的で使用します。
サーバー証明書など、インターネットで使用することは(よほどの理由がない限り)ありません。
- というか、使用するとブラウザが警告を出します
- 「自己署名証明書 ブラウザ 警告」等で検索すると、警告画面の画像が出てきます
Discussion