新入社員が「機密性」を深掘りしてみた!情報を守る暗号化技術とは?~新入社員のセキュリティ備忘録 #10~
投稿者:セキュリティ&ネットワーク事業本部 セキュリティ担当 井上
こんにちは!2年目社員の井上です。
本ブログは、私が学習した情報セキュリティについてのあれこれを備忘録として残していくシリーズ「新入社員のセキュリティ備忘録」第10弾になります。今回も、学習した内容を新入社員目線でまとめていきます。
前回までの備忘録では、情報セキュリティとサイバーセキュリティの違いについて学んできました。
その中で、情報セキュリティには機密性・完全性・可用性という3つの要素があり、そのどれか1つに偏るのではなく、バランスよく機能させることが大切なのだと分かりました。
では、この3つの要素は、具体的にどのような技術によって支えられているのでしょうか。今回は、3要素の1つである「機密性」を深掘りし、それを支える代表的な仕組みである「暗号化技術」について整理してみたいと思います。
今回もどうぞよろしくお願いします!
目次
1.「機密性」ってなんだっけ?3要素の1つをもう一度整理してみた
2.「暗号化技術」ってなんだろう?情報に鍵をかける仕組みを整理してみた
3.鍵のかけ方は1つじゃない!共通鍵暗号方式と公開鍵暗号方式
4.おわりに
1. 「機密性」ってなんだっけ?3要素の1つをもう一度整理してみた
暗号化技術の話に入る前に、まずは前回学んだ「機密性」について、簡単に振り返っておきたいと思います。
前回の備忘録では、情報セキュリティとは、個人や組織の「情報」を脅威や危険から守るための考え方や取り組みのことだと整理しました。そして、その情報セキュリティを支える柱となるのが、機密性・完全性・可用性という3つの要素、いわゆる「情報セキュリティの3要素」でしたね。
| 要素 | 意味 |
| 機密性(Confidentiality) | 許可された人だけが情報にアクセスできる状態を保つこと |
| 完全性(Integrity) | 情報が改ざんされず、正確な状態を保つこと |
| 可用性(Availability) | 必要なときに、必要な人が情報やシステムを利用できること |
今回この中で深掘りするのが、1つ目の「機密性」です。
機密性とは、簡単に言うと「見てはいけない人に情報を見られないようにする」という考え方でした。社内の機密情報が、関係のない第三者に見られてしまっては困りますよね・・・。
前回も登場した日本産業規格「JIS Q 27000」シリーズでは、機密性を「認可されていない個人、エンティティ又はプロセスに対して、情報を使用させず、また、開示しない特性」と定義しています。
少し難しい言い回しですが、要するに「許可された人以外には、情報を使わせない・見せない」ということですね。
【出典】「JIS Q 27000(情報セキュリティマネジメントシステム- 用語)」
では、この機密性は、どのような方法で守られているのでしょうか。
前回のブログでは、機密性を守る仕組みの例として、パスワードによる認証やアクセス権限の設定、そしてデータの暗号化を挙げました。このうち認証やアクセス権限は、「そもそも情報にたどり着けないようにする」という考え方の対策です。いわば、部屋そのものに鍵をかけて、入れる人を限定すると考えるとわかりやすいでしょうか。
一方で、もし攻撃者に情報を盗まれてしまったり、通信を盗み見られてしまったりした場合はどうでしょう。入り口の鍵が突破されてしまえば、中の情報はそのまま読まれてしまいます。
…そこで登場するのが、今回のテーマである「暗号化技術」です。
次章では、そもそも暗号化とは何なのか、その仕組みについて整理していきます。
2.「暗号化技術」ってなんだろう?情報に鍵をかける仕組みを整理してみた
「暗号化」とは、ひとことで言うと「そのままでは読めない状態に変換すること」です。
たとえば「SECRET」という文字列を、あるルールに従って「VHFUHW」という意味不明な文字列に変換してしまう。こうしておけば、万が一この情報「VHFUHW」が第三者の手に渡っても、内容を読み取ることはできません。
暗号化まわりでは、いくつか用語が出てきますので、先に整理しておきます。
| 用語 | 意味 |
| 平文(ひらぶん) | 暗号化される前の、そのまま読めるデータ |
| 暗号文 | 暗号化された後の、そのままだと読むことができないデータ |
| 暗号化 | 平文を暗号文に変換すること |
| 復号 | 暗号文を平文に戻すこと |
| 鍵 | 暗号化および復号を行うときに用いる情報 |
ポイントは、暗号化には必ず「鍵」が必要になるということです。
暗号化は、「中身の書類そのものを、読めない文字に書き換えてしまう」イメージです。表の言葉を用いて説明すると、人が読むことができる「平文」を「鍵」を使って「暗号化」し、人が読むことができない「暗号文」に変えてしまうということです。
こうすることで、たとえ部屋に侵入されて書類を持ち出されたとしても、鍵を持っていない人には、何が書かれているのか分かりません。だからこそ暗号化は、機密性を守るうえで欠かせない技術なのですね!
暗号化と聞くと難しそうに感じますが、実はその考え方自体はとても古くからあります。
有名なのが「シーザー暗号」です。古代ローマのユリウス・カエサル(英語読みでジュリアス・シーザー)が使っていたとされる暗号で、その仕組みは非常にシンプルです。アルファベットを決まった文字数だけずらす、ただそれだけです。
(※ちなみにこの「シーザー」ですが、「ブルータス、お前もか」でおなじみの、あのシーザーです。)
たとえばシーザー暗号を用いて、「3文字ずらす」というルールで、「SECRET」という文字列を暗号化してみます。
下の図のように、アルファベットを1つずつ3文字分ずらしていくと、「S」は「V」に、「E」は「H」に、「C」は「F」に…と置き換わっていきます。

