Cryptographyの歴史
Cryptography(暗号技術)の歴史は、人類の歴史とともに古くから存在しています。以下に時代ごとの主な流れを整理します。
1. 古代(紀元前〜紀元後)
- シーザー暗号(紀元前1世紀頃)
- 古代ローマのユリウス・カエサルが使用した単純な置換暗号。アルファベットを一定数ずらす方式。
- スキュタレー暗号(紀元前5世紀頃)
- 古代ギリシアで使用された棒に革紐を巻いて書き込む暗号方式。
2. 中世~近世(5世紀〜18世紀)
- 頻度分析の誕生(9世紀)
- アラブの学者アル・キンディが開発した手法で、頻繁に出現する文字を解析し暗号を解読する技術。
- ヴィジュネル暗号(16世紀)
- フランス人のブレーズ・ド・ヴィジュネルが発明した多表式暗号。19世紀末まで「解読不能」と信じられていた。
3. 近代(19世紀〜20世紀前半)
- エニグマ暗号機(第二次世界大戦)
- ドイツ軍が使用したローター式暗号機。イギリスのアラン・チューリングらが解読し、現代のコンピュータ誕生にも影響を与えた。
- ワンタイムパッド(1917年)
- 理論的に絶対解読不能とされる暗号方式。鍵が平文と同じ長さで、完全にランダムな場合のみ安全性が保証される。
4. 現代(20世紀後半〜現在)
- 公開鍵暗号方式(1976年)
- DiffieとHellmanにより提唱された、公開鍵と秘密鍵を用いた方式。デジタル署名やインターネットのセキュリティ基盤となった。
- RSA暗号(1977年)
- Rivest, Shamir, Adlemanにより発明された公開鍵暗号。素因数分解の難しさを利用。
- AES(2001年)
- Advanced Encryption Standardとして米国政府が標準化した対称鍵暗号方式。今日広く使用されている。
5. 次世代(量子時代)
- 量子暗号(Quantum Cryptography)
- 量子力学を利用した通信手法で、傍受が物理的に検出可能。現在実用化に向けて研究が進む。
Cryptography(暗号技術)は、Complexity(計算複雑性)という学問的基盤のもとで、「利便性」と「安全性」のトレードオフ(trade-off)の中で進化してきています。
- 利便性(Convenience)
- 高速な計算処理や少ないリソースでの暗号化・復号化
- 利用者にとって簡単で直感的な仕組み(パスワードの短縮化、認証の簡略化など)
- 安全性(Security)
- 暗号の解読に必要な計算量を増やし、不正アクセスや攻撃を極力防ぐ
- 複雑で長い鍵や強力な暗号アルゴリズムを採用することで、攻撃者が解読できる可能性を極限まで抑える
この2つは一般的に相反する関係にあります。つまり、安全性を高めようとすれば、どうしても計算コストや手間が増加し、利便性が低下します。一方、利便性を求めれば、安全性が低下する可能性があります。
🚧 Complexity理論と暗号技術の関係
暗号技術は、計算複雑性理論(Complexity theory)の一分野として以下のように理解できます。
- Complexity理論の視点
- 「効率的に解ける問題」と「効率的には解けない問題」を区別します。
- 暗号理論は意図的に「効率的には解けない問題」を設計に取り入れることで安全性を担保します。
- 具体例
- RSA暗号は「大きな整数の素因数分解問題」の解くのが難しい(computationally hard)ことを利用しています。
- 楕円曲線暗号は「楕円曲線上の離散対数問題」が効率的に解けないことを前提としています。
📈 現在と今後の展望
現在のCryptographyは、「効率的でありながら安全である」ことをバランスよく追求しています。特にインターネット、IoT、モバイル機器の普及によって、計算リソースが限られた環境での「利便性の確保」はますます重要になっています。
さらに近年では、量子コンピュータの登場を前提とした耐量子暗号(Post-Quantum Cryptography)が研究され、安全性を維持しつつ、計算効率の良いアルゴリズムが模索されています。
QKD(Quantum Key Distribution; 量子鍵配送)**とは、量子力学の原理を利用して、2者間で安全に共通の秘密鍵(暗号鍵)を共有する技術です。
📌 QKDの仕組み(基本原理)
量子力学の以下の性質を活用しています:
- 量子の重ね合わせ(Superposition)
- 粒子(主に光子)が複数の状態を同時にとれる現象。
- 量子状態の測定不可避性(Measurement disturbance)
- 量子状態を観測すると必ず状態が変化する(つまり観測行為が検出可能)。
- 量子の非複製定理(No-cloning theorem)
- 未知の量子状態を完全に複製することは原理的に不可能。
これらの原理から、第三者が鍵を盗み見しようとした場合、その試みは必ず検出可能になります。
📡 QKDの代表的プロトコル
▶️ BB84プロトコル(Bennett-Brassard 1984)
- Charles BennettとGilles Brassardにより1984年に提案された世界初のQKDプロトコル。
- 量子ビット(量子化された光子)をランダムに直交する偏光状態にエンコードして送信。
- 第三者が観測を試みると、偏光が変化し受信側で異常が検知されるため、盗聴を確実に発見できる。
▶️ E91プロトコル(Ekert 1991)
- Artur Ekertが提案した量子もつれ(entanglement)を用いた方式。
- ベルの不等式を利用し、安全性を担保する。
🛡 なぜQKDは安全か?
- 従来の暗号(RSAなど)は「数学的に難しい問題」に依存するため、量子コンピュータが実用化されると解読される可能性があります。
- 一方、QKDは量子力学の「物理法則」に基づいているため、理論的に盗聴や解読が不可能です。
- 第三者が盗聴を試みると、その時点で送信情報が乱れ、受信者に通知されます。
🛰 現在の実用化と課題
- 一部の政府機関・金融機関・通信会社で導入が進んでいます。
- 中国では、世界初の衛星を使った量子鍵配送の実証実験が成功(「墨子号」プロジェクト)。
- 日本、米国、欧州もQKDの実用化研究を進めています。
一方で以下のような課題も存在します:
- 長距離の配送に課題がある(光ファイバーで100km程度で減衰が生じる)。
- 現在の通信インフラとのコスト面での互換性。
- デバイスのコストと複雑性が高く、現時点では大規模展開が難しい。

