tecktom.com

比べる2つの分布:鍵の秘密を DD で測る

2026年10月15日11分で読めますAI生成教科書『虎の巻』第3部 第10章 量子鍵配送
目次
  1. ワンタイムパッドと完全秘匿
  2. 鍵の秘密を相対エントロピーで測る
  3. BB84 の手順
  4. 量子もつれで言い直す
  5. 木下の層

AI 生成・木下が未勉強

相対エントロピーから情報と物理を組み立てる 第3部 第10章 §3.10.1 ★★★ 完全秘匿は相互情報量 00、鍵の秘密は「一様で Eve と独立な状態」からの相対エントロピーで測る。BB84 の手順と、それを量子もつれで言い直した形を用意する

2人の利用者 Alice と Bob が、盗聴者 Eve に知られない共通の乱数列(鍵)を持ちたいとする。鍵があれば、送りたい文に鍵を足すだけで、通信の内容を完全に隠すことができる(ワンタイムパッド)。ところが、鍵を新しく作るのは古典の通信だけでは難しい。公開の通信路を流れた文字列は Eve もすべて写し取れるので、Eve の計算能力に制限を仮定しない限り、Alice と Bob だけが知る乱数を公開の通信から作ることはできない。量子力学では事情が変わる。直交しない2つの状態は1回の測定で区別しきれず、未知の状態を複製することもできないので、Eve が情報を得ようとすればAlice と Bob の相関に乱れが残る。Alice と Bob はその乱れを測り、乱れが小さければ Eve の情報も小さいと結論して、鍵を取り出す。

この章では、この「情報を得れば乱れが残る」を相対エントロピーの不等式として量的に書く。比べる状態は2組ある。1組目は Alice の鍵と Eve の系の結合状態と、鍵が一様で Eve と独立な理想の状態で、その相対エントロピーが鍵の秘密の度合いになる。2組目は Alice と Bob の結合分布と周辺の積で、これが Bob の持つ情報量 I(A;B)I(A;B) になる。取り出せる鍵の割合は、Bob の情報量から Eve の情報量を引いた I(A;B)−I(A;E)I(A;B)-I(A;E) で下から押さえられる(Devetak–Winter の定理)。当てる性質はデータ処理不等式で、これを Eve の測定に当てると Eve の情報量が Holevo 量で上から押さえられ、Eve の系に当てると「Eve は Alice と Bob の状態の純粋化を持つ」と最悪の場合を仮定してよいことが分かる。出てくるものは3つである。1つ目は、Eve の情報量が位相の誤り率 exe_x だけで hb(ex)h_{\mathrm b}(e_x) 以下に押さえられること、2つ目は BB84 の鍵率 ln⁡2−2hb(Q)\ln2-2h_{\mathrm b}(Q) と誤り率のしきい値 11.0%11.0\%、3つ目は誤り訂正と秘匿性増幅によって有限の長さの鍵を実際に取り出す手順である。

この章では次のように約束する。Alice が送るのは理想の1個の量子ビットで、Bob の検出器も仕様どおりに働くとする(装置の不完全さを突く攻撃は扱わない)。Eve には量子力学が許すどんな操作も認める。公開の古典通信は Eve に聞かれるが、書き換えられることはない(認証されている)とする。対数は自然対数で、情報量の単位は nat である。鍵の長さは慣例どおりビットで数えるので、数値は ln⁡2\ln2 で割ってビットで示す。Pauli 行列は記法の正本に従って X,Y,ZX,Y,Z、恒等演算子は 1\mathbf 1 と書く。確率変数に X,Y,ZX,Y,Z を使うと Pauli 行列と紛れるので、確率変数は持ち主の名前で AA(Alice)・BB(Bob)・EE(Eve)と書き、どの基底で測った結果かを添字で AzA_z・AxA_x のように示す。

ワンタイムパッドと完全秘匿

nn ビットの文 MM を送りたいとする。Alice と Bob は、一様に分布し MM と独立な nn ビットの鍵 KK をあらかじめ共有している。Alice は各ビットごとの排他的論理和 M~=M⊕K\tilde M=M\oplus K(暗号文)を公開の通信路で送り、Bob は M~⊕K=M\tilde M\oplus K=M で文を戻す。文が mm のとき暗号文が m~\tilde m になる確率は、鍵が m⊕m~m\oplus\tilde m になる確率 2−n2^{-n} で、mm によらない。したがって M~\tilde M は MM と独立で、

