A3/Das BB84 Kryptographie Protokoll

Aus QuaNTH
Wechseln zu: Navigation, Suche

A3

Kommunikation
Einführung

Lektionen

Abb. 5 Die vier möglichen Zustände des BB84 Protokolls und die Antworten des Detektors bei Wahl der "h/v"- und "+/-45°"- Basis. Bei den mit "?" gekennzeichneten Fällen kommen beide Ergebnisse mit gleicher Wahrscheinlichkeit vor.
Abb. 6 Beispiel für das BB84 Protokoll. Die rot markierten Bits bei Bob gehören zu Instanzen, bei denen die Basiswahlen nicht übereinstimmten. Sie werden gestrichen und tragen nicht zum finalen Schlüssel bei.

Als Beispiel für das Prinzip der Quantenkryptographie beschreiben wir nun das so genannte BB84-Protokoll. Dies Protokoll wurde im Jahr 1984 von C. Bennett und G. Brassard vorgestellt[1] und beruht auf einer älteren Idee von S. Wiesner [2]. Das BB84 ist das heute wohl am besten verstandene und am meisten genutzte Protokoll in der Quanten-Schlüsselverteilung. Der Hauptgrund für die weite Verbreitung des Protokolls ist seine strukturelle Einfachheit, denn das Grundprinzip kann schon mit einem einfachen Aufbau mit polarisiertem Licht erklärt werden. Auch wir werden nun zunächst das Grundprinzip in dieser einfachen Form vorstellen und erst später auf Probleme bei der Implementierung unter praktischen Aspekten hinweisen.


Szenario

Wir gehen im Folgenden wieder davon aus, dass zwei Parteien, Alice und Bob, miteinander kommunizieren wollen. Den Angreifer in diesem Szenario nennen wir Eve (vom englischen Ausdruck "to eavesdrop" für abhören).

Wir hatten im vorherigen Abschnitt schon gesehen, dass die Aufgabe der sicheren Kommunikation völlig auf die Aufgabe der sicheren Schlüsselverteilung zurückgeführt werden kann. Damit besteht das Ziel also darin, einen Schlüssel zwischen Alice und Bob zu erzeugen, über den Eve durch Lauschen nichts lernen kann. Genauer gesagt wollen Alice und Bob herausfinden, wie viel Informationen während ihrer Kommunikation an Eve geflossen seien kann.


Idee des Protokolls

Hierzu wenden sie ein Protokoll an, bei dem zunächst nach einem festgelegten Schema Quantensysteme von Alice an Bob geschickt werden, welcher die Systeme dann ausmisst. Sollte kein Lauschangriff stattgefunden haben, erreichen die Signale Bob ungestört; jede Störung deutet auf einen Angreifer hin. Nachdem der Austausch von Quantensystemen abgeschlossen ist, wird daher ein Teil der gesammelten Daten von Bob veröffentlicht und mit den gesendeten Daten von Alice verglichen. Ergibt sich hierbei keine Störung, so ist klar, dass auch keine Informationen abgeflossen seien können.

Betrachten wir nun den Aufbau bei einem BB84-Protokoll etwas näher. Hierbei gehen wir davon aus, dass Alice der Sender und Bob der Empfänger der Signale ist. Alice hat in ihrem Labor eine Einzelphotonenquelle zur Verfügung, also ein Gerät, mit dem sie auf Knopfdruck ein einzelnes Photon erzeugen und zu Bob schicken kann. Zusätzlich hat sie noch die Möglichkeit, das Photon in verschiedene Zustände zu polarisieren. Bob auf der anderen Seite hat einen Detektor, welcher fein genug ist, um auch einzelne Photonen erkennen zu können, sowie einen Analysator, also ein Gerät, welches die Polarisation eines Photons prüft. Hierbei ist es nun wichtig zu bemerken, dass nicht alle Zustände, die Alice präparieren kann, auch von Bob mit einer einzelnen Messung unterschieden werden können.

Implementierung mit polarisiertem Licht