その結果、「SECRET」という平文は「VHFUHW」という暗号文に変換されました。パッと見ただけでは、何が書いてあるのかまったく分かりませんよね。
そして暗号文を受け取った人は、逆に3文字ずらし戻すことで、元の「SECRET」を読むことができます。このときの「3文字」という数値こそが、先ほど出てきた「鍵」にあたります。
つまりシーザー暗号は、
・送る人:鍵(3文字)を使って、アルファベットをずらして暗号化する
・受け取る人:同じ鍵(3文字)を使って、アルファベットをずらし戻して復号する
という流れになっています。暗号化の基本的な考え方がとてもよく分かる例だと思いました。
ただ、シーザー暗号には大きな弱点があります。例えばアルファベットは全部で26文字しかないため、ずらす文字数のパターンは最大でも25通りになります。つまり、力技で片っ端から試していけば、あっという間に解読されてしまうのです。
…こうして見ると、シーザー暗号は仕組みこそシンプルで分かりやすいものの、大切な情報を守る手段としては、とても心もとないですね・・・。
では、今日私たちが普段利用しているサービスや通信では、どのような暗号化技術が使われているのでしょうか。次章で整理していきます。
3.鍵のかけ方は1つじゃない!共通鍵暗号方式と公開鍵暗号方式
前章では、暗号化の基本的な考え方をシーザー暗号を通して見てきました。
ただ、コンピュータが当たり前に使われている現代において、「アルファベットを**文字ずらす」程度の暗号では、残念ながらまったく歯が立ちません。25通りを片っ端から試すだけで解読できてしまうので、実用的とは言えないですよね。
では、現代ではどのような暗号化技術が使われているのでしょうか。
現代の暗号化技術は、コンピュータによる複雑な計算処理を利用しているため、簡単には解読できないようになっています。・・・とはいえ、「鍵を使って暗号化し、鍵を使って復号する」という基本的な考え方自体は、古代ローマのシーザー暗号の時代から変わっていません。
そして現代の暗号化技術は、使う鍵の種類によって、大きく「共通鍵暗号方式」と「公開鍵暗号方式」の2つの方式に分けられます。
共通鍵暗号方式:同じ鍵で、かけて・開ける
1つ目は「共通鍵暗号方式」です。
その名のとおり、暗号化と復号に同じ鍵を使う方式です。送る人と受け取る人が、あらかじめ同じ鍵を持っておき、その鍵で暗号化・復号を行います。
イメージとしては、鍵付きの金庫に書類を入れて相手に送り、受け取った相手がまったく同じ形の合鍵で金庫を開ける、という感じでしょうか。
前章で見たシーザー暗号も、送る人と受け取る人が「3文字ずらす」という同じルール(鍵)を使っていたので、この共通鍵暗号方式の仲間ということになります。
共通鍵暗号方式のメリットは、処理がシンプルではやいことです。そのため、容量の大きなデータを暗号化するのにも向いています。
一方で、大きな課題もあります。それは、「どうやって相手に鍵を渡すのか」という問題です。
考えてみると当然なのですが、鍵そのものを相手に送る途中で盗まれてしまえば、暗号化した意味がなくなってしまいます。かといって、毎回直接会って鍵を手渡しするわけにもいきませんよね…。この課題は「鍵配送問題」と呼ばれています。
そこで登場するのが、2つ目の「公開鍵暗号方式」です。
公開鍵暗号方式:かける鍵と、開ける鍵が違う
こちらは、暗号化と復号で異なる鍵(公開鍵と秘密鍵)を使う方式です。ペアになった2つの鍵を使い、それぞれ以下のような役割を持っています。
| 鍵の種類 | 役割 |
| 公開鍵 | 暗号化に使う鍵。誰に見られてもよく、広く公開しておく |
| 秘密鍵 | 復号に使う鍵。自分だけが持ち、絶対に他人に渡さない |
…「鍵を公開してしまって大丈夫なの?」と、最初は不思議に思いました。
ポイントは、公開鍵で暗号化したデータは、ペアとなる秘密鍵でしか復号できないという点です。つまり、公開鍵は「鍵をかけること専用」の鍵であり、それを手に入れたからといって、暗号文を読むことはできないということです。
イメージとしては、開いた状態の南京錠を誰にでも配っておくような感じです。誰でもその南京錠で箱に鍵をかけて送ることはできますが、それを開けられるのは、南京錠の鍵を持っている本人だけ、というわけです。
公開鍵暗号方式のメリットは、なんといっても鍵配送問題を軽減できることです。暗号化に使う公開鍵は、秘密にしておく必要がないため、共通鍵のように「どうやって安全に渡すか」で頭を悩ませる必要がありません。
…ただ、ここで1つ疑問が浮かびました。
公開鍵(南京錠)を受け取った人は、その鍵が本当に通信相手から送られてきたものだと、どうやって確認できるのでしょうか。
もし悪意のある第三者が、通信相手になりすまして偽の公開鍵を配ってしまったらどうでしょう。受け取った人は、それが偽物だと気づかないまま暗号化して送信してしまい、結局その第三者に中身を読まれてしまいます。
そこで登場するのが、「電子証明書」という技術です。
電子証明書とは、信頼された第三者機関から発行される、いわば公開鍵の「保証書」のようなものです。「この公開鍵は、確かに〇〇さんのものですよ」ということを、第三者の立場から証明してくれます。
この仕組みがあることで、たとえ鍵の受け渡しの途中で第三者が鍵をすり替えようとしても、受け取った側は「この鍵は本物ではない」と気づくことができるのですね。
つまり公開鍵暗号方式は、共通鍵暗号方式の「鍵をどうやって安全に渡すか」というとても大きな課題を軽減できる一方で、「受け取った公開鍵が本物かどうかを確認する」という新たな仕組みが必要になる、というわけです。
また、公開鍵暗号にも弱点があります。共通鍵暗号方式に比べて処理が複雑で、暗号化・復号に時間がかかるという点です。そのため、大量のデータをやり取りする用途にはあまり向いていません。
ここまで見てきた2つの方式を、あらためて整理してみると、以下の図のようになります。

