暗号学の分野では、送り手を アリス(Alice)、受け手を ボブ(Bob)、盗聴者を イブ(Eve)と呼ぶのが慣例になっているそうなので、ここでもそれに従う。アリスがボブに通信文を送る時、例えばアルファベットを使うのなら $1$ から $26$ までの数字で代用できる。例えば「Hello」ならば
$$8, 5, 12, 12, 15$$となる。ただこれをそのまま送るとイブが待ち受けていて容易に傍受されてしまう。それを避けるための暗号化なのだが、色々な方法が考案されている。例えば送りたい数列に一斉に $1$ をプラスし
$$9, 6, 13, 13, 16$$を送る。もちろんボブは、『$1$ を一斉にプラスする』ことについてアリスからあらかじめ知らされているので、容易に元の「Hello」を再現できる。ところがイブは、意味不明の「ifmmp」を得ることになる。
しかしながら、こんな簡単な暗号化はすぐに見破られてしまうだろう。しかし完全にランダムな数列を使えば安全性は格段に向上する。つまり
$$p, \hskip 2mm q, \hskip 2mm r, \hskip 2mm s, \hskip 2mm t, \hskip 2mm \cdots $$を完全にランダムな数列とし、これをアリスとボブだけが共有し、アリスは
$$8+p, 5+q, 12+r, 12+s, 15+t$$をボブに送るのである。(ランダムな数列はもちろん十分に長いとし、また、プラスした結果が $26$ を超えてしまう場合は、$26$ の倍数を差し引いて $26$ 以下になるようにしてから送る。)受け取ったボブは、鍵であるランダムな数列を知っているから容易に元の数列を再現できるが、イブはそれを知らないから解読できない。
この方法で最も大事な点は、鍵となるランダムな数列をイブに知られないことである。手紙に書いて送る、あるいは電話で話すようなことをすれば、途中で開封されたり盗聴される危険性がある。1984 年にチャールズ・ベネットとジル・ブラサールによって、量子の特性を使ううまい方法、「量子鍵配送」が考案された。今回はその紹介である:
任意の整数は $0$ と $1$ だけを用いる二進法で表すことができるので、ランダムな整数列を共有することは、$0$ と $1$ から成るランダムな数列を共有することに等しい。そこで、光子の偏極の状態が $2$ 次元の線型空間を成すことに着目する。水平に偏極した状態を $b$ で、垂直に偏極した状態を $b'$ でそれぞれ表し、$b$ の光子は $0$ を $b'$ の光子は $1$ を表すと、アリスとボブの間で約束しておけば、例えば数列
$$00101110\cdots $$を送りたい時には
$$bbb'bb'b'b'b\cdots $$の光子の列をボブに向けて発射すればよい。ボブは方解石と光子検出器からなる図のような装置にアリスから送られてくる光子を通し、
検出器 $D_b$ のブザーが鳴れば $0$ を、$D_{b'}$ のブザーが鳴れば $1$ を記録する。アリスが $b$ と $b'$ をランダムに選んで送れば、$0$ と $1$ から成るランダムな数列をボブとの間で共有することになる。
ただこの方法でもイブに盗聴される危険性がある。イブも当然、ボブと同じ装置を使って、アリスからの光子の偏極方向を測定することを考えるだろう。もちろん、盗み見たことが露見しないように、アリスから受け取ったのと同じ状態の光子をボブに向けて送ることを忘れないはずである。
このイブの悪巧みを阻むためにベネット、ブラサールの両氏が考案したのは次の方法である。この方法によってアリスとボブは、イブの存在に気づくことができる:アリスは $b$ と $b'$ の光子以外に水平方向から $+45$ 度の方向に偏極した光子 $c$ と、$-45$ 度の方向に偏極した光子 $c'$ も用意し、$c$ は $0$ を、$c'$ は $1$ を表すために使う。
アリスは $b, b', c, c'$ の光子をランダムに選びボブへ向かって発射する。ボブは $b, b'$ を検出する装置と、それを $+45$ 度傾けて $c, c'$ を検出できるようにした装置を、アリスからの光子を一つ受け取るたびにランダムに(アリスの用いる手法とは独立な手法を用いて)切り替えて使う。
まずイブが盗み見ていないとする。アリスが $b$ か $b'$ の光子を発射し、ボブも $b, b'$ を検出する装置を使った時を考えてみる。この時、アリスが $0$ を、つまり $b$ の光子を送ったとすると、ボブも $b$ の光子を検出し、よって $0$ を受け取ることになる。アリスが $1$ を送ったとしても同じで、ボブは $1$ を受け取る。アリスが $c$ か $c'$ の光子を使い、ボブも $c, c'$ を検出する装置を使った時も同様で、アリスの送った $0, 1$ はそのままボブへ届く。
そこでボブはアリスに電話をかけ、それぞれの光子を $b, b'$ で送ったか、$c, c'$ で送ったかを尋ねる。アリスの返答を元に、二人の間で同じ基底を選んだ時の光子を抜き出せば、それらの光子は皆、アリスの送ったものをそのままボブへ届けているはずである。この「ふるいにかけられた光子」のリストを二人で共有すれば、それで $0, 1$ からなるランダムな数列を二人の間で共有できたことになる。但しこの会話の中で、リスト内の各々のケースでどの状態の光子を使い、あるいは検出したかは、決して話してはいけない。盗み聴きされてしまえば元も子もない。
では次にイブが介在している場合を考えよう。イブは $b, b'$ の状態を検出する装置を使い、アリスからの光子の状態を測って、同じ状態の光子をボブに向けて発射するとする。まず、アリスとボブが基底 $b, b'$ を選んだ場合を考える。この場合には、イブはアリスの送る $0$ もしくは $1$ を正しく傍受し、それをそのままボブへ送ることができる。ボブもそのまま検出する。
しかし、アリスとボブが共に基底 $c, c'$ を選んだ場合にはそうはいかない。詳しく見るために、アリスが $0$ を送った、つまり $c$ の状態の光子を発射した時を考える。この時
$$c={1\over {\sqrt 2}}(b+b')$$だからイブは半々の確率で $b$、または $b'$ の光子を検出する。その時々に応じて同じ状態の光子をボブに向けて発射するので、$c, c'$ を検出する装置でそれを受け取るボブには、結局 $1/2$ の確率で $1$ が届く。アリスが $1$ を送った場合にもまったく同様で、$1/2$ の確率で $0$ がボブに届く。つまりこの場合には、アリスの送ったものとボブの受け取るものが $1/2$ の確率で食い違うことになる。
ここでボブが自分の持つ二種類の装置をランダムに切り替えていることを思い出して欲しい。そのため、アリスとボブが同じ基底を選んで光子を送りあるいは検出する場合、アリスの送る $0, 1$ が必ずしもボブへ正しく届くとは言えず、$1/4$ の確率でエラーが生じる。従って「ふるいにかけられた光子」のリストの一部について、アリスとボブがそれぞれの光子に関する各自のデータを電話で読み上げてみれば、$1/4$ の確率で食い違いが見つかるはずである。こうして二人はイブの盗聴に気づくことができる。
実にうまい方法である:もし光子が、例えば野球のボールのような巨視的な物体であるなら、その属性(例えば回転の向きとか)をイブが盗み見る場合、ボールの状態をほとんど乱すことなくやってのける方法がありそうである。その時、イブの盗聴は誰にも知られることがない。しかし実際の光子は野球のボールとは本質的に違う。状態 $c$ の光子を水平方向と垂直方向の偏極を測る装置に通すと、$c$ の状態は完全に失われる。状態 $c$ を乱すことなく、そのまま保ったままで、水平・垂直の偏極の度合いを測ることはできない。上で紹介した「量子鍵配送」の方法は、光子のこの量子力学的特性をうまく利用している。
目次を表示