基本情報技術者試験のセキュリティ分野で必ず問われるのが暗号化の種類と仕組みです。「公開鍵暗号と共通鍵暗号の違いは?」「デジタル署名はどちらの鍵を使う?」という問題が頻出です。
この記事では、2種類の暗号方式の仕組みと違い、そして実際にどう使い分けられているかを解説します。
共通鍵暗号(対称鍵暗号)は、暗号化と復号に同じ鍵を使う方式です。
| 内容 | |
|---|---|
| メリット | 処理速度が速い。大量データの暗号化に向く。 |
| デメリット | 鍵の配送問題:事前に安全に鍵を共有する手段が必要。n人で通信するにはn(n-1)/2 個の鍵が必要になる。 |
代表的なアルゴリズム:AES(現在の標準)、DES(旧式、現在は安全でない)
公開鍵暗号(非対称鍵暗号)は、公開鍵で暗号化・秘密鍵で復号する方式です。鍵をペアで使います。
ポイント:公開鍵で暗号化したデータは、対応する秘密鍵でしか復号できません。逆に秘密鍵で暗号化したデータは公開鍵で復号できます(これをデジタル署名に使います)。
| 内容 | |
|---|---|
| メリット | 鍵の配送問題が不要。公開鍵は誰でも入手可。 |
| デメリット | 処理速度が共通鍵暗号より遅い。 |
代表的なアルゴリズム:RSA、楕円曲線暗号(ECC)
実際のHTTPS通信では、両方の長所を組み合わせたハイブリッド暗号方式が使われています。
こうすることで、鍵配送問題を解決しつつ高速な通信を実現しています。
デジタル署名は、データが改ざんされていないことと、送信者の本人確認を保証する技術です。秘密鍵で署名を作成し、公開鍵で検証します。
| 項目 | 共通鍵暗号 | 公開鍵暗号 |
|---|---|---|
| 使う鍵 | 1種類(同じ鍵) | 2種類(公開鍵・秘密鍵) |
| 処理速度 | 速い | 遅い |
| 鍵配送問題 | あり | なし |
| 代表例 | AES、DES | RSA、ECC |
| 主な用途 | 大量データの暗号化 | 鍵交換、デジタル署名 |
暗号化の音声解説でさらに理解を深めましょう。
解説音声・動画を見る