**BB84**, Charles Bennett ve Gilles Brassard tarafından 1984 yılında geliştirilen bir kuantum anahtar dağıtımı yöntemidir. İlk kuantum kriptografi yöntemidir. Protokol bilgiyi taşıyan kuantum parçalarının birbirine dik olmamasına dayanan bir güvenliğe sahiptir. Genelde gizli bir anahtarın karşıya güvenli olarak iletilmesi için kullanılabilecek bir protokol olarak açıklanır.

Tanım
-----

BB84'te Alice Bob'a bir gizli anahtar göndermek ister. Bunu BB84 ile yapabilmesi için iletişimde fiber optik kablo kullanıldığı varsayılmaktadır. Bu şekilde fotonların durumu ve süzgeçler yardımı ile algoritma kullanılabilir. Süzgeçlerimiz {\displaystyle +} ve X şeklindedir. Alice şifrelemeye {\displaystyle a} ve {\displaystyle b} stringleri ile başlar, bunların ikisi de {\displaystyle n} uzunluğundadır. Alice bu iki stringi {\displaystyle n} kubitlerinden oluşan bir string olacak şekilde şifreler.

{\displaystyle |\psi \rangle =\bigotimes \_{i=1}^{n}|\psi \_{a\_{i}b\_{i}}\rangle .}

{\displaystyle a\_{i}} ve {\displaystyle b\_{i}}, {\displaystyle a} ve {\displaystyle b} nin {\displaystyle i} numaralı bitleridir. Birlikte {\displaystyle a\_{i}b\_{i}} aşağıdaki dört kubit durumunu verir:

{\displaystyle |\psi \_{00}\rangle =|0\rangle }

{\displaystyle |\psi \_{10}\rangle =|1\rangle }

{\displaystyle |\psi \_{01}\rangle =|+\rangle ={\frac {1}{\sqrt {2}}}|0\rangle +{\frac {1}{\sqrt {2}}}|1\rangle }

{\displaystyle |\psi \_{11}\rangle =|-\rangle ={\frac {1}{\sqrt {2}}}|0\rangle -{\frac {1}{\sqrt {2}}}|1\rangle .}

{\displaystyle b\_{i}} biti {\displaystyle a\_{i}} nin hangi şekilde şifreleneceği bilgisini verir. Kubitler artık birbirlerine dik olmayacak şekildedir, bu sebeple {\displaystyle b} bilinmeden hangi konumda olacaklarını bilmek imkânsızdır.

Alice {\displaystyle |\psi \rangle } bunu Bob'a açık bir kuantum kanalından (fiber optik kablo) gönderir. Bob {\displaystyle \varepsilon \rho =\varepsilon |\psi \rangle \langle \psi |} durumunu elde eder, {\displaystyle \varepsilon } kanalda karışan sesleri ve Eve'in müdahaleleri sonucu oluşanları simgeler. Bob kubitleri aldıktan sonra her üç tarafta (Alice, Bob ve Eve) kendi kubit durumlarına sahip olurlar. Bununla birlikte sadece Alice {\displaystyle b} yi bildiği için Bob ve Eve'in kubitlerin durumunu bilmesi imkânsızdır. Ayrıca Bob kubitleri aldıktan sonra eğer Eve doğru ölçüleri bilmiyorsa Bob'un aldığı kubitleri bilemeyeceğini biliyoruz. Ama Eve'in araya dahil olması ½ ihtimalle Bob'un aldığı özel bir kubiti etkileyebilir.

Bob {\displaystyle b} uzunluğunda rastgele {\displaystyle b'} bitleri üretip bunları Alice'den aldığı {\displaystyle a'} bitleri ile ölçer. Bu noktada Bob Alice'in gönderdiklerini aldığını açıkça ilan eder. Alice artık güvenli bir şekilde {\displaystyle b}'yi açıklayabileceğini anlar. Bob açık bir kanal üzerinden hangi {\displaystyle b\_{i}} ve {\displaystyle b'\_{i}}'nin eşit olmadığını anlamak için Alice ile haberleşir. Alice ve Bob {\displaystyle a} ve {\displaystyle a'} kubitlerini {\displaystyle b} ve {\displaystyle b'} eşleşmeyenlere göre elerler.

Kalan Alice ve Bob'un aynı temelde ölçtükleri {\displaystyle k} bitlerinden Alice rastgele {\displaystyle k/2} bitlerini seçip buları açık bir kanalda yayınlar. Alice ve Bob bu bitleri açık bir kanalda yayınlayıp belirli bir sayıda bitler konusunda anlaşıp anlaşmadıklarını kontrol ederler. Eğer bu kontrol başarılı olursa kuantum anahtar dağıtımı tekniğini gizli anahtar oluşturmak için kullanırlar. Diğer türlü işlemi iptal edip baştan başlarlar.

Kaynakça
--------

* *Quantum Computing and Quantum Information*, Michael Nielsen and Isaac Chuang