量子鍵配布を利用したIPsec [ORF2008レポート]

   このエントリをはてなブックマークに登録    2008/11/26-2

量子コンピュータが実用化されれば現在の暗号技術が根底から覆ると言われています。 そのような時代に向けての研究として、IPsec with QKD(Quantum Key Distribution)の研究が発表されていました。 村井研究室(村井研AquaグループWebページ)による研究です(協力 : NEC)。

この発表では、IKE(Internet Key Exchange)部分で量子技術を使い鍵交換をセキュアにしています。 実装としてはracoon 2の改造によって実現しています。

Diffie-Hellman法

通信を暗号化するときに非常に重要になるのが、どうやって復号鍵を交換するかです。 暗号化する側と復号する側双方が同じ鍵を使うことと、その鍵を他の誰にも知られない事が非常に重要になります。

Diffie-Hellman法(以下、D-H法)は、最も一般的な鍵交換方式です。 D-H法は離散対数問題を利用して鍵を生成します。 離散対数問題を使った鍵交換システムは、鍵を知らない状態から網羅的に鍵を推測していくには普通の計算機では現実的な時間内に答えが出せない事に依存しています。

しかし、離散対数問題は量子コンピュータが実用化されるとShorの量子アルゴリズムによって高速な解読が可能であるとされています。 そのため、量子コンピュータが実用化されれば、D-H法を利用した鍵交換システムは事実上無意味になってしまいます。

参考 : Shorのアルゴリズム論文

Peter W. Shor, "Algorithms for Quantum Computation: Discrete Logarithms and Factoring", In Proceeding of 35th IEEE FOCS, pp.124-134, Santa Fe, NM, Nov 20-22, 1994

QKD (Quantum Key Distribution)

この研究では、QKDとしてBB84プロトコルを利用していました。 BB84プロトコルは最もポピュラーな量子鍵配送プロトコルだそうです。 1984年にBennettとBrassardによって提案されたところからBB84と命名されています。

BB84では、光子そのものを媒体として使います。 BB84プロトコルのメカニズムを以下に示します。

  • 送信者は偏光をランダムに選択して送付
  • 受信者は偏光をランダムに選択して検出
    • 正しい偏光状態(観測基底一致状態)でのみ正しいキュービット情報が得られる
  • 受信者は検出に用いた基底状態を送信者へ連絡
  • 送信者は基底の一致状況を返信する
  • 一致したキュービットを用いて暗号鍵を作成

以下、暗号鍵生成の流れです。 送信側と受信側で鍵として利用するキュービット列を合意していく過程です。

表中の基底部分で「+」と表現しているのは縦横スピンです。 横スピンを0とし、縦スピンを1としています。

「×」は斜め向きスピン2種類です。 左上から右下向きを0とし、左下から右上向きを1としています。

送信したキュービット 0 1 1 0 1 0 1
送信用基底 × × × ×
光子の偏光方向
受信用基底 × × ×
受信したキュービット 0 0 1 0 0 0 1
基底状態確認 - - -
使用するキュービット 0 - - 0 - 0 1

送信側は最初のキュービットを縦横基底で横スピンをかけることによって0を表現しています。 受信側でも縦横基底が観測され、0というキュービットが観測されます。 後に受信側が送信側に観測した基底を報告し、送信側と受信側が同じ基底を使った事がわかると0というキュービットが鍵として使用されます。

2つ目のキュービットとして送信側は、斜め基底をで左下から右上に向かうスピンをかけて1を表現しています。 しかし、受信側は縦横基底で観測してしまい、0という結果(横スピン)を観測します。 後に受信側が送信側に観測した基底を報告するときに、基底が一致していない事がわかり、このキュービットは鍵として利用されないことが決まります。

同様の処理によって、上記表では「0001」という鍵が生成されています。

盗聴不可能

この方式には、途中での盗聴は出来ないという特徴があります。 途中で光子を観測すると、スピンの状態が変わってしまいます。 縦横スピンと斜めスピンの2種類に対して観測可能なスピンは1種類だけであり、全く同じものを複製して再送信することが出来ません。 そのため、途中に盗聴者がいても発覚してしまいます。

盗聴者が観測基底の情報を持っていれば、途中で複製することが出来ますが、観測基底に関しての情報があらかじめ流れることはありません。 受信者が観測に使った基底に関しての情報を送信者へと連絡するフェーズがありますが、これは量子通信が行われた後です。

利用機材

この研究では、NICTの支援によってNECが開発した量子暗号装置を利用していました。

2007年 1月17日 : JST/NECプレスリリース 安全性を定量的に保証する量子暗号鍵配布システムを開発

会場においてあった機材です。 左側の大きな黒い機材(NEC製量子暗号装置)がAliceで、右側の大きな黒い機材がBobです。 NEC製製量子暗号装置の上に乗っているPCがIPsec Gatewayです。

Alice側で量子鍵が生成・送信されます。 量子鍵はレーザで光子一つずつに変更をかけて出力する形で送信されます。 Aliceに接続されたIPsec Gatewayは、QKDが作った鍵を使ってエンドノードからのパケットを暗号化しています。

Bob側で量子鍵を観測・受信します。 Bob側にはAPD(アバランシェフォトダイオード)が搭載されています。 Bobに接続されたIPsec Gatewayは、QKDが作った鍵で復号します。

最後に

現状では、QKDを使った通信はインターネット上ではなく専用の光ファイバー回線で行っています。 いわば、別回線で鍵だけ送信している状態です。 また、光ファイバ回線もワンホップであることが前提のようなので、転送距離も制限されています。

色々課題はありそうですが、非常に面白い研究だと思いました。 今後、恐らく技術は現在のビットを使ったものから量子を使ったものへとシフトしていくのではないかと思えた展示内容でした。

notice

この記事はORF2008レポートです。

   このエントリをはてなブックマークに登録