No163 電子証明書というよくわからないもの

情報セキュリティ対策の話の中でしょっちゅう出てくる用語の一つ
に「電子証明書」というものがあります。

実際、電子証明書は多くの場面で見ることが増えてきました。

多くのWebページ(ホームページ)では通信内容を暗号化するのに
サーバ証明書という電子証明書を使います。
マイナンバーカードには電子証明書が入っていて、本人認証などに
利用できます。
税務庁の確定申告でも電子証明書を使った申請が可能です。
一部の企業では電子証明書入りの社員証を発行している場合もあり
ます。

このようにあちこちで使われている電子証明書ですが、どういう
仕組みか?となると首をかしげる方も多いのではないでしょうか?


1. テレビの仕組みを知らなくても見られるし...

テレビの受像機の仕組みを知らなくてもテレビは見れます。
エアコンの仕組みを知らなくても快適に過ごせます。
電子証明書だって、仕組みなんて知らなくても使えればそれでイイ
んじゃない?

ま、正直言って、電子証明書の仕組みを知らなくても困ることは
あまりないです。

ただ、電子証明書の仕組みを通して、セキュリティを確保する技術
の概略を知ることは決して無駄ではないと思いますし、知的好奇心
を刺激することは間違いありません。


2. 電子証明書は何の変哲もないただのデータ

なんとなく「証明書」といわれると、役所での印鑑証明や会社の
在籍証明のような、専用の用紙にいかめしいハンコが押された
モノをイメージしますよね。

実際、多くのWebサイトではこんな解説の仕方をしています。

 電子証明書とは、信頼できる第三者(認証局)が間違いなく本人
 であることを電子的に証明するもので、書面取引における印鑑
 証明書に代わるものといえます。(国税庁のページから引用)
 https://www.e-tax.nta.go.jp/toiawase/qa/yokuaru02/04.htm 

電子証明書では、専用の用紙もなけりゃ、ハンコもありません。
電子データなんですから、そんなのあるはずありません。
ただのデータにすぎません。ですからコピーも改変も誰もができ
てしまいます。

コピーできてしまえば、誰だって使えてしまうではないですか?
こんなので本人確認しちゃってホントに大丈夫なのでしょうか?


3. 電子証明書はナニに使う?

電子証明書の使い方は主に2つ。
 1)送信元が正しいか?
 2)送信された内容が正しい(変更されていない)か?

電子証明書が最も使われているのはWebページの暗号化(SSL/TLS)
です。
使っている利用者はほとんど意識しませんが、コンピュータ間では
電子証明書(暗号化通信ではサーバ証明書と言います)を受け取り、
その送信元が正しいかどうかを裏側で確認しているのです。

もし、証明書に不備(有効期限を過ぎているなど)があったり、
途中で内容が変更されているのを検出すると、「この証明書は
不完全で信用できないよ」と警告を出してくれます。

この他にも電子証明書はインターネットから社内ネットワークに
接続するときの接続元確認にもよく使われています。
また、あまり利用は進んでいませんが、メールの発信者確認にも
使えます。


4. どうして送信元が正しいと言えるのか?

上でも書いたように、電子証明書といえど、単なるデータです。
簡単にコピーできる電子データなのに、本人確認できるってどう
いうことでしょうか?

他人の電子証明書を勝手に使って、簡単に詐称ができそうなもの
です。

ところが、これはできないのです。

実は、送る情報には電子証明書だけでなく「特別なデータ」も送る
ことになっています。
この「特別なデータ」というのが本人にしか作れない仕組みになって
いるのです。これは本人の秘密鍵を使わないと作れないのです。

いきなり、秘密鍵なんていかにも暗号っぽいコトバが出てきました。

(2020/11/13追記)
じゃあ、実際どうやって暗号化するのか?となると意外に知らない方
が多いようです。
そのあたりの事情について 以下の記事で補足していますので、興味の
ある方は是非ご覧ください。
 No182 どうして暗号化には鍵が必要なの?
 https://note.com/egao_it/n/nd50f1ca36b25
(2020/11/13追記ここまで)

普通は暗号といえば、暗号化も復号も同じ鍵を使って計算します。
これを共通鍵暗号方式といい、数千年の歴史があります。
一方、秘密鍵と公開鍵の2つの鍵を使って計算する方式は公開鍵暗号
方式といい、1970年に登場した暗号化方式です。
これ自体がかなり興味深い仕組みなのですが、これについて話をする
とメルマガ数回分になりますので、今回は省略します。
(機会を見つけて、解説したいと思います)

さて、電子証明書には公開鍵は入っていますが、秘密鍵は入っていま
せん。つまり、秘密鍵は本人の手元にしかないのです。
ということは、「特別なデータ」を公開鍵で元に戻すことができれば、
そのデータは秘密鍵を使って作られた証明になる、というワケです。


5. どうして送信内容が変更されていないといえるのか?

これも上と同様の手順で簡単に証明ができます。

送付したい内容を送信者の秘密鍵で暗号化したものを送ります。
受信者は電子証明書に入っている公開鍵で復号します。

この場合も、本人しか持っていないはずの秘密鍵で暗号化したもの
が復号できれば、第三者が変更していないといえるワケです。

(実際には本文をまるごと暗号化しないのが一般的ですが、その
解説も長くなりますので省略します)


6. メールでも使えるが、なかなか広がっていないのが現実

今回解説している電子証明書による本人確認や第三者による変更の
確認方法は、Webページの場合だけでなくメールでも利用可能です。

S/MIMEやPGPという本人確認や変更検知ができるメール方式が提唱
されてから数十年たちますが、いまだに一般化しているとは言え
ません。

以前紹介したIPAの「情報セキュリティ10大脅威」でもビジネス
メール詐欺は例年上位にランキングされています。

S/MIMEやPGPを使えば、こういった詐欺のほとんどを見抜けます。
その観点からも、メールでの本人認証が行える方式が一般化して
ほしいと心から思います。

次回もお楽しみに。

この記事が気に入ったらサポートをしてみませんか?