Cryptographyの歴史

Decrypt history, Encrypt future™

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の仕組み(基本原理)

量子力学の以下の性質を活用しています:

  1. 量子の重ね合わせ(Superposition)
    • 粒子(主に光子)が複数の状態を同時にとれる現象。
  2. 量子状態の測定不可避性(Measurement disturbance)
    • 量子状態を観測すると必ず状態が変化する(つまり観測行為が検出可能)。
  3. 量子の非複製定理(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程度で減衰が生じる)。
  • 現在の通信インフラとのコスト面での互換性。
  • デバイスのコストと複雑性が高く、現時点では大規模展開が難しい。