I(M;M~)=D(pMM~ ∥ pMpM~)=0(3.10.1)I(M;\tilde M)=D(p_{M\tilde M}\,\|\,p_Mp_{\tilde M})=0\tag{3.10.1}

となる。暗号文だけを見た Eve は、文について何も知らない。これを完全秘匿と呼ぶ。

完全秘匿には、文と同じだけの鍵が要る。Shannon は次のことを示した1C. E. Shannon (1949), Bell Syst. Tech. J. 28, 656.下の脚注へ。完全秘匿 H(M ∣ M~)=H(M)H(M\,|\,\tilde M)=H(M) が成り立つ暗号では、MM が KK と M~\tilde M で決まることから H(M ∣ K,M~)=0H(M\,|\,K,\tilde M)=0 なので、

H(M)=H(M ∣ M~)≤H(M,K ∣ M~)=H(K ∣ M~)+H(M ∣ K,M~)=H(K ∣ M~)≤H(K)(3.10.2)H(M)=H(M\,|\,\tilde M)\le H(M,K\,|\,\tilde M)=H(K\,|\,\tilde M)+H(M\,|\,K,\tilde M)=H(K\,|\,\tilde M)\le H(K)\tag{3.10.2}

が成り立つ。文のエントロピー以上のエントロピーを持つ鍵がなければ、完全秘匿にはならない。しかも鍵は1回使えば捨てる必要がある(同じ鍵で2つの文 M1,M2M_1,M_2 を送ると、M~1⊕M~2=M1⊕M2\tilde M_1\oplus\tilde M_2=M_1\oplus M_2 が Eve に分かる)。暗号の問題は「秘密の鍵をどう配るか」という問題に置き換わる。これを量子力学で解くのが量子鍵配送である。

鍵の秘密を相対エントロピーで測る

鍵が完全でないとき、どれだけ秘密かを測る量が要る。Alice の鍵を dd 通りの値をとる確率変数 AA とし、Eve は量子系 EE を持っているとする。Alice の値が aa のときの Eve の状態を ρ^Ea\hat\rho_E^a とすると、2つの結合状態は

ρ^AE=∑ap(a) ∣a⟩⟨a∣⊗ρ^Ea(3.10.3)\hat\rho_{AE}=\sum_ap(a)\,| a \rangle \langle a |\otimes\hat\rho_E^a\tag{3.10.3}

と書ける。AA が古典の値なので、AA の側は対角の密度行列で表した。このような状態を cq 状態(classical-quantum)と呼ぶ。理想の鍵は、値が一様で、Eve の状態が値によらないものである。それを表す状態 1d1A⊗ρ^E\frac1d\mathbf 1_A\otimes\hat\rho_E(ρ^E=∑ap(a)ρ^Ea\hat\rho_E=\sum_ap(a)\hat\rho_E^a)と、実際の状態とを比べる。

命題 3.10.1(鍵の秘密の分解 ★★★)

cq 状態 (3.10.3) について

D(ρ^AE ∥ 1d1A⊗ρ^E)=ln⁡d−S(A ∣ E)ρ=D(pA ∥ u)+I(A;E)ρ(3.10.4)D\Bigl(\hat\rho_{AE}\,\Big\|\,\tfrac1d\mathbf 1_A\otimes\hat\rho_E\Bigr)=\ln d-S(A\,|\,E)_\rho=D(p_A\,\|\,u)+I(A;E)_\rho\tag{3.10.4}

が成り立つ。ここで S(A ∣ E)ρ=S(ρ^AE)−S(ρ^E)S(A\,|\,E)_\rho=S(\hat\rho_{AE})-S(\hat\rho_E) は条件付きエントロピー、uu は dd 個の値の一様分布、I(A;E)ρ=D(ρ^AE ∥ ρ^A⊗ρ^E)I(A;E)_\rho=D(\hat\rho_{AE}\,\|\,\hat\rho_A\otimes\hat\rho_E) は量子相互情報量である。

証明

