2026年5月24日日曜日

量子鍵配送プロトコルBB84での混合状態

Mixed States in the BB84 Quantum Key Distribution Protocol

At first glance, it may seem that if a perfectly noise-tolerant quantum computer existed, quantum computations would remain in pure states from beginning to end, making mixed states unnecessary. However, this is a misconception. Even in such an ideal quantum computer, mixed states can play an important and practical role.

I came to understand this through the BB84 quantum key distribution (QKD) protocol. Using the dynamic-circuit functionality available in Qiskit, I was able to verify this behavior experimentally on an IBM Quantum processor, ibm_kingston.

Specifically, when an eavesdropper is present, the BB84 protocol predicts a theoretical error-detection rate of 25%. Running the protocol on the quantum computer yielded an observed error rate of 25.9%, in close agreement with the theoretical expectation.

This experiment demonstrates that mixed states are not merely artifacts of noise or imperfections. Rather, they are an essential and useful concept in quantum information processing, even when quantum operations themselves are ideally coherent.

【要旨】これまで、密度行列に関する記事を2つ(こちらこちらに)書いた。それによれば、もしも、完璧なノイズ耐性量子コンピュータがあれば、量子計算は最初から最後まで、純粋状態を保たれるので、混合状態は考える必要がないように思われた。しかし、それは誤りであり、たとえ、そのような量子コンピュータであっても、混合状態は有効に利用されるのである。そのことを、量子鍵配送プロトコルBB84を例として理解した。Qiskitに装備されている動的量子回路機能を用いて、IBM Quantum実機で確かめることもできた。


🟢量子鍵配送プロトコルBB84の仕組み

 すでに、過去の記事(こちらこちら)で詳細を述べたが、短く言えば以下のようになるだろう。


Aliceは、古典ビット(01)と、使用する基底(2種)をそれぞれランダムに選んで決定する。そして、選択した基底における、古典ビットに対応する状態ベクトルをBobへ送る。

 Bobは、Aliceとは全く独立に選んだ基底で、受信した量子状態を測定する。もしもAliceBobの選んだ基底が一致していれば、両者は同一の古典ビットを得ることになる。

 しかし、ここでEveが盗聴を試みる場合、Eveは自身がランダムに選んだ基底でAliceの量子状態を測定してしまう。そして、Eveは盗聴を隠蔽するため、自身の測定結果に応じて量子状態を再度生成してBobへ送らざるを得ない。これは、量子状態複製不可定理による。しかし、Eveの選んだ基底がAliceのものと異なる場合(1/2の確率)、BobへはAliceが送ったものとは異なる(変質した)量子状態が届くことになる。

 その結果、後線でAliceBobが互いの基底を照合し、『基底が一致していたケース』のみを抽出したとしても、そのうち1/425%の確率で二人の古典ビットが不一致を起こす。 AliceBobはこのエラー率を検出することで、Eveの盗聴を確実に察知できる。


🟢混合状態はどこに現れ、利用されるか

 Aliceは「基底 Z= {|0>, |1>} または基底 X = {|+>, |->}」と「古典ビット(0または1)」をそれぞれ全くランダムに選び、以下に示す可能な4つの状態のいずれか1つを送信することになる。


 すなわち、送信される側のBobや、途中で盗聴を試みるEveの視点では、彼らはAliceがどの基底を使ったかを事前には知らない。したがって、彼らにとって届く量子状態は、4つの純粋状態が等確率(各 25%)で混ざり合った最大混合状態(Maximal Mixed State)になる。それを密度行列ρで表すと以下のようになる。


ρ = (|0><0| + |1><1| + |+><+| + |-><-| ) /4 = (1/2)I (Iは単位行列)


 このことは、Alice2つの基底をランダムに行き来することで、「基底情報を知らないEveが、その量子ビットから正しくビット情報を取り出すことはできない」ことを意味する。あるいは、

Eveがどの基底で待ち伏せしても、見つからず盗聴することは不可能」であることを示している。これが混合状態の正体であると言える。


🟢Qikitの動的量子回路機能でBB84を構成する

 以前は、量子回路は「測定」して得られた古典ビット情報に依存して、その後の量子回路を動的に変更や追加することができなかった。しかし、現在のQiskitではそれが可能なので、上に述べた混合状態を含む量子回路を、一つのジョブとして実行することができ、非常に便利である。その回路図は以下の通りである。

 

 Alice, Eve, およびBobがそれぞれ、どの基底を採用したか、また、測定結果はどうだったを見るため、量子回路の途中で、それぞれ2回づつ測定を行っている。それらの結果を6個の古典レジスタに格納し、その値に応じて、必要な量子ゲートを動的に追加している。


🟢IBM Quantumマシン実機(ibm_kingston)による実行結果

 以上の量子回路を、Open Planで利用可能なIBM 量子コンピュータ実機で実行した結果を以下に示す。盗聴なし、盗聴ありの両ケースとも、ノイズによる若干の影響がみられたが、ほぼ、理論値通りの結果が得られた。


==================================================

  Eveによる盗聴なしIBM Quantum ibm_kingston usage = 2s

==================================================

  採用鍵の長さ: 504 / 1000 shots

  AliceBobの選択基底が合致した先頭30個について:

   Aliceの鍵 : [1 1 0 1 0 1 0 1 0 0 1 0 1 0 0 0 1 1 1 1 1 1 0 0 1 0 1 0 1 0]

   Bobの鍵  : [0 1 0 1 0 0 0 1 0 0 1 0 1 0 0 0 1 1 1 1 0 1 0 0 1 0 1 0 1 0]

  実機エラー率: 1.4% (理論値: 0% + 実機ノイズ)

==================================================


==================================================

  Eveによる盗聴ありIBM Quantum ibm_kingston usage = 2s

==================================================

  採用鍵の長さ: 455 / 1000 shots

  AliceBobの選択基底が合致した先頭30個について:

   Aliceの鍵 : [0 1 1 1 1 0 0 1 1 1 1 1 0 0 0 1 1 1 1 0 1 1 1 1 0 0 1 1 1 0]

   Bobの鍵  : [1 1 1 0 1 0 0 0 1 1 1 1 0 0 0 0 1 0 0 0 1 1 0 1 0 0 1 1 1 0]

  実機エラー率: 25.9% (理論値: 25% + 実機ノイズ)

==================================================


0 件のコメント:

コメントを投稿