パソコンとネットワーク|on Note

パソコン・ネットワーク・データ通信に関する記事

on Note

デジタル証明書

公開鍵暗号方式とデジタル署名の仕組みには、送られてきた公開鍵が「本来の通信相手が作成したものなのかを保証する手段がない」という問題があった。実際このままでは、公開鍵のすり替えにあっても、受信者側は気付くことができない。そこで、デジタル証明書の仕組みを用いて公開鍵の正当性を保証する。

デジタル証明書はこうして発行される

メッセージ送信者であるAさんは公開鍵・秘密鍵を作成し、この内公開鍵を、メッセージ受信者Bさんに送ろうとしている。(Bさんからすれば、この公開鍵が、本当にAさんが発行したものなのかを確認することができない。)

Aさんはまず、認証局(CA)に、「この公開鍵が自分のものである」証明書の発行を依頼する。

一方認証局は、認証局自身が用意した公開鍵・秘密鍵を所持している。

Aさんは自分が作成した公開鍵と個人情報(メールアドレス等)を認証局に送る。

認証局は、Aさんから受け取った情報が、間違いなくAさんのものであると確認した後、認証局所持の秘密鍵を用いてAさんのデジタル証明書を作成する。(これが、Aさんのデータを基にした、認証局の秘密鍵で作成した暗号文。)

認証局は、作成したデジタル署名と元のデータを1つのファイルにし、このファイルをAさんに送り返す。これがAさんのデジタル証明書である。

デジタル証明書取得後のやり取り

メッセージ送信者Aさんは、公開鍵の代わりにデジタル証明書を受信者Bさんに送る。

Bさんは、受け取ったデジタル証明書に書かれたメールアドレスがAさんのものであることを確認する。続いてBさんは、認証局の公開鍵を取得する。

Bさんは、証明書内の署名が認証局のものであるかを検証。証明書の署名の検証は、認証局の公開鍵でしかできない。検証の結果に問題がなければ、この証明書は「認証局が発行したもの」ということになる。

「証明書が認証局から発行されたもの」で、かつ「Aさんのもの」であると確認できたので、証明書からAさんの公開鍵を取り出す。こうしてAさんからBさんへの公開鍵の受け渡しが完了する。

公開鍵の受け渡しに問題はないか

悪意ある第三者がAさんになりすまし、Bさんに公開鍵を渡そうとしたとする。

この際Bさんは、証明書として渡されていない公開鍵を信用する必要はない。この時点で、第三者の、Aさんへのなりすましは失敗している。

第三者がAさんになりすまし、認証局に自分の公開鍵を登録しようとしたとしても、第三者はAさんのメールアドレスを所持していないので、証明書が発行されない。

認証局から取得した公開鍵の正真性は

デジタル証明書の仕組みにより、メッセージ送信者Aさんと受信者Bさんの間でやり取りされる公開鍵の正真性は保証された。

やり取りの途中、Bさんが、認証局の公開鍵を取得する場面があるが、この認証局が発行したとされる公開鍵の正真性はどうか。実は、この公開鍵は第三者が作成したものではないのか。

つまり、公開鍵に関する疑問は、通信相手と認証局の両方に対して起こる。

実は、認証局の公開鍵もデジタル証明書として受け渡しされている。そして、この認証局の証明書は、より上位の認証局が署名したものである。

それぞれ認証局の位置づけはツリー構造になっており、上位の認証局が下位の認証局の証明書を作成する。

最後にデジタル証明書とは

デジタル証明書は、個人間における公開鍵の受け渡しに限らず、ウェブサイトとの通信を行う際にも利用される。この時はSSL証明書などと呼ばれる。

ウェブサイトから公開鍵が付いた証明書を受け取ることで、そのサイトが第三者によってなりすましをされていないことを確認できる。

デジタル証明書は、認証局を介することによって、公開鍵の作成者を保証する仕組み。このような一連の仕組みを「公開鍵基盤PKI)」という。

メニュー