こうして並べてみると、どちらか一方が優れている、というわけではないことが分かります。処理がはやいけれど鍵の受け渡しに課題がある共通鍵暗号方式と、鍵の受け渡しは安全だけれど処理が遅い公開鍵暗号方式・・・。まさに、お互いの弱点を補い合うような関係になっているのですね。
実利用では、この2つの暗号化方式を組み合わせて使ったりもしています。まず公開鍵暗号方式を使って共通鍵を安全に相手へ渡し、その後の実際のデータのやり取りは、処理の速い共通鍵暗号方式で行う、という仕組みです。こうすることによって、鍵配送問題を解消しながら、処理のはやい暗号化方式を利用することができます。
このような、2つの暗号化技術の強みだけを融合した仕組みのことを、「ハイブリッド暗号方式」という風に呼びます。
普段、気にもとめずに利用している暗号化技術の裏側で、こんな工夫がされていたなんて…と、少し感動してしまいました。
以上が、現在利用されている代表的な2つの暗号化技術の解説でした。
4. おわりに
今回の備忘録 #10では、情報セキュリティの3要素の1つである「機密性」を深掘りし、それを支える「暗号化技術」について整理してみました。
暗号化とは、鍵を使って情報を読めない状態に変換する仕組みであり、現代では「共通鍵暗号方式」と「公開鍵暗号方式」という2つの方式が、お互いの弱点を補い合いながら使われているのだと分かりました。
シーザー暗号のようなシンプルな仕組みから始まり、暗号化技術が「どうすればもっと安全に情報を守れるのか」という課題を解決しながら発展してきたことが印象的でした。普段まったく意識せずに使っている技術にも、こうした積み重ねがあるのだと感じました。
引き続き、学習内容をアウトプットしていきますので、次回もお付き合いいただければうれしいです!
ここまで読んでいただきありがとうございました!