ln⁡(1d1A⊗ρ^E)=−ln⁡d 1+1A⊗ln⁡ρ^E\ln(\frac1d\mathbf 1_A\otimes\hat\rho_E)=-\ln d\,\mathbf 1+\mathbf 1_A\otimes\ln\hat\rho_E なので、−Tr⁡ρ^AEln⁡(1d1A⊗ρ^E)=ln⁡d+S(ρ^E)-\operatorname{Tr}\hat\rho_{AE}\ln(\frac1d\mathbf 1_A\otimes\hat\rho_E)=\ln d+S(\hat\rho_E) である。これに Tr⁡ρ^AEln⁡ρ^AE=−S(ρ^AE)\operatorname{Tr}\hat\rho_{AE}\ln\hat\rho_{AE}=-S(\hat\rho_{AE}) を足すと最初の等号を得る。2つ目の等号は、ln⁡d−S(A ∣ E)=(ln⁡d−H(A))+(H(A)−S(A ∣ E))\ln d-S(A\,|\,E)=(\ln d-H(A))+(H(A)-S(A\,|\,E)) と分け、ln⁡d−H(A)=D(pA ∥ u)\ln d-H(A)=D(p_A\,\|\,u) と H(A)−S(A ∣ E)=I(A;E)H(A)-S(A\,|\,E)=I(A;E) を使えば得られる。

秘密の度合いは、鍵の値の偏り D(pA ∥ u)D(p_A\,\|\,u) と、Eve との相関 I(A;E)I(A;E) の和になっている。どちらも非負で、両方が 00 のときに限り理想の鍵になる。この章の量はすべてこの2つのどちらかを評価するためにある。ワンタイムパッドの式 (3.10.1) は、EE を暗号文に置き換えた古典の場合で、偏りの項が 00 の場合にあたる。

BB84 の手順

Bennett と Brassard が 1984 年に提案した手順(BB84)2C. H. Bennett and G. Brassard (1984), Proc. IEEE Int. Conf. on Computers, Systems and Signal Processing (Bangalore), 175.下の脚注へは次のとおりである。量子ビットの2つの基底を、ZZ の固有基底 {∣0⟩,∣1⟩}\{| 0 \rangle ,| 1 \rangle \} と XX の固有基底 {∣+⟩,∣−⟩}\{| + \rangle ,| - \rangle \}(∣±⟩=(∣0⟩±∣1⟩)/2| \pm \rangle =(| 0 \rangle \pm| 1 \rangle )/\sqrt2)とする。

  1. Alice は乱数のビット aa と乱数の基底(ZZ か XX)を選び、ZZ なら ∣a⟩| a \rangle、XX なら a=0,1a=0,1 に応じて ∣+⟩,∣−⟩| + \rangle ,| - \rangle を Bob へ送る。
  2. Bob も乱数で基底を選んで測り、結果をビット bb として記録する。
  3. 全部送り終えてから、2人は使った基底だけを公開の通信路で伝え合い、基底が一致した回だけを残す(ふるい分け)。平均で半分が残る。
  4. 残ったビットの一部を公開して比べ、基底ごとの誤り率 eze_z・exe_x を見積もる。比べたビットは捨てる。誤り率が大きすぎれば中止する。
  5. 残りのビットで、誤り訂正(Bob のビットを Alice のビットにそろえる)と秘匿性増幅(Eve の情報を消す)を行い、最終の鍵にする。

手順4〜5は公開の古典通信だけで行う。量子力学を使うのは手順1〜2だけである。2つの基底の状態は互いに ∣⟨0∣±⟩∣2=12\lvert \langle 0 | \pm \rangle \rvert ^2=\frac12 の重なりを持つ。Eve は送られた状態の基底を知らないので、どちらの基底で測っても半分の場合に状態を乱す。図 3.10.1 に流れを示す。

図

図 3.10.1 BB84 の流れ。量子ビットは1方向に1回だけ送られ、Eve はそれに何でも作用させられる(破線)。公開の古典通信は Eve に聞かれるが書き換えられない。

量子もつれで言い直す

BB84 は、量子もつれを使う形に言い直すと解析しやすくなる。Alice が手元で Bell 状態 ∣Φ+⟩=(∣00⟩+∣11⟩)/2| \Phi^+ \rangle =(| 00 \rangle +| 11 \rangle )/\sqrt2 を作り、2つ目の量子ビットを Bob へ送り、1つ目を自分で ZZ か XX で測るとする。ZZ で測って結果 aa を得ると、送った量子ビットは ∣a⟩| a \rangle になる。また ∣Φ+⟩=(∣++⟩+∣−−⟩)/2| \Phi^+ \rangle =(| ++ \rangle +| -- \rangle )/\sqrt2 と書けるので、XX で測ると送った量子ビットは ∣±⟩| \pm \rangle になる。どちらの基底でも結果は一様に出るので、Bob に届く状態の集まりは BB84 と同じである。Bob から見て2つの手順は区別できないので、安全性も同じになる3この言い直しは C. H. Bennett, G. Brassard and N. D. Mermin (1992), Phys. Rev. Lett. 68, 557 による。量子もつれを使う鍵配送は A. K. Ekert (1991), Phys. Rev. Lett. 67, 661 が Bell の不等式と結びつけて提案した。下の脚注へ。

