セキュリティ基礎編・第5回
暗号・ハッシュ・電子署名
この動画は、順次公開します
ひとことで言うと
暗号は、読めなくする技術です。ハッシュは、改ざんに気づく技術です。電子署名は、本人が作った、変わっていない、と証明する技術です。
異動してきたら、最初に確かめること
チェックは、このスマートフォンのブラウザに保存されます。
解説(テキスト版)
はじめに
情シスには、こんな相談が届きます。ファイルにパスワードを付けて送りたい。でも、パスワードも同じメールで送っていいですか、と聞かれる。
あるいは、ホームページの証明書の期限が、もうすぐ切れます、と委託先から連絡が来る。証明書とは、そもそも何ですか、と聞かれる。
暗号の話は、難しそうで、避けたくなります。私も最初は、そうでした。でも、使い分けの考え方は、シンプルです。
今日は、暗号、ハッシュ、電子署名の基礎を、数式なしでお話しします。
一言で言うと
先に、一言でまとめます。暗号は、読めなくする技術です。ハッシュは、改ざんに気づく技術です。電子署名は、本人が作った、変わっていない、と証明する技術です。
第1回の言葉でいえば、暗号は機密性、ハッシュは完全性、電子署名は、真正性と否認防止を支えます。
基礎編のどこか
第4回は、認証と認可と記録でした。人を確かめる、仕組みの話です。
今日は、情報そのものを守る、技術の話です。通信や、保存や、書類に、広く使われています。
ネットワーク編で出てきた、LGPKIや、マイナンバーカードの電子署名も、今日の仕組みの上に成り立っています。
暗号:共通鍵
まず、暗号です。情報を、鍵がないと読めない形に変えることを、暗号化。元に戻すことを、復号と言います。
いちばん分かりやすいのが、共通鍵暗号です。暗号化と復号に、同じ鍵を使います。金庫に、同じ鍵で、しまうことも、取り出すこともできる、というイメージです。
処理が速いのが利点です。ただ、困る点があります。相手に、その鍵を、どうやって安全に渡すのか、という問題です。
冒頭の、ファイルのパスワードを、同じメールで送っていいか、という相談は、まさにこの問題です。鍵と鍵のかかった箱を、同じ道で送ると、意味が薄くなります。別の経路で渡す、という考え方が基本です。
暗号:公開鍵
この、鍵を渡す問題を解くのが、公開鍵暗号です。鍵が、2つで1組になっています。公開鍵と、秘密鍵です。
公開鍵は、誰に見せてもかまいません。秘密鍵は、持ち主だけが、大切に持ちます。
公開鍵で暗号化したものは、対になる秘密鍵でしか、復号できません。つまり、相手の公開鍵を、手に入れさえすれば、誰でも、その人あてに、暗号化して送れます。
処理は、共通鍵より重いので、実際には、組み合わせて使います。最初に公開鍵で、共通鍵を安全に渡して、そのあとは、共通鍵で、速くやり取りします。ホームページの、httpsの通信が、この形です。
ハッシュ
次に、ハッシュです。データから、決まった長さの、短い値を作る計算です。この値を、ハッシュ値と言います。
性質は、3つあります。同じデータからは、いつも同じハッシュ値ができる。データが1文字でも違うと、ハッシュ値は、まったく違うものになる。そして、ハッシュ値から、元のデータには、戻せない。
使い道の一つは、改ざんの確認です。ダウンロードしたファイルの、ハッシュ値を、配布元が公開している値と比べる。一致すれば、途中で変わっていない、と分かります。
もう一つは、パスワードの保存です。システムは、パスワードそのものではなく、ハッシュ値を、保存しておきます。万が一、中身が漏れても、元のパスワードは、すぐには分かりません。ただ、短くて、ありふれたパスワードは、ハッシュ値から、推測されてしまうことがあります。
電子署名
そして、電子署名です。紙の書類の、署名や押印に、あたるものです。
仕組みは、こうです。作る人が、書類のハッシュ値を、自分の秘密鍵で、署名として付けます。受け取った人は、相手の公開鍵で、その署名を確かめます。
確かめられると、2つのことが分かります。一つは、その人の秘密鍵で、署名された、ということ。もう一つは、署名のあとで、書類が変わっていない、ということです。
第1回の言葉でいえば、真正性と、完全性。そして、秘密鍵は本人しか持っていないので、あとから、私は署名していない、とは言いにくい。否認防止にも、つながります。
電子証明書と認証局
ここで、疑問が出ます。その公開鍵は、本当に、その人のものなのか。誰かが、本人になりすまして、自分の公開鍵を、配っているかもしれません。
これを解決するのが、電子証明書です。公開鍵と、持ち主の情報を、信頼できる第三者が、保証した、電子的な身分証です。保証する第三者を、認証局と呼びます。
ネットワーク編で出てきた、LGPKIは、地方公共団体のための、認証局の仕組みです。マイナンバーカードの署名用電子証明書は、公的個人認証の仕組みで、国の側の機関が、有効かどうかを確かめます。
証明書には、有効期間があります。冒頭の、ホームページの証明書の期限が切れる、という連絡は、この期間の話です。切れると、ブラウザが警告を出して、住民が、サイトを開けなくなります。
httpsと鍵マーク
身近な例が、httpsです。アドレスの頭がhttpsで、鍵のマークが付いているサイトは、通信が暗号化されています。
このとき、サーバーは、自分の電子証明書を見せます。ブラウザは、それが信頼できる認証局のものか、そして、アドレスと合っているかを、確かめます。
ただし、注意があります。鍵マークは、通信が暗号化されている、という意味です。そのサイトが、安全で、信頼できる、という意味ではありません。偽のサイトも、httpsで作れます。
ですから、住民への注意としても、鍵マークがあるから安心、とは言えません。アドレスをよく確かめる、公式の入り口から入る、という案内が大切です。
使い分けのまとめ
ここまでを、使い分けでまとめます。
他人に読まれたくないなら、暗号。保存するファイルでも、通信でも、使います。内容が変わっていないか、知りたいなら、ハッシュ。誰が作ったのか、変わっていないのかを、まとめて証明したいなら、電子署名と、電子証明書です。
どの暗号の方式を使うかも、大切です。古い方式は、弱点が見つかって、使えなくなります。国のCRYPTRECという検討では、推奨される暗号の一覧が、公開されています。システムを選ぶときや、更新するときの、手がかりになります。
現場でよくある誤解
現場でよくある誤解を、3つ挙げます。
一つ目。暗号化していれば、安心、という誤解です。鍵が漏れれば、意味がなくなります。鍵やパスワードを、どう管理して、どう渡すのかが、大事です。
二つ目。電子署名は、ただの画像の印鑑、という誤解です。電子署名は、書類が変わっていないことも、確かめられる、技術の仕組みです。
三つ目。証明書は、一度入れたら、そのまま使える、という誤解です。期限があり、切れる前に、更新が要ります。更新を忘れると、サービスが止まります。
異動してきたら最初に確かめること
では、異動してきたら、まず何を確かめればいいでしょうか。
一つ目。庁内で使っている、電子証明書の一覧です。ホームページ、メール、VPNなど、どこで、どの証明書を使っていて、期限がいつなのか、を確かめます。
二つ目。ファイルを、暗号化して送る場合の、鍵の渡し方です。庁内の手順が、決まっているかを、聞いてみます。
三つ目。証明書の更新を、誰が、いつ行うのか、です。担当者が異動すると、期限が、忘れられがちです。カレンダーや台帳に、残っているかを、見てください。
理解度テスト
3問です。答えを選んで、「答え合わせ」を押してください。
結果は、このブラウザに保存されます。成績ページで「ふっかつのじゅもん」を作ると、別の端末でも続きから使えます。