Kryptographie Vorlesung 11: Wahrscheinlichkeit und perfekte Geheimhaltung Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca [email protected] 1/27 WAHRSCHEINLICHKEIT Sei S eine endliche nichtleere Menge → Ergebnismenge. Die Elemente von S heißen Elementarereignisse. Example Wenn man eine Münze wirft, erhält man entweder Zahl oder Wappen. Die entsprechende Ergebnismenge ist S = {Z, W}. Wenn man würfelt, erhält man eine der Zahlen 1, 2, 3, 4, 5, 6. Die Ergebnismenge ist dann S = {1, 2, 3, 4, 5, 6}. Ein Ereignis (für S) ist eine Teilmenge der Ergebnismenge S. Das sichere Ereignis ist die Menge S selbst. Das leere Ereignis ist ∅. Zwei Ereignisse A und B schließen sich gegenseitig aus, wenn ihr Durchschnitt leer ist. Die Menge aller Ereignisse ist die Potenzmenge P(S) von S. 2/27 WAHRSCHEINLICHKEITSVERTEILUNG Definition Eine Wahrscheinlichkeitsverteilung auf S ist eine Abbildung Pr, die jedem Ereignis eine reelle Zahl zuordnet, also Pr : P(S) → R, und die folgende Eigenschaften erfüllt: 1 Pr(A) ≥ 0 für alle Ereignisse A, 2 Pr(S) = 1, 3 Pr(A ∪ B) = Pr(A) + Pr(B) für zwei Ereignisse A und B, die sich gegenseitig ausschließen. 3/27 Ist A ein Ereignis, so heißt Pr(A) Wahrscheinlichkeit dieses Ereignisses. Die Wahrscheinlichkeit eines Elementarereignisses a ∈ S ist Pr(a) = Pr({a}). Man sieht leicht, dass Pr(∅) = 0 ist. Aus A ⊆ B folgt, dass Pr(A) ≤ Pr(B) gilt. Daher ist 0 ≤ Pr(A) ≤ 1 für alle A ∈ P(S). Pr(S \ A) = 1 − Pr(A). Sind A1 , . . . , An Ereignisse, die sich paarweise P ausschließen, dann gilt Pr(∪ni=1 Ai ) = ni=1 Pr(Ai ). 4/27 Weil S eine endliche Menge ist, genügt es, eine Wahrscheinlichkeitsverteilung auf den Elementarereignissen zu definieren, denn es gilt P Pr(A) = a∈A Pr(a) für jedes Ereignis A. Die Wahrscheinlichkeitsverteilung, die jedem Elementarereignis a ∈ S die Wahrscheinlichkeit P(a) = 1/|S| zuordnet, heit Gleichverteilung. Example Eine Wahrscheinlichkeitsverteilung auf der Menge {1, 2, 3, 4, 5, 6}, die einem Würfelexperiment entspricht, ordnet jedem Elementarereignis die Wahrscheinlichkeit 1/6 zu. Die Wahrscheinlichkeit für das Ereignis, eine gerade Zahl zu würfeln, ist dann Pr({2, 4, 6}) = Pr(2) + Pr(4) + Pr(6) = 1/6 + 1/6 + 1/6 = 1/2. 5/27 B EDINGTE WAHRSCHEINLICHKEIT Example Wir modellieren Würfeln mit einem Würfel. Die Ergebnismenge ist {1, 2, 3, 4, 5, 6} und Pr ordnet jedem Elementarereignis die Wahrscheinlichkeit 1/6 zu. Angenommen, man weiß, dass man eine der Zahlen 4, 5, 6 gewürfelt hat. Man weiß also, dass das Ereignis B = {4, 5, 6} eingetreten ist. Unter dieser Voraussetzung möchte man die Wahrscheinlichkeit dafür ermitteln, dass man eine gerade Zahl würfelt. Da jedes Ereignis aus B gleich wahrscheinlich ist, hat jedes die Wahrscheinlichkeit 1/3. Da zwei Zahlen in B gerade sind, ist die Wahrscheinlichkeit dafür, dass eine gerade Zahl gewürfelt wurde, 2/3. 6/27 B EDINGTE WAHRSCHEINLICHKEIT Definition Sind A und B Ereignisse und Pr(B) > 0. Die Wahrscheinlichkeit für A unter der Bedingung B ist definiert als Pr(A | B) = Pr(A ∩ B) . Pr(B) Zwei Ereignisse A und B heiën unabhängig, wenn Pr(A ∩ B) = Pr(A)Pr(B) gilt. Diese Bedingung ist äquivalent zu Pr(A | B) = Pr(A). 7/27 S ATZ VON B AYES Theorem Sind A und B Ereignisse mit Pr(A) > 0 und Pr(B) > 0, so gilt Pr(B)Pr(A | B) = Pr(A)Pr(B | A). Beweis Nach Definition gilt Pr(A | B)Pr(B) = Pr(A ∩ B) und Pr(B | A)Pr(A) = Pr(A ∩ B). Daraus folgt die Behauptung unmittelbar. 8/27 G EBURTSTAGSPARADOX Wieviele Leute müssen in einem Raum sein, damit man eine gute Chance hat, dass wenigstens zwei von ihnen am gleichen Tag Geburtstag haben? Es gibt n verschiedene Geburtstage. Im Raum sind k Personen. Ein Elementarereignis ist ein Tupel (g1 , . . . , gk ) ∈ {1, 2, . . . , n}k . Tritt es ein, so hat die i-te Person den Geburtstag gi , 1 ≤ i ≤ k. Es gibt also nk Elementarereignisse. Wir nehmen an, dass alle Elementarereignisse gleich wahrscheinlich sind. Jedes Elementarereignis hat also die Wahrscheinlichkeit 1/nk . 9/27 G EBURTSTAGSPARADOX 10/27 G EBURTSTAGSPARADOX 11/27 G EBURTSTAGSPARADOX Es gilt 1 + x ≤ ex für alle reellen Zahlen. Es folgt −i/n q ≤ Πk−1 = e− i=1 e Ist k ≥ (1 + Pk−1 i=1 1/n = e−k(k−1)/2n . p 1 + 8n log 2)/2 so folgt, dass q ≤ 1/2 ist. Dann ist die Wahrscheinlichkeit p = 1 − q dafür, dass zwei Personen im Raum am gleichen Tag Geburtstag haben ≥ 1/2. Für n = 365 genügt k = 23, damit q ≤ 1/2 ist. Sind also 23 Personen im Raum, so haben mit Wahrscheinlichkeit ≥ 1/2 wenigstens zwei am gleichen Tag √ Geburtstag. Allgemein genügen etwas mehr als n viele Personen, damit zwei am gleichen Tag Geburtstag haben. 12/27 P ERFEKTE G EHEIMHALTUNG Wir definieren perfekt geheime Kryptosysteme: Wir gehen von folgendem Szenario aus: Alice benutzt ein Kryptosystem, um verschlüsselte Nachrichten an Bob zu schicken. Wenn Alice an Bob eine verschlüsselte Nachricht schickt, kann Oskar den Schlüsseltext lesen. Aus dem Schlüsseltext versucht Oskar, Informationen über den Klartext zu gewinnen. Verwendet Alice ein perfekt geheimes System, soll das unmöglich sein. Dies soll nun formalisiert und die perfekt geheimen Systeme sollen charakterisiert werden. 13/27 P ERFEKTE G EHEIMHALTUNG Sei P ein endlicher Klartextraum, C ein endlicher Schlüsseltextraum, K ein endlicher Schlüsselraum, Verschlüsselungsfunktionen Ek , k ∈ K, Entschlüsselungsfunktionen Dk , k ∈ K. Wir nehmen an, dass die Klartexte gemäß einer Wahrscheinlichkeitsverteilung PrP auftauchen. Diese Wahrscheinlichkeitsverteilung hängt von der verwendeten Sprache ab. Zusätzlich kann PrP vom Anwendungskontext abhängen. Sind Alice und Bob zum Beispiel Lehrer, dann ist die Wahrscheinlichkeit dafür, dass in einer Nachricht von Alice an Bob das Wort Schüler vorkommt, ziemlich groß. 14/27 P ERFEKTE G EHEIMHALTUNG Alice wählt für jeden neuen Klartext einen neuen Schlüssel. Die Auswahl folgt einer Wahrscheinlichkeitsverteilung PrK. Aus PrP und PrK erhält man eine Wahrscheinlichkeitsverteilung auf der Ergebnismenge P × K. Für einen Klartext p und einen Schlüssel k ist Pr(p, k) die Wahrscheinlichkeit dafür, dass der Klartext p erscheint und mit dem Schlüssel k verschlüsselt wird. Es gilt Pr(p, k) = PrP (p)PrK (k) und dadurch ist Pr festgelegt. 15/27 P ERFEKTE G EHEIMHALTUNG Ab jetzt betrachten wir nur noch die Ergebnismenge P × K. Für p ∈ P bezeichne p das Ereignis, dass p verschlüsselt wird, also das Ereignis {(p, k) | k ∈ K}. Dann gilt Pr(p) = PrP (p). Für k ∈ K bezeichne k das Ereignis, dass k verwendet wird, also das Ereignis {(p, k) | p ∈ P}. Dann gilt Pr(k) = PrK (k). Die Ereignisse p und k sind unabhängig. Für c ∈ C bezeichne c das Ereignis, dass das Ergebnis der Verschlüsselung c ist, also das Ereignis {(p, k) | Ek (p) = c}. 16/27 P ERFEKTE G EHEIMHALTUNG Oskar kennt die Wahrscheinlichkeitsverteilung PrP auf den Klartexten, weil er weiß, welche Sprache Alice und Bob benutzen. Oskar sieht die Schlüsseltexte. Er kann Rückschlüsse auf die Klartexte ziehen, wenn Schlüsseltexte bestimmte Klartexte wahrscheinlicher machen als andere. Er lernt nichts über die Klartexte, wenn die Wahrscheinlichkeit dafür, dass ein bestimmter Klartext vorliegt, nicht davon abhängt, wie der Klartext verschlüsselt wurde. 17/27 P ERFEKTE G EHEIMHALTUNG Definition Das Kryptosystem heißt perfekt geheim, wenn die Ereignisse, dass ein bestimmter Schlüsseltext auftritt und dass ein bestimmter Klartext vorliegt, unabhängig sind, wenn also Pr(p | c) = Pr(p) ist für alle Klartexte p und alle Schlüsseltexte c. 18/27 P ERFEKTE G EHEIMHALTUNG Sei P = {0, 1}, Pr(0) = 1/4, Pr(1) = 3/4. Weiter sei K = {A, B}, Pr(A) = 1/4, Pr(B) = 3/4. Schließlich sei C = {a, b}. Dann ist die Wahrscheinlichkeit dafür, dass das Zeichen 1 auftritt und mit dem Schlüssel B verschlüsselt wird, Pr(1)Pr(B) = 9/16. Die Verschlüsselungsfunktionen EK arbeiten so: EA (0) = a, EA (1) = b, EB (0) = b, EB (1) = a. Die Wahrscheinlichkeit dafür, dass der Schlüsseltext a auftritt, ist Pr(a) = Pr(0, A) + Pr(1, B) = 1/16 + 9/16 = 5/8. Die Wahrscheinlichkeit dafür, dass der Schlüsseltext b auftritt, ist Pr(b) = Pr(1, A) + Pr(0, B) = 3/16 + 3/16 = 3/8. 19/27 P ERFEKTE G EHEIMHALTUNG Wir berechnen nun die bedingten Wahrscheinlichkeiten Pr(p | c) für alle Klartexte p und alle Schlüsseltexte c. Es ist Pr(0 | a) = 1/10, Pr(1 | a) = 9/10, Pr(0 | b) = 1/2, Pr(1 | b) = 1/2. Diese Ergebnisse zeigen, dass das beschriebene Kryptosystem nicht perfekt geheim ist. Wenn Oskar den Schlüsseltext a beobachtet, kann er ziemlich sicher sein, dass der zugehörige Klartext 1 war. 20/27 S ATZ VON S HANNON Sei | P |=| K |=| C |< ∞ und sei Pr(p) > 0 für jeden Klartext p. Das Kryptosystem ist genau dann perfekt geheim, wenn die Wahrscheinlichkeitsverteilung auf dem Schlüsselraum die Gleichverteilung ist und wenn es für jeden Klartext p und jeden Schlüsseltext c genau einen Schlüssel k gibt mit Ek (p) = c. 21/27 B EWEIS Angenommen, das Verschlüsselungssystem ist perfekt geheim. Sei p ein Klartext. Wenn es einen Schlüsseltext c gibt, für den es keinen Schlüssel k gibt mit Ek (p) = c, dann ist Pr(p) = Pr(p | c) = 0. Aber dies widerspricht der perfekten Geheimhaltung. Für jeden Schlüsseltext c gibt es also einen Schlüssel k mit Ek (p) = c. Da aber die Anzahl der Schlüssel gleich der Anzahl der Schlüsseltexte ist, gibt es für jeden Schlüsseltext c genau einen Schlüssel k mit Ek (p) = c. Dies beweist die zweite Behauptung. 22/27 B EWEIS Um die erste Behauptung zu beweisen, fixiere einen Schlüsseltext c. Für einen Klartext p sei k(p) der eindeutig bestimmte Schlüssel mit Ek(p) (p) = c. Weil es genausoviele Klartexte wie Schlüssel gibt, ist K = {k(p) | p ∈ P} 23/27 B EWEIS Wir zeigen, dass für alle p ∈ P die Wahrscheinlichkeit für k(p) gleich der Wahrscheinlichkeit für c ist. Dann ist die Wahrscheinlichkeit für k(p) unabhängig von p. Da aber nach jeder Schlüssel k mit einem k(p), p ∈ P übereinstimmt, sind alle Schlüssel gleich wahrscheinlich. Sei p ∈ P. Wir zeigen Pr(k(p)) = Pr(c). Nach dem Satz über die bedingte Wahrscheinlichkeit gilt für jeden Klartext p Pr(p | c) = Pr(c | p)Pr(p) Pr(k(p))Pr(p) = . Pr(c) Pr(c) Weil das Verschlüsselungssystem perfekt geheim ist, gilt Pr(p | c) = Pr(p). Es folgt Pr(k(p)) = Pr(c), und dies ist unabhängig von p. 24/27 B EWEIS Wir beweisen die Umkehrung. Angenommen, die Wahrscheinlichkeitsverteilung auf dem Schlüsselraum ist die Gleichverteilung und für jeden Klartext p und jeden Schlüsseltext c gibt es genau einen Schlüssel k = k(p, c) mit Ek(p) = c. Dann folgt Pr(p | c) = Pr(p)Pr(c | p) Pr(p)Pr(k(p, c)) =P . Pr(c) q∈P Pr(q)Pr(k(q, c)) Nun ist Pr(k(p, c)) = 1/ | K |, weil alle Schlüssel gleich wahrscheinlich sind. 25/27 B EWEIS Außerdem ist P X q∈P Pr(1)Pr(k(q, c)) = q∈P Pr(q) |K | = 1 . |K | Setzt man dies oben ein, so folgt Pr(p | c) = Pr(p), wie behauptet. 26/27 O NE T IME PAD Sei n eine natürliche Zahl. Das One-Time-Pad verschlüsselt Bitstrings der Länge n. Es ist P = C = K = {0, 1}n . Die Verschlüsselungsfunktion zum Schlüssel k ∈ {0, 1}n ist Ek : {0, 1}n → {0, 1}n , p 7→ p ⊕ k. Die Entschlüsselungsfunktion zum Schlüssel k sieht genauso aus. Dieses Verschlüsselungssystem ist perfekt geheim, weil auf dem Schlüsselraum die Gleichverteilung gewählt wurde und weil für jeden Klartext p und jeden Schlüsseltext c genau ein Schlüssel k existiert mit c = p ⊕ k, nämlich k = p ⊕ c. 27/27