Betrachten wir eine konkrete Situation: Alice präpariert einen von vier möglichen Zuständen, nämlich entweder horizontal polarisiertes Licht (h), vertikal polarisiertes Licht (v), +45° polarisiertes Licht (+) oder -45° polarisiertes Licht (-). Bob misst die ankommenden Zustände entweder mit einem Polarisator in h/v Basis, oder in +/- Basis. Das bedeutet, wenn Alice den Zustand h schickt, und Bob ihn in der Basis h/v misst, so zeigt sein Messgerät mit Sicherheit den Zustand h an. Misst Bob hingegen den Zustand h mit dem Detektor in +/- Basis, so erhält er ein zufälliges Ergebnis. Somit hat er also zwei Messungen zur Verfügung, die jeweils zwei der von Alice präparierten Zustände mit Sicherheit unterscheiden können, bei den anderen beiden Zuständen jedoch ein zufälliges Ergebnis liefern. Ein entsprechendes Verhalten ergibt sich bei den anderen Kombinationen aus Zuständen und Messungen. Wir haben dies schematisch in Abb. 5 dargestellt.

Der ungestörte Fall

Betrachten wir zunächst das ideale Protokoll, in dem kein Angreifer die Ergebnisse stört, dann läuft das Protokoll wie folgt: Alice wählt zwei zufällige Folgen von 0en und 1en. Ein Wert in der ersten Folge entspricht hierbei dem Schlüsselbit, welches sie an Bob übertragen möchte, der Wert in der zweiten entspricht der Basis, in der sie den Zustand übermittelt. Ein Schlüsselbitwert von 0 in Basis 0 wird also als h kodiert, ein Schlüsselbitwert von 1 in Basis 0 als v, ein Wert von 0 in Basis 1 als + und ein Wert von 1 in Basis 1 als -. Auch Bob würfelt nun eine Folge von Zufallszahlen aus, wobei seine Zufallszahlen ihm die jeweilige Basiswahl vorgeben. Damit folgt aber, dass Bob in den Fällen, in denen er in derselben Basis gemessen hat, in der Alice präpariert hat, ihren Schlüsselbitwert rekonstruieren kann. Misst er in der nicht passenden Basis, erhält er ein von Alices Wert unabhängiges, zufälliges Ergebnis.

Wir haben ein Beispiel für eine solche Kommunikation in Abb. 6 skizziert. Alice wählt zufällig zwei Bitfolgen, eine für den Schlüssel, den sie versenden möchte, und eine für die jeweilige Basis. Dann übersetzt sie die Kombination von Schlüsselbit und Basisbit in den jeweiligen Quantenzustand und schickt diesen an Bob. Im Falle einer idealen, also fehlerfreien, Übertragung erreichen die von Alice versendeten Quantenzustände Bob ungestört. Er nutzt nun seinerseits eine zufällige Bitfolge, um die Basis zu wählen, in der er misst. Wann immer seine Wahl für die Basis mit der von Alice übereinstimmt, was in etwa 50% der Signale der Fall ist, stimmt der von ihm empfangene Schlüssel mit dem überein, den Alice gesendet hat. Nachdem die beiden nun ihre jeweilige Basiswahl veröffentlicht haben, streichen sie die Ergebnisse, bei denen die Basen nicht übereinstimmen, und erhalten einen Schlüssel, der etwa halb so lang ist wie die gesendeten Signale. Dies ist der Kandidat für den sicheren Schlüssel.

Was weiß Bob?

Hierbei ist zu beachten, dass die graphische Darstellung in Abb. 6 an einer Stelle etwas Falsches suggerieren könnte: Alice weiß zwar, welche der vier Quantenzustände sie geschickt hat und diese werden auch ohne Störung an Bob übertragen, aber Bob weiß deshalb noch nicht, in welchem der Zustände die Signale bei ihm angekommen sind. Wenn also in der bläulichen Kiste die einzelnen Zustände gemalt sind, so haben wir als allwissender Beobachter diese Information, Bob weiß das aber nicht. Es gibt für ihn ja gerade keine Möglichkeit, die vier Zustände, die Alice schickt, mit einer einzigen Messung zu unterscheiden. Stattdessen kann er immer nur zwei der vier möglichen Zustände mit Sicherheit unterscheiden, nämlich die, welche zu seiner Basiswahl passen.

Eve greift ein

Bisher hatten wir den Fall einer idealen Übertragung betrachtet, also ohne Angreifer Eve. Wenn wir nun Eve hinzunehmen, so erhalten wir eine zusätzliche Partei, die genau wie Bob Messungen am Quantenssignal durchführen kann, und zwar nachdem Alice das Signal losgeschickt hat und bevor es bei Bob ankommt. Auch Eve ist durch die Grundgesetze der Quantenmechanik beschränkt: Auch sie kann den Zustand eines einzelnen Signals nicht mithilfe einer einzelnen Messung herausfinden.

