暗号化とは?公開鍵・共通鍵の違いをやさしく解説

暗号化とは?公開鍵・共通鍵の違いをやさしく解説

Webサイトの鍵マークを見て暗号化の仕組みを知りたい初心者
「暗号化って、結局なにをしてるの?」
「公開鍵と共通鍵は、どう違うの?」
「HTTPSの鍵マークの中身は何?」

そんな疑問を抱える、これから基本情報技術者を目指すあなたへ。

結論から言えば、
暗号化とは、データを第三者に読めない形に変換して、決められた鍵を持つ相手だけが元に戻せる仕組みのことです。

この記事では、暗号化の基本、共通鍵方式と公開鍵方式の違い、そして HTTPS で両方を組み合わせるハイブリッド方式まで、基本情報技術者の試験範囲を初心者向けにやさしく解説します。

 

1. 暗号化とは — データを鍵で守る仕組み

暗号化の基本用語を整理するイメージ

まずあなたに、暗号化の基本イメージから掴んでもらいます。

暗号化とは、そのまま読める文章(平文)を、見ても意味が分からない文字列(暗号文)に変換する処理のことです。逆に暗号文を元の平文に戻すことを 復号 と呼びます。

このとき変換のルールを決めるのが 「鍵」 です。鍵を持っている相手だけが、正しく中身を読めるという仕組みになっています。

イメージとしては「南京錠と鍵」に近い仕組みです。箱に南京錠をかけてしまえば、鍵を持つ相手だけが中の手紙を読めます。暗号化は、デジタルデータに対して同じことをやっていると考えると分かりやすいです。

暗号化の目的は、盗聴対策や改ざん検知の土台を作ることにあります。たとえば公衆 Wi-Fi のように通信経路に第三者が紛れこむ余地がある場合でも、データが暗号文になっていれば中身を読み取られる心配を大きく減らせます。

基本情報技術者試験では、平文・暗号文・鍵という3つの用語と、暗号化の目的が問われることが一般的です。用語を曖昧にしておくと、後の共通鍵方式・公開鍵方式の比較で混乱しやすくなります。

暗号化の3つの基本用語:平文(元のデータ)/ 暗号文(変換後のデータ)/ 鍵(変換のルールを決める情報)。鍵の管理が安全性の土台になります。

 

2. 共通鍵方式 — 同じ鍵を双方で持つ(AES等)

共通鍵方式の仕組みを表すイメージ

次にあなたに知ってほしいのが、最も基本的な暗号方式である 共通鍵方式 です。

共通鍵方式とは、送信側と受信側が「同じ鍵」を共有して、暗号化と復号の両方に使う仕組みのことです。対称鍵暗号と呼ばれることもあります。

代表的なアルゴリズムが AES(Advanced Encryption Standard)で、現在広く使われている標準的な共通鍵暗号です。基本情報技術者試験でも頻出の用語として押さえておく価値があります。

共通鍵方式の特徴は、処理が速く、大量のデータを暗号化するのに向いている点です。サーバ間のファイル転送やディスクの暗号化など、データ量の多い場面で実用的に使われます。一方で課題もあります。それは 「鍵をどうやって相手に安全に渡すか」 という、いわゆる鍵配送問題です。

合鍵を相手に郵送する場面を想像してみてください。途中で第三者にコピーされれば、その時点で暗号化の意味がなくなります。デジタル通信でも同じ問題が起きるため、鍵の受け渡し方法を別途考える必要があります。

共通鍵方式の要点:双方が同じ鍵を持つ / 処理が速い / 鍵を安全に渡す方法が課題。AES が現在の代表的なアルゴリズムとして広く使われています。

 

3. 公開鍵方式 — 公開鍵と秘密鍵のペア(RSA等)

公開鍵と秘密鍵のペアでやり取りするイメージ

共通鍵方式の鍵配送問題を解決するのが、あなたが次に押さえたい 公開鍵方式 です。

公開鍵方式とは、「公開鍵」と「秘密鍵」という性質の違う2つの鍵をペアで使う仕組みのことです。非対称鍵暗号とも呼ばれます。

使い方の基本は次の通りです。受信者があらかじめ 公開鍵を公開 しておきます。送信者はその公開鍵で暗号化してデータを送ります。そして 秘密鍵を持っている受信者だけが復号できる、という流れです。公開鍵は名前の通り誰に渡しても問題なく、秘密鍵だけを厳重に守ればよい設計になっています。

代表的なアルゴリズムが RSA です。基本情報技術者試験では「公開鍵と秘密鍵のどちらで暗号化し、どちらで復号するか」が頻繁に問われます。送信者と受信者の役割が入れ替わると答えも変わるため、図を描いて整理しておくと安心です。

別の使い方として、秘密鍵で署名(暗号化)→ 公開鍵で検証(復号)という電子署名の用途もあります。これは 認証と認可 の文脈でもよく登場する仕組みで、本人確認やデータの改ざん検知に使われます。

公開鍵方式は鍵配送問題を解決できる一方で、共通鍵方式に比べると処理が遅いという課題があります。そこで実際の通信では、両者を組み合わせる工夫が一般的です。

 

4. ハイブリッド方式と TLS/HTTPS

ハイブリッド方式と TLS の流れのイメージ

ここまでの2方式を踏まえて、あなたが日常的に触れている HTTPS の中身に進みます。

実際のインターネット通信では、公開鍵方式と共通鍵方式を組み合わせる「ハイブリッド方式」 が広く採用されています。それぞれの長所だけを活かす仕組みです。

大まかな流れは次のようになります。
(1)公開鍵方式で共通鍵を安全に渡す
(2)その後の本通信は 速い共通鍵方式で暗号化 する

この仕組みを Web 通信に応用したのが TLS(Transport Layer Security)です。HTTP の通信を TLS で暗号化したものが HTTPS で、ブラウザのアドレスバーに鍵マークが表示されるあれです。最初の鍵交換だけ公開鍵方式を使い、本文のやり取りは速い共通鍵方式に切り替える、という二段構えで成り立っています。

SSL という言葉も耳にしますが、現在は TLS が標準で、SSL は古い世代の呼び方として残っているだけと考えて差し支えありません。試験でも「SSL/TLS」とまとめて表記されることが一般的です。

なお、暗号化はあくまで盗聴対策の仕組みです。鍵の管理が雑であれば安全性は損なわれます。「暗号化しているから安心」ではなく、鍵管理とセットで運用するのが基本姿勢になります。

 

5. まとめ: 今日からできる、最初の一歩

今日からの一歩を示すイメージ

ここまでをあなたと一緒に振り返ります。

暗号化のポイントは 3つ でした。
(1)共通鍵方式:同じ鍵を双方で持つ・速い・鍵配送が課題(AES)
(2)公開鍵方式:公開鍵と秘密鍵のペア・鍵配送不要・処理は遅め(RSA)
(3)ハイブリッド方式:両者を組み合わせて TLS/HTTPS の土台になる

これは 基本情報技術者 科目A セキュリティ / 科目B 情報セキュリティ の中核テーマでもあり、毎回出題が見込まれる重要分野です。

今日からできる最初の一歩は、とてもシンプルです。
1. ブラウザの鍵マークをクリックして証明書を覗いてみる(3分)
2. AES と RSA を「共通鍵 / 公開鍵」の代表として暗記する(5分)
3. 下の問題集で1問だけ解いてみる(10分)

たった18分で、あなたの暗号化の基礎は実用レベルまで動き出します。ここまで読み切ったあなたなら、試験本番でこの分野が出ても落ち着いて選択肢を絞れます。

次のステップ