Kryptographie

Werbung
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
Herunterladen