この形では、Eve の攻撃は「Alice と Bob の量子ビットの対が ∣Φ+⟩| \Phi^+ \rangle でなく別の状態 ρ^AB\hat\rho_{AB} になる」ことに置き換わる。そこで比べる2つめの組は、実際の状態 ρ^AB\hat\rho_{AB} と理想の ∣Φ+⟩⟨Φ+∣| \Phi^+ \rangle \langle \Phi^+ | である。両者のずれは、Alice と Bob が測る誤り率 eze_z・exe_x に現れる。

例題 3.10.1 偏った鍵のワンタイムパッド ★★

オリジナル1ビットの文 MM を1ビットの鍵 KK で M~=M⊕K\tilde M=M\oplus K と暗号化する。鍵は文と独立だが偏っていて、Pr⁡(K=0)=0.6\Pr(K=0)=0.6 である。

  1. 文が一様(Pr⁡(M=0)=1/2\Pr(M=0)=1/2)のとき、Eve が暗号文から得る情報量 I(M;M~)I(M;\tilde M) をビットで求めよ。それが D(pK ∥ u)D(p_K\,\|\,u) に等しいことを示せ。
  2. 文が偏っていて Pr⁡(M=0)=0.9\Pr(M=0)=0.9 のとき、I(M;M~)I(M;\tilde M) をビットで求めよ。
解答

(1) MM を固定すると M~\tilde M は KK を MM だけずらしたものなので、H(M~ ∣ M)=H(K)=hb(0.6)H(\tilde M\,|\,M)=H(K)=h_{\mathrm b}(0.6) である。MM が一様なら M~\tilde M も一様で、H(M~)=ln⁡2H(\tilde M)=\ln2。したがって

I(M;M~)=H(M~)−H(M~ ∣ M)=ln⁡2−hb(0.6)=D(pK ∥ u).I(M;\tilde M)=H(\tilde M)-H(\tilde M\,|\,M)=\ln2-h_{\mathrm b}(0.6)=D(p_K\,\|\,u).

数値は 1−hb(0.6)/ln⁡2=1−0.97095=0.02901-h_{\mathrm b}(0.6)/\ln2=1-0.97095=0.0290 ビットである。命題 3.10.1 の言葉では、鍵の偏り D(pK ∥ u)D(p_K\,\|\,u) が文の漏れに等しい。

(2) Pr⁡(M~=0)=0.9×0.6+0.1×0.4=0.58\Pr(\tilde M=0)=0.9\times0.6+0.1\times0.4=0.58 なので H(M~)=hb(0.58)H(\tilde M)=h_{\mathrm b}(0.58)、H(M~ ∣ M)=hb(0.6)H(\tilde M\,|\,M)=h_{\mathrm b}(0.6) は変わらない。I(M;M~)=[hb(0.58)−hb(0.6)]/ln⁡2=0.98145−0.97095=0.0105I(M;\tilde M)=[h_{\mathrm b}(0.58)-h_{\mathrm b}(0.6)]/\ln2=0.98145-0.97095=0.0105 ビット。文が偏っていると漏れは小さくなるが、00 にはならない。

1 C. E. Shannon (1949), Bell Syst. Tech. J. 28, 656.

2 C. H. Bennett and G. Brassard (1984), Proc. IEEE Int. Conf. on Computers, Systems and Signal Processing (Bangalore), 175.

3 この言い直しは C. H. Bennett, G. Brassard and N. D. Mermin (1992), Phys. Rev. Lett. 68, 557 による。量子もつれを使う鍵配送は A. K. Ekert (1991), Phys. Rev. Lett. 67, 661 が Bell の不等式と結びつけて提案した。

木下の勉強ステータス

木下はまだこの記事を勉強していません。

AI(Claude)が書いた教材を、木下が勉強しながら公開しています。式と数値は検算していますが、誤りが残っているかもしれません。誤りのご指摘・削除のご依頼をいただければ直します。 連絡先:support@tecktom.com

← AI生成教科書『虎の巻』の記事一覧へ