Im Allgemeinen kann Eve natürlich eine beliebige Attacke gegen das System fahren, für den Moment beschränken wir uns jedoch der Anschaulichkeit halber auf den einfachsten Fall, einer so genannten "Intercept-resend"-Attacke (ein "Messen-und-Neupräprieren"-Angriff). Hierbei misst sie jedes ankommende Signal und präpariert daraufhin ein neues Signal, welches zu ihrem Ergebnis passt.

Sagen wir beispielsweise, sie würde in der h/v Basis messen und ein Ergebnis von 0 bekommen, welches also zu dem Zustand h gehört. Dann präpariert sie den Zustand h und schickt ihn an Bob. Nun können aber zwei Dinge passiert sein: Entweder hat Alice ihren Zustand auch in der Basis h/v präpariert, dann schickt Eve denselben Zustand weiter, den Alice geschickt hat und bleibt somit unentdeckt, oder Alice hatte einen Zustand in der Basis +/- präpariert. Da Alice ihre Basis zufällig auswählt und diese Wahl vor Eve geheim ist, treten die beiden Fälle jeweils mit einer Wahrscheinlichkeit von 50% auf. In letzterem Fall stimmt der Zustand, den Eve sendet, nicht mit einem der Zustände überein, die Alice gesendet hat. Dies führt dazu, dass Bob in diesem Fall mit einer Wahrscheinlichkeit von 50% ein falsches Ergebnis bekommt, also sein empfangener Schlüssel nicht mit dem von Alice gesendeten übereinstimmt. Insgesamt besteht so für jedes Bit des Schlüssels eine Chance von 25%, dass ein Fehler auftritt.

Test der Übertragung

Um dies zu überprüfen, müssen Alice und Bob nach der Kommunikation noch einen Teil ihres Schlüssels veröffentlichen, um den Grad der Übereinstimmung festzustellen. Sollten sie hierbei sehen, dass ihre Schlüssel immer übereinstimmen, so können sie schließen, dass kein Lauscher bei der Schlüsselerzeugung zugegen war. Andererseits gibt jede beobachtete Nicht-Übereinstimmung einen Hinweis darauf, wie viel Informationen an Eve abgeflossen sind, wie viel Eve also über den finalen Schlüssel weiß. Wie bereits gesagt, haben wir hier nur den einfachsten Fall der "intercept-resend"-Attacke beschrieben. Die Aufgabe der Quantenkryptographie liegt nun genau darin, quantitative Schranken zu geben, die für allgemeine Attacken gültig sind. Wie diese quantitativen Abschätzungen genau funktionieren, folgt in den späteren Kapiteln (C.2 und C.3).

Nachverarbeitung

Was aber machen Alice und Bob nun, wenn sie durch Vergleich festgestellt haben, wie viele Fehler sie in ihrem Schlüssel haben und wie viel Informationen an Eve abgeflossen sind? Hier können zwei Techniken aus der klassischen Informationsverarbeitung genutzt werden, nämlich die "Error-Correction" ("Fehlerkorrektur") und die "Privacy-Amplification" (hier existiert keine einheitliche Übersetzung, in etwa "Heimlichkeits-Verstärkung"). Die Aufgabe der Fehlerkorrektur besteht darin, die während der Kommunikation im Schlüssel entstandenen Fehler zu korrigieren. Hierzu sendet Alice Korrekturinformationen an Bob (und somit auch an Eve), welche zur Korrektur der Fehler genutzt werden können. Hierbei wird die Länge des Schlüssels nicht verändert. Im zweiten Schritt wird dann mithilfe der Privacy-Amplification aus dem (nun bei Alice und Bob identischen) Schlüssel ein neuer Schlüssel generiert der kürzer ist als der ursprüngliche Schlüssel und der dann keine Korrelation mehr mit Eve aufweist.



Nachweise

  1. C. H. Bennett, G. Brassard: Quantum Cryptography: Public key distribution and coin tossing, Proc. IEEE Int. Conf. on Computers, Systems, and Signal Processing, Bangalore, 175 (1984)
  2. S. Wiesner: Conjugate Coding, Sigact News, 15:1 , 78-88 (1983)