Das Public-Key-Kryptosystem RSA

Größe: px
Ab Seite anzeigen:

Download "Das Public-Key-Kryptosystem RSA"

Transkript

1 Kapitel 5 Das Public-Key-Kryptosystem RSA Bisher haben wir Secret-Key-Kryptosysteme betrachtet (Abbildung 1.1). Mit diesem Kapitel wenden wir uns der Public-Key-Kryptographie zu (Abbildung 1.2). In der Public-Key-Kryptographie wird zur Übermittlung einer Nachricht nicht ein einziger Schlüssel (secret key), der nur Sender und Empfänger bekannt ist, benutzt, sondern ein Paar von Schlüsseln (public key, private key). Während der public key der Öffentlichkeit zur Verfügung steht und dem Sender einer Nachricht zum Verschlüsseln dient, wird zum Entschlüsseln der nur dem Empfänger bekannte private key benutzt. In einem Secret-Key-Kryptosystem ist der geheime Schlüssel idealerweise ein Geheimnis zwischen genau zwei Partnern. Bei N Teilnehmern müssen also bis zu N(N 1) 2 Schlüssel vorhanden sein. Außerdem müssen diese Schlüssel auf sicherem Weg zwischen der beiden betroffenen Partnern ausgetauscht werden, bevor chiffrierte Kommunikation stattfinden kann. In einem Public-Key-Kryptosystem sind dagegen pro Partner nur zwei Schlüssel nötig, der öffentliche und der private. Bei N Teilnehmern braucht man also nur 2N Schlüssel, die zudem nicht vorab (mit allen Risiken der Entdeckung) ausgetauscht werden müssen. Ein gewichtiger Nachteil von Public-Key-Kryptosystemen ist ihre (im Vergleich mit Secret-Key-Kryptosystemen) erhebliche Ineffizienz. Auf der Webseite von PGP 1 ist die Rede von einem Effizienzgefälle von 1000%. Public-Key-Kryptosysteme sind also überall da interessant, wo zwischen den Teilnehmern nicht von vorneherein ein Vertrauensverhältnis oder eine Sicherheitsabsprache vorausgesetzt werden kann, es aber trotzdem (oder gerade deswegen) wichtig ist, dass ein Empfänger zum Beispiel verifizieren kann, dass eine erhaltene Nachricht tatsächlich vom angegebenen Sender stammt. Außerdem sind sie interessant, wenn es sich um (relativ) kleine Datenvolumina handelt. Typische Anwendungsbeispiele sind elektronische Verträge, Passwortsysteme, elektronische Aufträge, elektronischer Geldverkehr, sichere Identifizierung / Authentifizierung im Internet, und digitale Signaturen (Unterschriften). Die großen Dateien auf dem PC verschlüsselt man jedoch tunlichst mit einem effizienteren Verfahren, z.b. mit AES (Kapitel 4). In diesem Kapitel wird das wichtigste und am weitesten verbreitete Public-Key-Kryptosystem RSA (benannt nach seinen Entwicklern: Ron Rivest, Adi Shamir und Leonard Adleman) beschrieben. Gegen Ende des Kapitels wenden wir uns auch der Kryptanalyse und den Sicherheitsrisiken dieses Systems zu. Im nächsten 1 Siehe PGP ist ein hybrides System, das sowohl Anteile von Secret-Key-Kryptographie enthält als auch Ideen aus der Public-Key-Kryptographie (speziell aus RSA) verwendet. 65

2 66 Vorlesungsskript von E. Best / Stand: 4. Juni 2004 Kapitel betrachten wir ein weiteres Public-Key-Kryptosystem, das im Hinblick auf die Kryptanalyse gewisse Vorteile gegenüber RSA bietet. 5.1 Mehr Zahlentheorie Der Chinesische Restsatz RSA benutzt Zahlen n = pq, die Produkt zweier Primzahlen p und q sind. Manchmal möchte man die Modulo-n-Rechnung auf zwei einfachere Modulo-Rechnungen bezüglich kleinerer Zahlen, p und q, zurückführen. Der Chinesische Restsatz stellt eine allgemeine Methode dafür bereit. Beispiel: (zugeschrieben Sun-Tsu, 100 a.d.) Wir suchen eine ganze Zahl, die Reste 2 bzw. 3 bzw. 2 lässt, wenn sie durch 3 bzw. 5 bzw. 7 geteilt wird. Satz Chinesischer Restsatz Sei N = n 1... n k mit paarweise teilerfremden natürlichen Zahlen n i (i = 1,..., k). Die Relation ρ Z N (Z n1... Z nk ) mit (a, (a 1,..., a k )) ρ gdw. a i = a mod n i für alle i = 1,..., k ist ein Isomorphismus, d.h., eine strukturerhaltende Bijektion zwischen Z N und Z n1... Z nk. Dabei heißt ρ strukturerhaltend (oder operationstreu), wenn alle Operationen (die 0, die 1, die Addition und die Multiplikation) mit ρ vertauschbar sind, genauer: wenn (0, (0,..., 0)) ρ, (1, (1,..., 1)) ρ, und wenn mit (a, (a 1,..., a k )) ρ und (b, (b 1,..., b k )) ρ auch gilt. (a+b mod n, (a 1 +b 1 mod n 1,..., a k +b k mod n k )) ρ und (ab mod n, (a 1 b 1 mod n 1,..., a k b k mod n k )) ρ Beweis: Wir betrachten die Zahlen N i = N/n i für i = 1,..., k. Aus der paarweisen Teilerfremdheit der n i und der Eindeutigkeit der Primzahlzerlegung einer Zahl folgt, dass n i ein Teiler von N j ist, sofern i j gilt, und dass ggt(n i, N i ) = 1 gilt. Wir definieren weiterhin: c i = N i (N 1 i mod n i ) für i = 1,..., k. Die c i sind wegen ggt(n i, N i ) = 1 wohldefiniert. Außerdem gilt c j N j 0 (mod n i ) falls i j (weil n i ein Teiler von N j ist) c i (N i N 1 i ) 1 (mod n i ) D.h., es gilt (c i, (0,..., 0, 1, 0,..., 0)) ρ, wobei (0,..., 0, 1, 0,..., 0) ein Vektor mit k Einträgen ist, der überall 0 ist, außer an der i ten Stelle, wo eine 1 steht. Wir beweisen jetzt, dass ρ eine Bijektion ist. Zunächst ist ρ eine Funktion, weil die a i sich aus a nach der eindeutigen Vorschrift a i = a mod n i ergeben. Wir zeigen, dass ρ auch surjektiv ist. Sei nämlich ein Vektor (a 1,..., a k ) Z n1... Z nk gegeben. Mit Hilfe der oben definierten c i setzen wir a = (a 1 c 1 + a 2 c a k c k ) mod N

3 Kryptographie - Sommersemester und berechnen: a mod n i = ( Definition von a ) ((a 1 c 1 + a 2 c a k c k ) mod N) mod n i = ( wegen n i N ) (a 1 c 1 + a 2 c a k c k ) mod n i = ( weil c j mod n i gleich 0 für j i und gleich 1 für j=i ist ) a i mod n i = ( weil a i Z ni gilt ) a i. Also gilt a i = a mod n i für alle i = 1,..., k, und daher (a, (a 1,..., a k )) ρ nach Definition von ρ. Die Mengen Z N und Z n1... Z nk sind gleich groß, denn beide haben genau N Elemente. Jede surjektive Funktion von einer Menge in eine gleich große Menge muss auch injektiv sein. Also ist ρ surjektiv und injektiv und somit eine Bijektion. Die Operationstreue von ρ kann unschwer nachgewiesen werden Bemerkung: Z N ist isomorph zu Z n1... Z nk, da beides zyklische Gruppen der Ordnung N sind, wobei 1 und (1,..., 1) Erzeugende der jeweiligen Gruppen sind. Die Zuordnung 1 (1,..., 1) bestimmt daher bereits eindeutig einen Isomorphismus, und zwar, wie man dann sieht, ρ. Ende der Bemerkung. Beispiel (Fortsetzung): Wir suchen Zahlen x mit ( x }{{} 2 mod }{{} 3 ) und ( x }{{} 3 mod }{{} 5 ) und ( x }{{} 2 mod }{{} 7 ). (5.1) a 1 n 1 a 2 n 2 a 3 n 3 Wir bilden N = = 105. Danach berechnen wir die N i : N 1 = = 35, N 2 = = 21, N 1 = = 15 und die c i : c 1 = N 1 (N1 1 mod n 1 ) = 35 (35 1 mod 3) = 35 2 = 70, c 2 = 21 (21 1 mod 5) = 21 1 = 21, c 3 = 15 (15 1 mod 7) = 15 1 = 15. Schließlich bilden wir a = (a 1 c 1 + a 2 c 2 + a 3 c 3 ) mod N = ( ) mod 105 = 233 mod 105 = 23. Die Zahl x = 23 hat also die gesuchte Eigenschaft (5.1). Die Menge aller solcher Zahlen ist die von 23 erzeugte Restklasse von 105, also {23 + l 105 l Z}. Ende des Beispiels. Dieses Beispiel zeigte bereits eine Hauptanwendung des Chinesischen Restsatzes, nämlich die Lösung vorgegebener Systeme von modularen Äquivalenzen. Es gibt eine andere Anwendung, nämlich die Erleichterung von modularen Rechnungen. Ist N eine große Zahl und kennt man die Faktorenzerlegung von N, dann kann das Rechnen modulo N manchmal mit Vorteil auf das Rechnen modulo der Faktoren einer paarweise teilerfremden Faktorenzerlegung von N zurückgeführt werden, zum Beispiel im Sinne des folgenden Korollars; man hat dann mehr Gleichungen, aber kleinere Moduli. Korollar Rechnen modulo N und modulo n i Seien n 1,..., n k paarweise relativ prim und sei N = n 1... n k. Dann sind für alle Zahlen x und a die beiden folgenden Aussagen äquivalent: (i) x a (mod N); (ii) x a (mod n i ) für alle i = 1,..., k. Aus dem Chinesischen Restsatz kann die Multiplikativität der Eulerschen Φ-Funktion hergeleitet werden: 5.1.2

4 68 Vorlesungsskript von E. Best / Stand: 4. Juni 2004 Korollar Multiplikativität von Φ Seien n 1,..., n k paarweise teilerfremde natürliche Zahlen. Dann gilt Φ(n 1... n k ) = Φ(n 1 )... Φ(n k ). Beweis: Sei N = n 1... n k. Aus der Teilerfremdheit der n i folgt: ggt(x, N) = 1 genau dann, wenn für alle i = 1,..., k gilt: ggt(x, n i ) = 1. Folglich ist die Restriktion ρ = ρ (Z N (Z n 1... Z n k )) ebenfalls eine Bijektion. Die Mengen Z N und Z n 1... Z n k sind also gleich groß, d.h., es gilt Φ(N) = Φ(n 1 )... Φ(n k ) Modulare Exponentiation In RSA wird Exponentiation sehr großer Zahlen mit sehr großen Exponenten benötigt. Wir geben in diesem Abschnitt einen Algorithmus zur Berechnung der Zuweisung d := a b mod n für a, b N und n N\{0} an, der auch für große a, b und n effizient d berechnet. Er beruht auf wiederholtem Quadrieren, einer Methode, die auch für das Multiplizieren verwendet werden kann und dann als wiederholtes Verdoppeln schon seit alters her bekannt ist 2. Der Algorithmus ist in Abbildung 5.1 gezeigt. Es wird vorausgesetzt, dass der Exponent b binär vorliegt. Die Eingaben des Algorithmus sind also a, n und die Binärdarstellung b k 1... b 0 von b (mit dem höchstwertigen Bit links). Die Ausgabe des Algorithmus ist d. Zum Verständnis des Algorithmus dient die Hilfsvariable c (die ansonsten auch weggelassen werden könnte). proc modexp( a, b, n); Ausgabe (globaler Parameter): d begin {c := 0} d := 1; i := k 1; {inv 0 c b d = a c mod n} do i 0 {c := 2 c} d := (d d) mod n if b i = 0 skip b i = 1 {c := c+1} d := (d a) mod n fi; i := i 1 od; {c = b d = a c mod n} end; Abbildung 5.1: Algorithmus zur modularen Exponentiation. 2 Z.B. unter dem Namen russische Bauernregel, siehe auch

5 Kryptographie - Sommersemester Beispiel: Wir berechnen mod 561, d.h., die Zuweisung d := modexp(7, 560, 561). Die Binärdarstellung von b mit dem höchstwertigen Bit links ist (zehnstellig; also ist k = 10). Die Tabelle in Abbildung 5.2 gibt Werte an, die im Verlauf des Algorithmus berechnet werden. Die Ausgabe ist d = 1, es gilt also (mod 561). Ende des Beispiels. i b i c d Abbildung 5.2: Beispiel zur modularen Exponentiation. Wenn die drei Eingaben a, b und n jeweils Zahlen mit l Bits sind, dann benötigt ein Aufruf modexp(a, b, n) O(l) arithmetische Operationen und O(l 3 ) Bitoperationen: O(l) wegen der äußeren Schleife und O(l 2 ) wegen der modularen Multiplikationen innerhalb der Schleife (in Bits umgerechnet) Hinreichende Bedingungen für Zerlegbarkeit In RSA werden schnelle Primzahltests benötigt. Solche Algorithmen beruhen oft auf hinreichenden Bedingungen für die Zerlegbarkeit einer Zahl n. Zwei Bedingungen dieser Natur werden im Folgenden angegeben. Sei Z + n = Z n \{0}. Falls n prim ist, dann gilt Z + n = Z n. Definition Pseudoprimalität Eine nicht-prime Zahl n heißt pseudoprim zur Basis a (a Z + n ), wenn gilt: a n 1 1 (mod n) Falls n prim ist, dann gilt a n 1 1 (mod n) für alle a Z + n nach Korollar (dem kleinen Fermat). Wenn man also, bei gegebenem n, ein a Z + n finden kann, für das diese Äquivalenz nicht gilt, dann ist n sicher keine Primzahl. Die Existenz einer solchen Zahl a ist also hinreichend für die Zerlegbarkeit von n. Ein a mit dieser Eigenschaft heißt auch Zeuge (witness) gegen (die Primalität von) n. Zur Herleitung einer zweiten hinreichenden Bedingung für die Zerlegbarkeit einer Zahl benötigen wir ein zahlentheoretisches Resultat, das hier ohne Beweis zitiert wird 3 : Satz n te Wurzeln Sei p prim und sei a Z relativ prim zu p (also a 0 (mod p)). Dann hat die Kongruenz x n a (mod p) genau ggt(n, p 1) Lösungen oder genau 0 Lösungen, je nachdem ob gilt. a b 1 (mod p) oder a b 1 (mod p), wobei b = p 1 ggt(n, p 1), Wir brauchen diesen Satz für n = 2 und p 2; in der folgenden Form geht er auf Euler zurück: 3 Theorem 2.28 in Niven/Zuckerman: An Introduction to the Theory of Numbers, 4. Auflage, Wiley.

6 70 Vorlesungsskript von E. Best / Stand: 4. Juni 2004 Korollar Quadratwurzeln / Eulersches Kriterium Sei p eine ungerade Primzahl und sei a 0 (mod p). Dann hat x 2 a (mod p) genau 2 Lösungen oder genau 0 Lösungen, je nachdem ob gilt. a b 1 (mod p) oder a b 1 (mod p), wobei b = p 1 2, Beweis: Mit b = p 1 2 gilt a b ±1 (mod p), weil (a b 1) (a b + 1) a p (mod p) nach Korollar Es gilt also a b 1 (mod p) genau dann, wenn a b 1 (mod p). Außerdem gilt ggt(2, p 1) = 2, weil p ungerade ist. Die Behauptung folgt nun direkt aus Satz Wir brauchen hiervon den Spezialfall a = 1: Korollar Nichtexistenz nichttrivialer Einheitswurzeln Sei p eine ungerade Primzahl. Dann gibt es keine Zahl x ±1 (mod p) mit x 2 1 (mod p). Beweis: 1 und 1 sind bereits zwei Lösungen von x 2 1 (mod p), die nicht äquivalent sind, da p ungerade ist. Weitere Lösungen kann es laut Korollar nicht geben Wiederum lässt die Existenz einer nichttrivialen Einheitswurzel, d.h. einer Zahl x mit den Eigenschaften x ±1 (mod n) und x 2 1 (mod n), den Schluss zu, dass n nicht prim ist. Auch in diesem Fall wird x ein Zeuge gegen die Unzerlegbarkeit von n genannt. Beispielsweise gilt (mod 35), aber 6 ±1 (mod 35). Jetzt wissen wir, dass 35 zerlegbar ist; 6 hat dies bezeugt. 5.2 RSA im Detail RSA benutzt eine (sehr große) natürliche Zahl n, die das Produkt zweier Primzahlen ist, und erlaubt die Chiffrierung von Zahlen zwischen 0 und n 1 (inklusive). Der Klartextraum (und auch der Chiffretextraum) ist also Z n. Kryptosystem RSA-Kryptosystem Es sei n eine Zahl, die Produkt zweier ungerader Primzahlen p und q ist: n = p q mit 2 p q 2. Seien P = C = Z n und sei K (der Schlüsselraum) die Menge der Tupel {(n, e, p, q, d) e, d {2,..., Φ(n) 1} e d 1 (mod Φ(n))}. Für einen Schlüssel K = (n, e, p, q, d) definieren wir Ver- und Entschlüsselung: e K (x) = x e mod n d K (y) = y d mod n, für alle x, y Z n. Das Paar (n, e) ist der public key, das Tripel (p, q, d) der private key Es muss gezeigt werden, dass d K tatsächlich das Inverse von e K ist:

7 Kryptographie - Sommersemester Satz Korrektheit von RSA Für alle x Z n gilt d K (e K (x)) = x, d.h., d K (e K (x)) x (mod n). Beweis: Da n = pq mit Primzahlen p, q, gilt Φ(n) = (p 1)(q 1). Da ed 1 (mod Φ(n)), kann ed als ed = 1 + k(p 1)(q 1) für eine ganze Zahl k geschrieben werden. Sei x Z n beliebig. Falls p x, dann gilt: (x e ) d = x ed = x 1+k(p 1)(q 1) = x x k(p 1)(q 1) = x (x p 1 ) k(q 1) x (mod p) ( wegen des Satzes von Fermat, Korollar ) Falls aber p x, dann gilt ebenfalls (x e ) d x (mod p), weil beide Seiten 0 (mod p) sind. Genauso zeigt man, dass (x e ) d x (mod q) für alle x Z n gilt. Nach Korollar zum Chinesischen Restsatz gilt dann auch (x e ) d x (mod n), was zu zeigen war Ein RSA-System wird durch die folgenden Schritte hergestellt: (1) Zwei (große) Primzahlen p und q werden generiert. (2) Es werden n := pq und Φ(n) := (p 1)(q 1) gesetzt. (3) Es wird ein Exponent e mit 2 e < Φ(n) und ggt(e, Φ(n)) = 1 gewählt. Letzteres garantiert die Invertierbarkeit von e modulo Φ(n). (4) Es wird d := e 1 mod Φ(n) gesetzt. (5) Der öffentliche Schlüssel ist (n, e), der private Schlüssel ist (p, q, d). Beispiel: Bob möchte ein RSA-System aufsetzen, damit (ihm bekannte, oder auch ihm unbekannte) Partner ihm verschlüsselte Botschaften schicken können, die nur er entziffern kann. Er wählt p = 101 und q = 113 (Schritt 1). (Das sind allerdings ganz unrealistisch kleine Zahlen.) Dann ergeben sich n = und Φ(n) = (Schritt 2). Es gilt = Deshalb kann ein Exponent e zwischen 2 und genau dann verwendet werden, wenn er nicht durch 2, 5 oder 7 teilbar ist. Bob wird in der Regel Φ(n) nicht faktorisieren, sondern für Zahlen e, die als Exponenten in Frage kommen könnten, nachprüfen, ob ggt(e, 11200) = 1 gilt. Dies geschieht mit dem Algorithmus extended euclid aus Abschnitt (mit der Berechnung von e 1 als Nebeneffekt). Annahme: Bob wählt e = 3533 (Schritt 3). Dann ergibt sich: e 1 mod = Bobs Entschlüsselungsschlüssel ist also d = 6597 (Schritt 4). Nun veröffentlicht Bob n = und e = 3533 im Netz, behält aber die Zahl d für sich, genauso wie p und q (Schritt 5). Zur Bekanntgabe öffentlicher Schlüssel gibt es spezielle Webseiten, aber Bob könnte auch (oder zusätzlich) seine eigene Webpräsenz wählen.

8 72 Vorlesungsskript von E. Best / Stand: 4. Juni 2004 Angenommen nun, dass Alice den Klartext 9726 verschlüsselt an Bob schicken möchte. Alice lädt e = 3533 und n = aus dem Netz, berechnet mod = 5761, und schickt den Chiffretext 5761 über einen (unsicheren, öffentlichen) Kanal an Bob. Wenn Bob diesen Chiffretext bekommt, benutzt er seinen geheimen Entschlüsselungsexponenten d = 6597 und berechnet mod = Er kann den Klartext also problemlos lesen. Wichtig ist, dass kein anderer ihn entziffern kann; auf diese Frage kommen wir noch zurück. Wie könnte Alice tatsächliche Texte nicht nur Zahlen in RSA verschlüsseln? Eine Methode ist die Folgende. Im Besitz der Zahl n = und von 26 Buchstaben bildet Alice zunächst eine Blocklänge k = log 26 (11413) = 2 und rechnet Blöcke von Buchstaben der Länge k in Zahlen zur Basis 26 um, deren Ziffern Buchstaben entsprechen und deren Zahlenwert (wegen der Wahl von k) zwischen 0 inklusive und exklusive liegt. Fortsetzung des Beispiels: Alice ist treu; sie möchte wie schon in Abschnitt 1.1 den Klartext ic hl ie be di ch verschlüsseln. Sie bildet also sechs Blöcke der Länge k = 2 (oben schon durch Zwischenräume angedeutet) und interpretiert diese als Zahlen x 1,..., x 6 zur Basis 26: ic (8, 2) x 1 = = 210 hl (7, 11) x 2 = = 193 ie (8, 4) x 3 = = 212 be (1, 4) x 4 = = 30 di (3, 8) x 5 = = 86 ch (2, 7) x 6 = = 59. Die entstehenden Zahlen werden nacheinander RSA-verschlüsselt: y 1 = mod = LAT y 2 = mod = NQI y 3 = mod = LWM y 4 = mod = ICK y 5 = mod = BAP y 6 = mod = EBI. Wenn die so berechneten Zahlen mit Ziffern zur Basis 26 geschrieben werden, genügen drei solche Ziffern. Der entstehende Chiffretext ist: LAT NQI LWM ICK BAP EBI. Ende des Beispiels.

9 Kryptographie - Sommersemester Im Allgemeinen kann auf diese Weise ein Klartext der Blocklänge k auf einen Chiffretext der Blocklänge k + 1 injektiv abgebildet werden. Man könnte ein RSA-System problemlos auch als Secret-Key-Kryptosystem betreiben. AES (Kapitel 4) ist jedoch, wie bereits erwähnt, sehr viel effizienter. Im Rest dieses Kapitels beschäftigen uns drei Fragen: Welche Exponenten e sind geeignet? Wie kann man geeignete Primzahlen p und q (und damit auch RSA-Moduli n = pq) generieren? Welche Attacken gegen RSA bzw. welche Sicherheitslücken von RSA gibt es? 5.3 Auswahl eines Exponenten Der öffentliche Schlüssel e soll eine effiziente Verschlüsselung gewährleisten (weswegen kleine e eine gute Wahl sind) und gleichzeitig die Sicherheit nicht gefährden (weswegen große e eine gute Wahl sind). Die Wahl e = 2 ist ausgeschlossen, weil (p 1)(q 1) eine gerade Zahl ist. Also wäre 3 das kleinstmögliche e. Verschlüsseln mit e = 3 läuft auf Quadrieren mit nachfolgendem Multiplizieren hinaus. Mit kleinen e ist aber die Low-Exponent-Attacke möglich, die auf folgendem Satz (hier formuliert für e = 3) beruht: Satz Low-Exponent-Attacke Seien n 1, n 2, n 3 paarweise teilerfremd und sei m N mit 0 m < min(n 1, n 2, n 3 ). Sei c N mit c m 3 mod n i für i = 1, 2, 3 und 0 c < n 1 n 2 n 3. Dann gilt c = m 3. Beweis: Die Zahl c = m 3 erfüllt die simultane Kongruenz c m 3 mod n 1, c m 3 mod n 2, c m 3 mod n 3, und es gilt 0 c < n 1 n 2 n 3 wegen 0 m < min(n 1, n 2, n 3 ). Da eine solche Lösung nach dem Chinesischen Restsatz eindeutig ist, folgt c = c Eine Low-Exponent-Attacke ist möglich, wenn der gleiche Exponent (z.b. 3) mit der gleichen Nachricht, aber verschiedenen (zueinander teilerfremden) Moduli n benutzt wird. Das könnte z.b. vorkommen, wenn eine Bank die gleiche Nachricht an verschiedene Kunden schickt, die verschiedene öffentliche Schlüssel (die auch noch teilerfremd sind, was gut vorkommen könnte) haben. Oscar kennt die Schlüsseltexte c i = x 3 mod n i (i = 1, 2, 3). Mit dem Chinesischen Restsatz berechnet er eine ganze Zahl c mit c c 1 mod n 1, c c 2 mod n 2, c c 3 mod n 3 und 0 c < n 1 n 2 n 3. Nach Satz gilt c = x 3. Also findet Oscar den Klartext x, indem er aus c die dritte Wurzel zieht. Gegen eine Low-Exponent-Attacke kann vorgesorgt werden, indem größere Exponenten verwendet werden, oder auch, indem verhindert wird, dass die gleiche Nachricht mehrfach geschickt wird (etwa durch Einfügen von ein paar zufällig gewählten Bits). Ein großer Exponent, der oft für RSA-Systeme gewählt wird und trotz seiner Größe eine (relativ) effiziente Verschlüsselung zulässt, ist e = (eine Primzahl). 5.4 Primzahlerzeugung Die beiden Primzahlen p und q des RSA-Systems sollen sowohl groß sein, als auch relativ nahe (aber nicht zu nahe) beieinander liegen (und noch ein paar weitere Kriterien erfüllen), damit nicht schon der allereinfachste Faktorierungsversuch der Zahl pq, die ja veröffentlicht werden soll, erfolgreich ist. Wir können den folgenden Algorithmus zur Erzeugung einer zufälligen Primzahl m einer vorgegebenen Bitlänge l verwenden:

10 74 Vorlesungsskript von E. Best / Stand: 4. Juni 2004 (1) Erzeuge einen zufälligen Bitvektor m der Länge l 2. Zu diesem Zweck kann ein Zufalls- oder ein Pseudozufallsgenerator verwendet werden 4. (2) Setze das erste und das letzte Bit von m auf 1, den Rest dazwischen auf m. (3) Überprüfe, ob m eine Primzahl ist. Falls ja: fertig. Falls nein: Zurück zu Schritt (1). Die Überprüfung der Primzahleigenschaft von m kann in zwei Schritten geschehen: (3a) Prüfe, ob eine der Primzahlen in einer Liste (typischerweise die Liste der Primzahlen kleiner als 10 6 ) m teilt. Falls nein, wende das Verfahren an, das im Rest dieses Abschnitts beschrieben wird, oder ein anderes mit dem gleichen Effekt. (Dieses Verfahren kann natürlich auch schon sofort eingesetzt werden, ohne die Primzahlliste zu bemühen.) Im Jahr 2002 ist es Manindra Agarwal, Neeraj Kayal und Nitin Saxena gelungen, nachzuweisen 5, dass das komplexitätstheoretische Problem PRIMES: Gegeben n N\{0, 1}. Ist n prim? in P liegt, d.h., dass ein deterministischer Algorithmus zu seiner Lösung existiert, der polynomiell viel Zeit in der Größe der Eingabe benötigt. Dieser Algorithmus ist inzwischen bekannt als der AKS-Algorithmus. Die Größe der Eingabe ist dabei die Länge der Darstellung der Zahl n, nicht die Zahl selbst. Wenn wir nicht gerade das Bierdeckelsystem benutzen, ist die Länge der Darstellung von n logarithmisch in der Zahl n. Denn wenn man das Zehnersystem benutzt, braucht man genau log 10 (n + 1) Ziffern zur Darstellung von n, und wenn man das dyadische System benutzt (nur 0, 1 sind Ziffern, also die Bitdarstellung), braucht man log 2 (n + 1) viele Ziffern. Andererseits können alle p-adischen Darstellungen von n (mit p 2) bis auf konstante Faktoren ineinander umgerechnet werden. Beispielsweise ist die dyadische Darstellung von n immer, d.h., für jedes n, ca mal so lang wie die Darstellung von n im Zehnersystem, denn es gilt log 2 (10). Eine sehr nahe liegende Methode, eine (ungerade) Zahl n auf Zusammengesetztheit zu überprüfen, ist die Probedivision. Man geht alle Zahlen zwischen 2 und n durch und prüft, ob sie n teilen. Man braucht sogar nur die Zahlen von 3 bis n zu untersuchen, denn wenn n überhaupt einen echten Teiler hat, dann auch einen innerhalb dieser Menge. Man braucht auch die Vielfachen von 2 nicht zu untersuchen, weil n ja nicht gerade ist. Diese Idee kann noch verfeinert werden, denn auch die Vielfachen von 3 (außer 3 selbst) müssen nicht als mögliche Teiler betrachtet werden, und genausowenig die Vielfachen von 5 (außer 5), usw.; diese Idee ist als Sieb des Eratosthenes bekannt. Trotz des Herausstreichens von Vielfachen schon untersuchter Primzahlen bleiben noch genügend viele Zahlen übrig, die als mögliche Teiler von n in Frage kommen; n ist zwar eine obere Schranke, aber auch eine ziemlich gute. Der Probedivisionsalgorithmus ist daher keineswegs polynomiell in der Eingabegröße, sondern exponentiell. Denn n = exp(ln(n)) = exp( 1 2 ln(n)), und das ist exponentiell in der Länge der Zifferndarstellung von n in einem beliebigen p-adischen System (p 2). Um zu sehen, wie viele Zahlen größenordnungsmäßig als mögliche Teiler betrachtet werden müssen, kann man die Anzahl der Primzahlen unterhalb von n bzw. unterhalb von n mit Hilfe des folgenden Satzes abschätzen, der wegen seiner Bedeutung auch der Primzahlsatz genannt wird. 4 Siehe 5 Siehe

11 Kryptographie - Sommersemester Satz Primzahlsatz Sei k N. Mit π(k) sei die Anzahl der Primzahlen k bezeichnet. Dann gilt: π(k) k ln(k), genauer: für k 17 gilt k ln(k) < k < k ln(k). Diese Abschätzung ist schon für kleine k (wie 10 9 ;-) ziemlich gut: es gilt 10 9 / ln(10 9 ) = und π(10 9 ) = Wenn man eine Zahl mit 75 Dezimalstellen per Probedivision testet, braucht man mehr als / ln( ) > Probedivisionen, was außerhalb des Bereichs des Möglichen ist und eindrucksvoll die Exponentialität des Algorithmus belegt, wenn man diesen Zeitverbrauch mit der Eingabelänge, also der Länge der Darstellung einer (dezimal) 75-stelligen Zahl vergleicht, die ja noch auf eine normal lange Zeile passt. Wir stellen nun Algorithmen vor, die sehr viel effizienter sind und die Eigenschaft einer (großen) Zahl, prim zu sein, mit sehr hoher Wahrscheinlichkeit aber nicht mit hundertprozentiger Sicherheit feststellen können. Diese Algorithmen nutzen hinreichende aber nicht notwendige Bedingungen dafür aus, dass eine Zahl nicht-prim ist. Zwei solche Bedingungen wurden in Abschnitt beschrieben. Oft werden Algorithmen dieser Art probabilistisch genannt. Aber man kann sie auch semi-exakt nennen, denn probabilistische Argumente gehen nur insofern ein, als man die Wahrscheinlichkeiten des Auftretens einer falschen Antwort eines solchen Algorithmus abschätzen kann bzw. möchte. Die Formulierung eines solchen Algorithmus geschieht ohne Zuhilfenahme von Wahrscheinlichkeiten. Wir können zum Beispiel a = 2 wählen und prüfen, ob a ein Zeuge für die erste der in Abschnitt angegebenen Bedingungen ist: prim(n) 2 n 1 1 (mod n). (5.2) Mit anderen Worten: wenn die rechte Seite dieser Implikation nicht gilt, ist n sicher nicht prim. Dies motiviert den semi-exakten Algorithmus in Abbildung 5.3. proc pseudoprim( n); Ausgabe: nicht prim bzw. wahrscheinlich prim begin if modexp(2, n 1, n) 1 return sicher keine Primzahl (Zeuge: a = 2) else return wahrscheinlich Primzahl fi end; Abbildung 5.3: Auf Fermats Satz beruhender Test pseudoprim. Dieser Algorithmus irrt sich erstaunlich selten. Beispielsweise gibt es unter den Zahlen n < nur 22, für die er ein falsches Ergebnis liefert. Die Idee ist nahe liegend, pseudoprim in eine Schleife einzubetten, in der mehrere a Z + n geprüft werden, nicht nur a = 2. Leider genügt das nicht, um die Primalität von n sicher nachzuweisen, denn es gibt Zahlen n, die nicht prim sind, für die aber a n 1 1 (mod n) für alle a Z + n gilt. Diese Zahlen werden Carmichael-Zahlen genannt: n ist Carmichael-Zahl gdw. prim(n) a Z + n : a n 1 1 (mod n).

12 76 Vorlesungsskript von E. Best / Stand: 4. Juni 2004 Die drei kleinsten Carmichael-Zahlen sind 561(= ), 1105 und Carmichael-Zahlen sind selten, aber (und das weiß man sogar erst seit 1992) es gibt unendlich viele. Der Miller-Rabin-Test, der als nächstes beschrieben wird, umgeht den Carmichael-Schwachpunkt des pseudoprim-tests, indem die zweite in Abschnitt angegebene hinreichende Bedingung für die Zerlegbarkeit von n mit in die Betrachtung einbezogen wird: prim(n) x Z + n : x 2 1 (mod n) x ±1 (mod n). (5.3) Im Algorithmus von Miller-Rabin wird die Bedingung auf der rechten Seite von (5.3) ähnlich wie die vorige Bedingung in (5.2) benutzt: wenn eine Zahl x gefunden wird, die x 2 1 (mod n) erfüllt, aber weder 1 (mod n) noch 1 (mod n) ist, wenn also die rechte Seite der Implikation in (5.3) nicht gilt, dann kann n nicht prim sein. proc begin end; witness ( a, n) : {false, true}; Sei b k 1... b 0 die Binärdarstellung von (n 1) ; d := 1; i := k 1; do i 0 x := d; d := (d d) mod n; if (d = 1) (x 1) (x (n 1)) return true % Ausgang (2) else skip fi; if b i = 0 skip b i = 1 d := (d a) mod n fi; i := i 1 od; if d 1 return true % Ausgang (1) d = 1 return false fi Abbildung 5.4: Unterprogramm witness für den Miller-Rabin-Test. Das Programm besteht aus zwei Teilen: der Funktion witness (Abbildung 5.4) und dem Hauptprogramm Miller Rabin (Abbildung 5.5). In der Funktion witness wird geprüft, ob a ein Zeuge gegen n auf Grund der Bedingung (5.2) mit a anstelle von 2 ist, und gleichzeitig, ob ein Zeuge x gegen n auf Grund von Bedingung (5.3) existiert. Im Wesentlichen ist witness der modexp-algorithmus mit zusätzlichen Vorkehrungen für die Entdeckung von Zeugen x. Im Hauptprogramm Miller Rabin wird witness für insgesamt s zufällig ausgewählte Zeugenkandidaten aufgerufen. Wir erklären die Funktionsweise dieses Algorithmus am Beispiel n = 561 mit a 1 = 7 als Kandidaten für den Zeugenstand. Beim Aufruf von witness(7, 561) wird die Tabelle erzeugt, die in Abbildung 5.6 angegeben ist. Dies ist fast die gleiche Tabelle wie diejenige aus Abbildung 5.2, außer dass zusätzlich die Variable x belegt wird. Falls im i ten Schritt b i = 0 ist, enthält x den alten Wert von d. Im letzten Schritt der Abarbeitung

13 Kryptographie - Sommersemester proc Miller Rabin( n, s); Ausgabe: nicht prim bzw. sehr wahrscheinlich prim begin Wähle a 1,..., a s zufällig und paarweise verschieden aus {1,..., n 1} ; for j := 1 to s do if witness(a j, n) return sicher keine Primzahl else skip fi endfor; return sehr wahrscheinlich Primzahl end; Abbildung 5.5: Miller-Rabin-Primzahltest. (i = 0) wird in der Zeile mit Ausgang (2) entdeckt, dass (7 280 ) 2 (7 560 ) 1 (mod 561) } {{ } x = 67, d = 67 2 (mod 561), d = 1, c = 560, d = mod 561 und ±1 (mod 561) } {{ } x = 67, x 1, x n 1, altes c = 280, x = mod 561. Die Zahl 561 wird also durch den Miller-Rabin-Test als zusammengesetzt erkannt. Im Gegensatz dazu behauptet das Programm pseudoprim fälschlicherweise, dass die Zahl 561 prim sei, selbst wenn alle Zahlen a Z 560 durchgetestet werden. i b i c d x Abbildung 5.6: Beispiel für die Funktionsweise von witness. Generell liefert die Funktion witness überhaupt nur dann true, wenn n keine Primzahl ist. Denn wenn true auf Grund von Ausgang (1) zurückgeliefert wurde, ist a ein Zeuge gegen die Primalität von n wegen des Satzes von Fermat. Wenn aber true auf Grund des Ausgangs (2) resultiert, ist x ein Zeuge gegen die Primalität von n nach Bedingung (5.3), wie im eben besprochenen Beispiel. Zum Schluss schätzen wir noch die Wahrscheinlichkeit ab, dass sich der Miller-Rabin-Algorithmus irrt. Dazu zitieren wir einen Satz ohne Beweis: Satz Abschätzung der Anzahl der Zeugen Sei n ungerade und keine Primzahl. Dann gibt es höchstens n 1 4 Zahlen in Z + n, die keine Zeugen gegen n sind. Aus diesem Satz folgt sofort der Folgende.

14 78 Vorlesungsskript von E. Best / Stand: 4. Juni 2004 Satz Abschätzung der Fehlerhäufigkeit des Miller-Rabin-Tests Sei n ungerade und sei s > 0. Die Wahrscheinlichkeit, dass Miller Rabin(n,s) ein falsches Ergebnis liefert, ist höchstens 2 2s. Beweis: Wenn n zusammengesetzt ist, findet eine einzelne Ausführung der for-schleife in Abbildung 5.5 mit Wahrscheinlichkeit 1 4 keinen Zeugen dafür; dies folgt aus Satz Miller-Rabin liefert überhaupt nur dann ein falsches Ergebnis, wenn s-mal hintereinander ein Zeuge nicht gefunden wird. Die Wahrscheinlichkeit für eine solch unglückliche Kette von Fehlern ist höchstens 4 s = 2 2s In der Praxis stellt sich heraus, dass der Miller-Rabin-Test in der Regel noch zuverlässiger ist, als die oben angegebene Abschätzung suggeriert. Da Miller Rabin im Wesentlichen eine s-malige Wiederholung einer modularen Exponentiation ist, benötigt der Algorithmus O(sl) arithmetische Operationen und O(sl 3 ) Bit-Operationen, wenn mit l die Anzahl der Bits von n bezeichnet wird. Der AKS-Algorithmus ist bedeutend langsamer; der Algorithmus in der Originalversion des Papiers hat einen Exponenten von 12, d.h., benötigt Zeit O(l 12 ). In der Zwischenzeit sind jedoch sehr viele Effizienzverbesserungen gefunden worden; unter Zuhilfenahme unbewiesener Vermutungen und/oder probabilistischer Elemente konnte der Exponent auf 6 und 4 gedrückt werden. Der aktuelle Stand dieser sehr im Fluss befindlichen Forschungsanstrengungen kann unter dem URL 3.html, einer Sammelstelle für neue und allerneueste Resultate, nachgelesen werden. 5.5 Faktorisierung und andere Attacken auf RSA Die in Abschnitt 5.3 schon erwähnte Low-Exponent-Attacke auf RSA ist bei weitem nicht die einzige und auch nicht die gefährlichste. Ein Problem der Public-Key-Kryptographie generell (und RSA im Besonderen) ist die Sensitivität der öffentlichen Schlüssel. Angenommen, Oscar möchte den Nachrichtenverkehr von Alice zu Bob beobachten. Er kann versuchen, Alice einen eigenen öffentlichen Schlüssel e unterzuschieben und zu behaupten, e sei Bobs öffentlicher Schlüssel. Zum Beispiel benutzt er, wenn es so etwas gibt, eine Webseite, auf der öffentliche Schlüssel veröffentlicht werden können, ohne dass die Identität des Veröffentlichenden verifiziert wird. Selbst wenn eine solche Seite nach der Veröffentlichung von Schlüsseln vor weiteren Veränderungen geschützt ist, kann Oscar sich dort unehrlicherweise unter Bobs Namen und Adresse anmelden und den Schlüssel e angeben. Wenn Alice nun den Schlüssel e benutzt, um an Bob Nachrichten zu schicken, kann Oscar diese Nachrichten mit seinem geheimen Schlüssel d entziffern, lesen, und dann mit Bobs eigentlichem Schlüssel e verschlüsselt an Bob weiterschicken, sodass die beiden unter Umständen noch nicht einmal merken, dass jemand lauscht. Diese Attacke wird Man-in-the-middle-Attacke (MITM) genannt, oder auch Impersonation Attack 6. Um sie abzuwenden, gibt es kaum einen anderen Weg, als die öffentlichen Schlüssel nicht irgendwo, sondern bei (z.b. staatlich anerkannten) Stellen abzulegen. Solche Stellen heißen Trusted Third Parties (TTP) oder auch Certification Authorities. Eine Übersicht ist unter tl6345/ca.htm zu finden. Die Möglichkeit der MITM-Attacke zeigt auch, dass unsere vorherige Behauptung, in der Public-Key- Kryptographie sei kein Schlüsselaustausch über sichere Kanäle nötig, sich in der Praxis als etwas optimistisch herausstellt allerdings sind die Probleme von durchaus anderer Art als bei der Secret-Key-Kryptographie. 6 Für impersonation gibt es keine sehr gute deutsche Übersetzung; kennt Betrügerisches Auftreten und Personifikation (was beides in etwa, aber nicht ganz genau, passt).

15 Kryptographie - Sommersemester Attacken vom Man-in-the-Middle-Typ sind auch auf andere Weisen möglich. Zum Beispiel kann es vorkommen, dass Alice ihre Nachricht an Bob (ichliebedich) über etliche Server und Workstations sendet. Da Jeder an Bob verschlüsselte Nachrichten senden kann, wäre es ein Leichtes für Oscar (der z.b. ein eifersüchtiger Postmaster einer dieser Server ist), die Datei mit der verschlüsselten Nachricht zu löschen und Bob stattdessen ichliebedichnicht verschlüsselt zu schicken. Dies wirft das Problem der Authentifizierung auf: Bob sollte besser sicher gehen, dass die Nachricht, die er erhalten hat, tatsächlich von Alice stammt, und von niemand anderem. Dieses Problem kann auf verschiedene Weisen gelöst werden, unter anderem durch die Verwendung digitaler Signaturen. Sowohl auf Zertifizierung als auch auf digitale Signaturen gehen wir in einem späteren Kapitel genauer ein 7. Ein cleverer Angriff auf RSA wurde von M.J. Wiener im Jahr 1990 entdeckt. Er funktioniert, wenn der Entschlüsselungsexponent d klein ist und p und q sehr nahe beieinander liegen, genauer, wenn 3d < n 1 4 und q < p < 2q gilt. Dieser Angriff heißt Low-Decryption-Exponent-Attacke, wird hier aber nicht näher beschrieben. Die Multiplikativität von RSA, d.h., die Eigenschaft e K (x 1 )e K (x 2 ) mod n = e K (x 1 x 2 ) mod n eröffnet eine Reihe von Betrugsmöglichkeiten, insbesondere Chosen-Ciphertext-Attacken. Ein Angriff dieser Art kann folgendermaßen beschrieben werden: Oscar bekomme einen Chiffretext y = x e mod n in die Hände und sei am Klartext x = y d mod n interessiert. Er wählt k Z n beliebig, aber invertierbar modulo n (also mit der Eigenschaft ggt(k, n) = 1) und bildet den Chiffretext y = (y k e ) mod n = ((y mod n) (k e mod n)) mod n, der für Bob wie Double Dutch (unverständliches und vor allen Dingen auch ungefährliches Kauderwelsch) aussieht. Auf irgend eine Weise überredet er Bob, diesen Text y zu dechiffrieren, oder er kommt auf eine andere Weise an die Dechiffrierung x = (y ) d mod n heran (auch x wird ungefährlich aussehen). Nun rechnet Oscar folgendermaßen: x = (y ) d mod n = (yk e ) d mod n = y d k ed mod n = ((y d mod n)(k ed mod n)) mod n = ((y d mod n) k) mod n = (xk) mod n. Im Besitz des Klartexts x und der invertierbaren Zahl k kann Oscar somit x ausrechnen was sein eigentliches, ursprüngliches Ziel war. Eine weitere Unsicherheit von RSA besteht in protocol failure, worunter man im weiteren Sinn nachlässige Benutzung verstehen kann. Wenn Alice zum Beispiel ihren Text ichliebedich nicht wie in Abschnitt 5.2 verschlüsselt, sondern simpler, indem sie die Buchstaben als Zahlen x in {0,..., 25} auffasst und diese dann direkt mit Hilfe von x e mod n umrechnet, kann Oscar recht schnell verstehen, was sie meint, ohne d zu kennen. Die Verschlüsselung in Abschnitt 5.2 ist zwar besser, aber auch nicht optimal, da bei Blocklänge 2 nur Zahlen der maximalen Größe = 675 verschlüsselt werden können. Der Modul n = Wenn die Zeit reicht...

16 80 Vorlesungsskript von E. Best / Stand: 4. Juni 2004 würde viel größere Zahlen zulassen, bleibt aber knapp unterhalb von = 17525, was eine Blocklänge von 3 ermöglichen würde. Er ist also für den Zweck der Verschlüsselung von aus 26 Buchstaben zusammengesetztem Text relativ schlecht gewählt. Eine andere protocol failure ergibt sich, wenn Bob und Charlie RSA mit dem gleichen Modul n, aber mit verschiedenen Verschlüsselungsexponenten e 1, e 2 mit ggt(e 1, e 2 ) = 1 benutzen. Wenn Alice unter diesen Umständen an Bob und an Charlie den gleichen Klartext x schickt und Oscar beide Chiffrate y 1 = x e1 mod n und y 2 = x e2 mod n abfängt und liest, kann er mit Hilfe von c 1 := e 1 1 mod b 2 ; c 2 := (c 1 e 1 1)/b 2 ; x 1 := y c1 1 (yc2 2 ) 1 mod n den ursprünglichen Klartext berechnen (x 1 = x). Die direkteste Art und Weise, RSA zu knacken, besteht aber aus dem Versuch, aus den öffentlichen Daten (n, e) die privaten Daten (p, q, d) zu (re)konstruieren. Drei Möglichkeiten bieten sich an: (A) Faktorisieren: man gewinnt p und q aus n (und e). (B) Berechnung des Entschlüsselungsexponenten: man gewinnt d aus e (und n). (C) Berechnung von Φ(n): man gewinnt Φ(n) aus n (und e). RSA beruht wesentlich darauf, dass das Faktorisierungsproblem für große n sehr schwer zu lösen ist 8. Es stellt sich auch heraus, und darauf gehen wir zum Schluss dieses Abschnitts ein, dass die Möglichkeiten (B) und (C) tatsächlich mehr oder weniger äquivalent zur Faktorisierung sind. (A) Faktorisierung: Das Problem der Faktorisierung einer Zahl n ist noch schwerer als das der Feststellung, ob n prim ist. Die Primzahltestprogramme (z.b. Miller Rabin) helfen so gut wie nicht bei der Faktorisierung. Auch der AKS-Algorithmus liefert keine Faktorzerlegungen. Der Probedivisionsalgorithmus kann im Prinzip zur Faktorisierung verwendet werden, ist aber ausgesprochen ineffizient. Mit den besten heute vorhandenen Faktorisierungsalgorithmen gelingt die Faktorisierung von Zahlen der Bitlänge > 500 nur mit Anstrengung. RSA Security ( ist sich der Wichtigkeit dieser Frage sehr bewusst, denn schließlich hängt das RSA-Verfahren insgesamt entscheidend von der Behauptung ab, dass Faktorisieren schwer sei. Auf der RSA-Webpage werden RSA Challenges ausgeschrieben. Auf die Faktorisierung einer 640-Bit-Zahl (193 Dezimalstellen) ist (heute, im Juni 2004) ein Preis von USD ausgelobt; eine 576-Bit-Zahl mit einem Preisgeld von USD wurde immerhin im Dezember 2003 erfolgreich faktorisiert (natürlich unter Verwendung von Supercomputern). Wir stellen hier zwei Faktorisierungsalgorithmen vor, einen im Detail, den anderen nur im Konzept. Die heute üblichen Verfahren sind oft Abwandlungen bzw. Weiterentwicklungen davon. Es geht natürlich bei allen Verfahren darum, in der Zeitkomplexität n 0.5 des Probedivisionsverfahrens die Parameter zu drücken: entweder die 0.5 zu verringern oder das n allmählich in Richtung log(n) zu verlagern. Das erste vorgestellte Verfahren Pollard s ρ-heuristik schafft in vielen Fällen eine Verbesserung von n 0.5 auf n Die Grundidee bei diesem Verfahren ist die Betrachtung einer zufälligen Folge von Zahlen x 1, x 2,... aus Z n, wobei n die zu faktorisierende Zahl ist. Ab wann (d.h., ab welchem Index i) darf man mit erheblicher 8 Vorsichtiger gesagt: zu sein scheint.

17 Kryptographie - Sommersemester x 2 8 x x x 3 63 x x x 18 x x 2 x 1 x 5 x 1 mod mod 19 2 mod 73 x x x 4 x 2 x 3 3 x 4 8 x 5 63 x x Abbildung 5.7: Ein Beispiel zum Pollard Rho-Verfahren mit n = 1387 = (> 1 2 ) Wahrscheinlichkeit erwarten, dass eine k te Zahl x k, i k, eine Wiederholung einer schon vorher dagewesenen Zahl x j, j < i, d.h., x j = x k, ist? Die Antwort lautet: ungefähr i = 1.17 n. Die Begründung für diese Antwort 9 ist die gleiche wie beim bekannten Geburtstagsparadox: Wie groß ist die Wahrscheinlichkeit, dass von 23 in einem Raum anwesenden Personen zwei am gleichen Tag Geburtstag haben? Die Antwort lautet vielleicht überraschenderweise, und deswegen spricht man von einem Paradox : größer als 1 2. Beispielsweise findet sich in Abbildung 5.7 (links) eine ziemlich zufällig aussehende Folge von Zahlen x 1 = 2, x 2 = 3, x 3 = 8, x 4 = aus Z Die erste Wiederholung gibt es bei x 18 (das ist nämlich gleich x 6 ), also etwas früher als erwartet, denn die Wurzel aus 1387 ist ungefähr 37. Wenn wir die Folge so erzeugen, dass sich x i+1 eindeutig aus x i ergibt, dann wissen wir, dass ab der ersten Wiederholung ein Kreis gebildet wird. Mit x j = x k gilt dann nämlich auch x j+1 = x k+1, x j+2 = x k+2, usw. Nehmen wir nun einen nichttrivialen Faktor m von n und betrachten auch die Zahl m = n/m. Die Folge x 1, x 2,... induziert zwei weitere Folgen, x 1 = x 1 mod m, x 2 = x 2 mod m,... und x 1 = x 1 mod m, x 2 = x 2 mod m,... Nehmen wir zusätzlich ggt(m, m ) = 1 an. Dann sind die Folge x 1, x 2,... und das Folgenpaar x 1, x 2,... und x 1, x 2,... nach dem Chinesischen Restsatz zueinander äquivalent, d.h., man kann nicht nur Letzteres aus x 1, x 2,... erzeugen, sondern auch x 1, x 2,... aus x 1, x 2,... und x 1, x 2,... Insbesondere gilt dann, dass die beiden kleineren Folgen x 1, x 2,... und x 1, x 2,... die gleiche ρ-form haben wie die Ursprungsfolge, weil x i+1 mod m und x i+1 mod m sich eindeutig aus x i mod m bzw. x i mod m ergeben. Abbildung 5.7 zeigt ein 9 Die hier nicht streng hergeleitet wird.

18 82 Vorlesungsskript von E. Best / Stand: 4. Juni 2004 Beispiel mit m = 19 und m = 73. Wie oben (Geburtstagsparadox) erwartet man, dass die Folge x 1, x 2,... sich nach ungefähr m (im Beispiel = 4) Schritten wiederholt, und die Folge x 1, x 2,... nach ungefähr m (im Beispiel = 8) Schritten. Die Wiederholungen in der Folge x 1, x 2,... sind sehr interessant in Bezug auf die Teiler von n, denn es gilt: x i = x i+l m (x i+l x i ), (5.4) direkt aus der Definition der x i. Das Pollard Rho-Verfahren macht sich dies folgendermaßen zunutze: Es wird sukzessive eine Folge x 1, x 2, x 3,... generiert und es wird von diesen Zahlen in immer größeren Abständen eine gesichert. Wenn ein Wert x k erzeugt wird, so dass der vorher gesicherte Wert auf einem kleinen Kreis für m liegt (z.b. auf dem Kreis x 3 x 4 x 5 für die Zahl m = 19, siehe Bildmitte von Abbildung 5.7), dann wird irgenwann eine gesamte Kreisumdrehung (im kleinen Kreis) erfolgen, ohne dass zwischendurch gesichert wird (weil dies in immer größeren Abständen passiert), es wird also wegen (5.4) eine Zahl x i geben mit x i y (mod m), wobei y der gesicherte Wert ist. Dann ist ein Faktor (vermutlich m oder ein Vielfaches von m) entdeckt. Da der kleinste Primfaktor p von n höchstens von der Größe n ist und die Größe eines zu p gehörigen Kreises höchstens p, kommt es zu dem Erwartungswert von n 1 4 für die Pollard-ρ-Methode, der in der Praxis durchaus bestätigt wird. Die Pollard-ρ-Methode ist besonders gut dazu geeignet, kleine Primfaktoren einer (riesigen) Zahl zu entdecken. Der Pseudocode des Algorithmus ist in Abbildung 5.8 dargestellt. Zur zufälligen Erzeugung von x i+1 aus x i wird die Funktion f(x) = (x 2 c) mod n mit c = 1 verwendet. Der Algorithmus könnte auch eine Endlosschleife produzieren, das kommt in der Praxis jedoch kaum vor. Wenn diese Gefahr bestehen sollte, ist es angeraten, den Parameter c zu ändern. Alle c sind dafür geeignet (außer c = 0 und c = 2, die besser vermieden werden sollten). In Abbildung 5.7 sind diejenigen x-werte, die als y gesichert werden, schattiert eingezeichnet. Die dicken Pfeile zeigen, wie weit der Algorithmus rechnet, bis ein Faktor von 1387 entdeckt wird. Der Faktor 19 wird entdeckt, sobald x 7 = 177 berechnet und ggt(63 177, 1387) = 19 ausgewertet wurde. Die dünnen Pfeile sind im Bild nur eingezeichnet, damit die ρ-form erkennbar wird; sie entsprechen den Werten von x, die errechnet werden würden, wenn das Verfahren nicht beendet werden würde. Viele Faktorisierungsalgorithmen (z.b. das Quadratische Sieb) beruhen auf einer anderen Idee. Nehmen wir an, dass n zum Faktorisieren vorgegeben ist und dass wir Zahlen x und y finden können, für die gilt: x 2 y 2 (mod n), aber x ±y (mod n). Dann gilt n (x y) (x + y), aber weder x y noch x+y sind durch n teilbar. Daraus folgt, dass sowohl ggt(x y, n) als auch ggt(x+y, n) nichttriviale Faktoren von n sind. Beispielsweise gilt (mod 77). Wir finden den Faktor 7 von 77 durch die Berechnung von ggt( , 77). Um zwei Zahlen x und y mit den oben genannten Eigenschaften zu finden, kann man folgendes Verfahren anwenden. Wir suchen (wie, wird hier nicht beschrieben) eine Reihe von Zahlen z 1, z 2, z 3,..., so dass alle Primfaktoren von zi 2, modulo n, in einer Menge B liegen, die Faktorbasis genannt wird. Dann versuchen wir, die Zahlen z i so zu einem Quadrat zu kombinieren, dass jeder Faktor eine gerade Anzahl von Malen vorkommt. Beispiel: Sei n = Betrachte B = {2, 3, 5, 7, 11, 13} und drei Kongruenzen (mod n) (mod n) (mod n)

19 Kryptographie - Sommersemester proc Pollard Rho( n); erhoffte Ausgabe: ein Teiler d von n begin i := 1; wähle x zufällig aus {0,..., n 1} ; y := x; k := 2; do true i := i + 1; x := (x 2 1) mod n; d := ggt(y x, n); if d 1 d n return d else skip fi; if i = k y := x; k := 2 k else skip fi od end; Abbildung 5.8: Algorithmus Pollard Rho zur Faktorisierung einer Zahl n. Das Produkt auf beiden Seiten bilden, ergibt: ( ) 2 ( ) 2 (mod n). Reduzieren innerhalb der Klammern ergibt: (mod n) und mit euclid kann der Faktor ggt( , ) = von n ausgerechnet werden. Zum Schluss betrachten wir die wesentliche Äquivalenz von (A), (B) und (C): Kennt man die Faktorisierung n = pq (A), dann kennt man natürlich sofort auch (C) Φ(n) = (p 1)(q 1) und (B) d als Inverses von e modulo Φ(n). Kennt man umgekehrt Φ(n) (C), dann kann leicht die Faktorisierung von n daraus berechnet werden. Dazu betrachtet man ein System von zwei Gleichungen in zwei Unbekannten p und q: n = pq Φ(n) = (p 1)(q 1). Nach Auflösen bekommt man eine quadratische Gleichung, deren zwei Lösungen p und q sind. Beispiel: Betrachte n = Oscar hat gerade herausgefunden, dass Φ(n) = gilt. Er formt die beiden Gleichungen oben zu der quadratischen Gleichung p p = 0

20 84 Vorlesungsskript von E. Best / Stand: 4. Juni 2004 um und berechnet daraus p = 9539 und q = Es bleibt nun noch zu zeigen, dass aus dem Entschlüsselungsexponenten d (B) auch die Faktorisierung n = pq (A) mit vertretbarem Aufwand (d.h.: polynomiell) berechnet werden kann. Dies kann von größerer praktischer Bedeutung sein. Denn wenn Bob zum Beispiel seinen Verschlüsselungsexponenten d aus Versehen bekannt gibt, genügt es aufgrund dieser Tatsache nicht, dass er sich ein neues Paar (e, d) aussucht (bei gleich bleibendem n), sondern er muss auch ein neues n definieren, d.h., sein RSA-System völlig neu konzipieren. Wir benötigen einige weitere gruppen- und zahlentheoretische Resultate. Satz Sei G eine Gruppe, sei g G und sei k N. Dann gilt g k = 1 genau dann, wenn ord(g) k. Beweis: Sei α = ord(g). Sei g k = 1 und sei k = qα + r mit 0 r < α. Dann gilt g r = g k qα = g k (g α ) q = 1. Da r < α und α die kleinste positive Zahl mit g α = 1 ist, gilt r = 0 und damit k = qα, also α k. Wenn umgekehrt α k, dann gilt k = lα und g k = (g α ) l = Wir nehmen nun an, dass n, e, d bekannt sind und dass weiterhin bekannt ist, dass n das Produkt zweier Primzahlen ist; diese beiden wollen wir herausfinden. Setze zunächst s := max{t N 2 t teilt (ed 1)} und r = (ed 1) 2 s. Die Zahl s kann man durch einen sehr einfachen Algorithmus finden, indem man die niedrigwertigen Nullen in der Binärentwicklung von (ed 1) zählt. Lemma Für alle a Z n gilt ord(a r ) {2 i 0 i s}. Beweis: Sei a Z n. Mit Hilfe von Satz findet man: a (ed 1) a ed a 1 aa 1 1 (mod n). Daraus folgt (a r ) 2s 1 (mod n). Nach Satz ist die Ordnung von a r in Z n ein Teiler von 2 s Satz Existenz echter Teiler Sei a Z n. Wenn die Ordnung von a r modulo p und modulo q verschieden ist, dann gibt es ein t {0, 1,..., s 1} mit 1 < ggt(a 2t r 1, n) < n. Mit anderen Worten, ggt(a 2t r 1, n) ist dann ein echter Teiler von n.

Lenstras Algorithmus für Faktorisierung

Lenstras Algorithmus für Faktorisierung Lenstras Algorithmus für Faktorisierung Bertil Nestorius 9 März 2010 1 Motivation Die schnelle Faktorisierung von Zahlen ist heutzutage ein sehr wichtigen Thema, zb gibt es in der Kryptographie viele weit

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

11. Das RSA Verfahren und andere Verfahren

11. Das RSA Verfahren und andere Verfahren Chr.Nelius: Kryptographie (SS 2011) 31 11. Das RSA Verfahren und andere Verfahren Eine konkrete Realisierung eines Public Key Kryptosystems ist das sog. RSA Verfahren, das im Jahre 1978 von den drei Wissenschaftlern

Mehr

RSA Verfahren. Kapitel 7 p. 103

RSA Verfahren. Kapitel 7 p. 103 RSA Verfahren RSA benannt nach den Erfindern Ron Rivest, Adi Shamir und Leonard Adleman war das erste Public-Key Verschlüsselungsverfahren. Sicherheit hängt eng mit der Schwierigkeit zusammen, große Zahlen

Mehr

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer Allgemein: Das RSA-Verschlüsselungsverfahren ist ein häufig benutztes Verschlüsselungsverfahren, weil es sehr sicher ist. Es gehört zu der Klasse der

Mehr

Das RSA-Verfahren. Armin Litzel. Proseminar Kryptographische Protokolle SS 2009

Das RSA-Verfahren. Armin Litzel. Proseminar Kryptographische Protokolle SS 2009 Das RSA-Verfahren Armin Litzel Proseminar Kryptographische Protokolle SS 2009 1 Einleitung RSA steht für die drei Namen Ronald L. Rivest, Adi Shamir und Leonard Adleman und bezeichnet ein von diesen Personen

Mehr

10. Public-Key Kryptographie

10. Public-Key Kryptographie Stefan Lucks 10. PK-Krypto 274 orlesung Kryptographie (SS06) 10. Public-Key Kryptographie Analyse der Sicherheit von PK Kryptosystemen: Angreifer kennt öffentlichen Schlüssel Chosen Plaintext Angriffe

Mehr

Computeralgebra in der Lehre am Beispiel Kryptografie

Computeralgebra in der Lehre am Beispiel Kryptografie Kryptografie Grundlagen RSA KASH Computeralgebra in der Lehre am Beispiel Kryptografie Institut für Mathematik Technische Universität Berlin Kryptografie Grundlagen RSA KASH Überblick Kryptografie mit

Mehr

Modul Diskrete Mathematik WiSe 2011/12

Modul Diskrete Mathematik WiSe 2011/12 1 Modul Diskrete Mathematik WiSe 2011/12 Ergänzungsskript zum Kapitel 4.2. Hinweis: Dieses Manuskript ist nur verständlich und von Nutzen für Personen, die regelmäßig und aktiv die zugehörige Vorlesung

Mehr

5. Übung zum G8-Vorkurs Mathematik (WiSe 2011/12)

5. Übung zum G8-Vorkurs Mathematik (WiSe 2011/12) Technische Universität München Zentrum Mathematik PD Dr. hristian Karpfinger http://www.ma.tum.de/mathematik/g8vorkurs 5. Übung zum G8-Vorkurs Mathematik (WiSe 2011/12) Aufgabe 5.1: In einer Implementierung

Mehr

Zur Sicherheit von RSA

Zur Sicherheit von RSA Zur Sicherheit von RSA Sebastian Petersen 19. Dezember 2011 RSA Schlüsselerzeugung Der Empfänger (E) wählt große Primzahlen p und q. E berechnet N := pq und ϕ := (p 1)(q 1). E wählt e teilerfremd zu ϕ.

Mehr

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Zählen und Zahlbereiche Übungsblatt 1 1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage: Für alle m, n N gilt m + n = n + m. in den Satz umschreiben:

Mehr

10. Kryptographie. Was ist Kryptographie?

10. Kryptographie. Was ist Kryptographie? Chr.Nelius: Zahlentheorie (SoSe 2015) 39 10. Kryptographie Was ist Kryptographie? Die Kryptographie handelt von der Verschlüsselung (Chiffrierung) von Nachrichten zum Zwecke der Geheimhaltung und von dem

Mehr

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens Mathematische Grundlagen der Kryptographie 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe Stefan Brandstädter Jennifer Karstens 18. Januar 2005 Inhaltsverzeichnis 1 Ganze Zahlen 1 1.1 Grundlagen............................

Mehr

Probabilistische Primzahltests

Probabilistische Primzahltests Probabilistische Primzahltests Daniel Tanke 11. Dezember 2007 In dieser Arbeit wird ein Verfahren vorgestellt, mit welchem man relativ schnell testen kann, ob eine ganze Zahl eine Primzahl ist. Für einen

Mehr

Der Zwei-Quadrate-Satz von Fermat

Der Zwei-Quadrate-Satz von Fermat Der Zwei-Quadrate-Satz von Fermat Proseminar: Das BUCH der Beweise Fridtjof Schulte Steinberg Institut für Informatik Humboldt-Universität zu Berlin 29.November 2012 1 / 20 Allgemeines Pierre de Fermat

Mehr

Verschlüsselung. Chiffrat. Eve

Verschlüsselung. Chiffrat. Eve Das RSA Verfahren Verschlüsselung m Chiffrat m k k Eve? Verschlüsselung m Chiffrat m k k Eve? Aber wie verteilt man die Schlüssel? Die Mafia-Methode Sender Empfänger Der Sender verwendet keine Verschlüsselung

Mehr

Probabilistische Primzahlensuche. Marco Berger

Probabilistische Primzahlensuche. Marco Berger Probabilistische Primzahlensuche Marco Berger April 2015 Inhaltsverzeichnis Inhaltsverzeichnis 1 Einleitung 4 1.1 Definition Primzahl................................ 4 1.2 Primzahltest...................................

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

Praktikum Diskrete Optimierung (Teil 11) 17.07.2006 1

Praktikum Diskrete Optimierung (Teil 11) 17.07.2006 1 Praktikum Diskrete Optimierung (Teil 11) 17.07.2006 1 1 Primzahltest 1.1 Motivation Primzahlen spielen bei zahlreichen Algorithmen, die Methoden aus der Zahlen-Theorie verwenden, eine zentrale Rolle. Hierzu

Mehr

Ferienakademie 2001: Kryptographie und Sicherheit offener Systeme. Faktorisierung. Stefan Büttcher stefan@buettcher.org

Ferienakademie 2001: Kryptographie und Sicherheit offener Systeme. Faktorisierung. Stefan Büttcher stefan@buettcher.org Ferienakademie 2001: Kryptographie und Sicherheit offener Systeme Faktorisierung Stefan Büttcher stefan@buettcher.org 1 Definition. (RSA-Problem) Gegeben: Ò ÔÕ, ein RSA-Modul mit unbekannten Primfaktoren

Mehr

Mathematik und Logik

Mathematik und Logik Mathematik und Logik 6. Übungsaufgaben 2006-01-24, Lösung 1. Berechnen Sie für das Konto 204938716 bei der Bank mit der Bankleitzahl 54000 den IBAN. Das Verfahren ist z.b. auf http:// de.wikipedia.org/wiki/international_bank_account_number

Mehr

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse 11 13. 501322 Lösung 10 Punkte 50. Mathematik-Olympiade. Stufe (Regionalrunde) Klasse 3 Lösungen c 00 Aufgabenausschuss des Mathematik-Olympiaden e.v. www.mathematik-olympiaden.de. Alle Rechte vorbehalten. 503 Lösung 0 Punkte Es seien

Mehr

Was können Schüler anhand von Primzahltests über Mathematik lernen?

Was können Schüler anhand von Primzahltests über Mathematik lernen? Was können Schüler anhand von Primzahltests über Mathematik lernen? Innermathematisches Vernetzen von Zahlentheorie und Wahrscheinlichkeitsrechnung Katharina Klembalski Humboldt-Universität Berlin 20.

Mehr

Authentikation und digitale Signatur

Authentikation und digitale Signatur TU Graz 23. Jänner 2009 Überblick: Begriffe Authentikation Digitale Signatur Überblick: Begriffe Authentikation Digitale Signatur Überblick: Begriffe Authentikation Digitale Signatur Begriffe Alice und

Mehr

Lösungsvorschlag für die Probeklausuren und Klausuren zu Algebra für Informations- und Kommunikationstechniker bei Prof. Dr.

Lösungsvorschlag für die Probeklausuren und Klausuren zu Algebra für Informations- und Kommunikationstechniker bei Prof. Dr. Lösungsvorschlag für die Probeklausuren und Klausuren zu Algebra für Informations- und Kommunikationstechniker bei Prof. Dr. Kurzweil Florian Franzmann André Diehl Kompiliert am 10. April 2006 um 18:33

Mehr

8. Quadratische Reste. Reziprozitätsgesetz

8. Quadratische Reste. Reziprozitätsgesetz O Forster: Prizahlen 8 Quadratische Reste Rezirozitätsgesetz 81 Definition Sei eine natürliche Zahl 2 Eine ganze Zahl a heißt uadratischer Rest odulo (Abkürzung QR, falls die Kongruenz x 2 a od eine Lösung

Mehr

Einführung in die Algebra

Einführung in die Algebra Prof. Dr. H. Brenner Osnabrück SS 2009 Einführung in die Algebra Vorlesung 13 Einheiten Definition 13.1. Ein Element u in einem Ring R heißt Einheit, wenn es ein Element v R gibt mit uv = vu = 1. DasElementv

Mehr

Zeichen bei Zahlen entschlüsseln

Zeichen bei Zahlen entschlüsseln Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren

Mehr

Verschlüsselung. Kirchstraße 18 Steinfelderstraße 53 76831 Birkweiler 76887 Bad Bergzabern. 12.10.2011 Fabian Simon Bfit09

Verschlüsselung. Kirchstraße 18 Steinfelderstraße 53 76831 Birkweiler 76887 Bad Bergzabern. 12.10.2011 Fabian Simon Bfit09 Verschlüsselung Fabian Simon BBS Südliche Weinstraße Kirchstraße 18 Steinfelderstraße 53 76831 Birkweiler 76887 Bad Bergzabern 12.10.2011 Fabian Simon Bfit09 Inhaltsverzeichnis 1 Warum verschlüsselt man?...3

Mehr

Zahlen und das Hüten von Geheimnissen (G. Wiese, 23. April 2009)

Zahlen und das Hüten von Geheimnissen (G. Wiese, 23. April 2009) Zahlen und das Hüten von Geheimnissen (G. Wiese, 23. April 2009) Probleme unseres Alltags E-Mails lesen: Niemand außer mir soll meine Mails lesen! Geld abheben mit der EC-Karte: Niemand außer mir soll

Mehr

RSA-Verschlüsselung. Verfahren zur Erzeugung der beiden Schlüssel:

RSA-Verschlüsselung. Verfahren zur Erzeugung der beiden Schlüssel: RSA-Verschlüsselung Das RSA-Verfahren ist ein asymmetrisches Verschlüsselungsverfahren, das nach seinen Erfindern Ronald Linn Rivest, Adi Shamir und Leonard Adlemann benannt ist. RSA verwendet ein Schlüsselpaar

Mehr

Einfache kryptographische Verfahren

Einfache kryptographische Verfahren Einfache kryptographische Verfahren Prof. Dr. Hagen Knaf Studiengang Angewandte Mathematik 26. April 2015 c = a b + a b + + a b 1 11 1 12 2 1n c = a b + a b + + a b 2 21 1 22 2 2n c = a b + a b + + a b

Mehr

3 Das RSA-Kryptosystem

3 Das RSA-Kryptosystem Stand: 15.12.2014 Vorlesung Grundlagen und Methoden der Kryptographie Dietzfelbinger 3 Das RSA-Kryptosystem RSA: Erfunden von Ronald L. Rivest, Adi Shamir und Leonard Adleman, 1977. (Ein ähnliches Verfahren

Mehr

Konzepte von Betriebssystemkomponenten: Schwerpunkt Sicherheit. Asymmetrische Verschlüsselung, Digitale Signatur

Konzepte von Betriebssystemkomponenten: Schwerpunkt Sicherheit. Asymmetrische Verschlüsselung, Digitale Signatur Konzepte von Betriebssystemkomponenten: Schwerpunkt Sicherheit Thema: Asymmetrische Verschlüsselung, Digitale Signatur Vortragender: Rudi Pfister Überblick: Asymmetrische Verschlüsselungsverfahren - Prinzip

Mehr

Informatik für Ökonomen II HS 09

Informatik für Ökonomen II HS 09 Informatik für Ökonomen II HS 09 Übung 5 Ausgabe: 03. Dezember 2009 Abgabe: 10. Dezember 2009 Die Lösungen zu den Aufgabe sind direkt auf das Blatt zu schreiben. Bitte verwenden Sie keinen Bleistift und

Mehr

RSA-Verschlüsselung. von Johannes Becker Gießen 2006/2008

RSA-Verschlüsselung. von Johannes Becker Gießen 2006/2008 RSA-Verschlüsselung von Johannes Becker Gießen 2006/2008 Zusammenfassung Es wird gezeigt, wieso das nach Ronald L. Rivest, Adi Shamir und Leonard Adleman genannte RSA-Krptosstem funktioniert, das mittlerweile

Mehr

Digitale Signaturen. Sven Tabbert

Digitale Signaturen. Sven Tabbert Digitale Signaturen Sven Tabbert Inhalt: Digitale Signaturen 1. Einleitung 2. Erzeugung Digitaler Signaturen 3. Signaturen und Einweg Hashfunktionen 4. Digital Signature Algorithmus 5. Zusammenfassung

Mehr

7 Rechnen mit Polynomen

7 Rechnen mit Polynomen 7 Rechnen mit Polynomen Zu Polynomfunktionen Satz. Zwei Polynomfunktionen und f : R R, x a n x n + a n 1 x n 1 + a 1 x + a 0 g : R R, x b n x n + b n 1 x n 1 + b 1 x + b 0 sind genau dann gleich, wenn

Mehr

Public-Key Verschlüsselung

Public-Key Verschlüsselung Public-Key Verschlüsselung Björn Thomsen 17. April 2006 Inhaltsverzeichnis 1 Einleitung 2 2 Wie funktioniert es 2 3 Vergleich mit symmetrischen Verfahren 3 4 Beispiel: RSA 4 4.1 Schlüsselerzeugung...............................

Mehr

Kryptographie eine erste Ubersicht

Kryptographie eine erste Ubersicht Kryptographie eine erste Ubersicht KGV bedeutet: Details erfahren Sie in der Kryptographie-Vorlesung. Abgrenzung Steganographie: Das Kommunikationsmedium wird verborgen. Klassische Beispiele: Ein Bote

Mehr

1 Mathematische Grundlagen

1 Mathematische Grundlagen Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.

Mehr

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders

Mehr

Kryptographische Verfahren auf Basis des Diskreten Logarithmus

Kryptographische Verfahren auf Basis des Diskreten Logarithmus Kryptographische Verfahren auf Basis des Diskreten Logarithmus -Vorlesung Public-Key-Kryptographie SS2010- Sascha Grau ITI, TU Ilmenau, Germany Seite 1 / 18 Unser Fahrplan heute 1 Der Diskrete Logarithmus

Mehr

Asymmetrische. Verschlüsselungsverfahren. erarbeitet von: Emilia Winkler Christian-Weise-Gymnasium Zittau

Asymmetrische. Verschlüsselungsverfahren. erarbeitet von: Emilia Winkler Christian-Weise-Gymnasium Zittau Asymmetrische Verschlü erarbeitet von: Emilia Winkler Christian-Weise-Gymnasium Zittau Gliederung 1) Prinzip der asymmetrischen Verschlü 2) Vergleich mit den symmetrischen Verschlü (Vor- und Nachteile)

Mehr

1 Kryptosysteme 1 KRYPTOSYSTEME. Definition 1.1 Eine Kryptosystem (P(A), C(B), K, E, D) besteht aus

1 Kryptosysteme 1 KRYPTOSYSTEME. Definition 1.1 Eine Kryptosystem (P(A), C(B), K, E, D) besteht aus 1 RYPTOSYSTEME 1 ryptosysteme Definition 1.1 Eine ryptosystem (P(A), C(B),, E, D) besteht aus einer Menge P von lartexten (plaintext) über einem lartextalphabet A, einer Menge C von Geheimtexten (ciphertext)

Mehr

Lineare Gleichungssysteme

Lineare Gleichungssysteme Lineare Gleichungssysteme 1 Zwei Gleichungen mit zwei Unbekannten Es kommt häufig vor, dass man nicht mit einer Variablen alleine auskommt, um ein Problem zu lösen. Das folgende Beispiel soll dies verdeutlichen

Mehr

9.2. DER SATZ ÜBER IMPLIZITE FUNKTIONEN 83

9.2. DER SATZ ÜBER IMPLIZITE FUNKTIONEN 83 9.. DER SATZ ÜBER IMPLIZITE FUNKTIONEN 83 Die Grundfrage bei der Anwendung des Satzes über implizite Funktionen betrifft immer die folgende Situation: Wir haben eine Funktion f : V W und eine Stelle x

Mehr

Elliptische Kurven in der Kryptographie

Elliptische Kurven in der Kryptographie Elliptische Kurven in der Kryptographie Projekttage Mathematik 2002 Universität Würzburg Mathematisches Institut Elliptische Kurven in der Kryptographie p.1/9 Übersicht Kryptographie Elliptische Kurven

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

Mehr

Jede Zahl muss dabei einzeln umgerechnet werden. Beginnen wir also ganz am Anfang mit der Zahl,192.

Jede Zahl muss dabei einzeln umgerechnet werden. Beginnen wir also ganz am Anfang mit der Zahl,192. Binäres und dezimales Zahlensystem Ziel In diesem ersten Schritt geht es darum, die grundlegende Umrechnung aus dem Dezimalsystem in das Binärsystem zu verstehen. Zusätzlich wird auch die andere Richtung,

Mehr

10.6 Authentizität. Geheimhaltung: nur der Empfänger kann die Nachricht lesen

10.6 Authentizität. Geheimhaltung: nur der Empfänger kann die Nachricht lesen 10.6 Authentizität Zur Erinnerung: Geheimhaltung: nur der Empfänger kann die Nachricht lesen Integrität: Nachricht erreicht den Empfänger so, wie sie abgeschickt wurde Authentizität: es ist sichergestellt,

Mehr

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Vollständigkeit halber aufgeführt. Gehen wir einmal davon aus, dass die von uns angenommenen 70% im Beispiel exakt berechnet sind. Was würde

Mehr

Kapitel 3: Etwas Informationstheorie

Kapitel 3: Etwas Informationstheorie Stefan Lucks 3: Informationstheorie 28 orlesung Kryptographie (SS06) Kapitel 3: Etwas Informationstheorie Komplexitätstheoretische Sicherheit: Der schnellste Algorithmus, K zu knacken erfordert mindestens

Mehr

Kapiteltests zum Leitprogramm Binäre Suchbäume

Kapiteltests zum Leitprogramm Binäre Suchbäume Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm

Mehr

4 Aufzählungen und Listen erstellen

4 Aufzählungen und Listen erstellen 4 4 Aufzählungen und Listen erstellen Beim Strukturieren von Dokumenten und Inhalten stellen Listen und Aufzählungen wichtige Werkzeuge dar. Mit ihnen lässt sich so ziemlich alles sortieren, was auf einer

Mehr

6.2 Perfekte Sicherheit

6.2 Perfekte Sicherheit 04 6.2 Perfekte Sicherheit Beweis. H(B AC) + H(A C) = H(ABC) H(AC) + H(AC) H(C) Wegen gilt Einsetzen in die Definition gibt = H(AB C). H(A BC) = H(AB C) H(B C). I(A; B C) = H(A C) H(AB C) + H(B C). Da

Mehr

ERGÄNZUNGEN ZUR ANALYSIS II MITTELWERTSATZ UND ANWENDUNGEN

ERGÄNZUNGEN ZUR ANALYSIS II MITTELWERTSATZ UND ANWENDUNGEN ERGÄNZUNGEN ZUR ANALYSIS II MITTELWERTSATZ UND ANWENDUNGEN CHRISTIAN HARTFELDT. Zweiter Mittelwertsatz Der Mittelwertsatz Satz VI.3.4) lässt sich verallgemeinern zu Satz.. Seien f, g : [a, b] R auf [a,

Mehr

VI.3 RSA. - RSA benannt nach seinen Erfindern R. Rivest, A. Shamir und L. Adleman. - vorgestellt erstes Public-Key Verschlüsselungsverfahren

VI.3 RSA. - RSA benannt nach seinen Erfindern R. Rivest, A. Shamir und L. Adleman. - vorgestellt erstes Public-Key Verschlüsselungsverfahren VI.3 RSA - RSA benannt nach seinen Erfindern R. Rivest, A. Shamir und L. Adleman - vorgestellt 1977 - erstes Public-Key Verschlüsselungsverfahren - auch heute noch das wichtigste Public-Key Verfahren 1

Mehr

Tangentengleichung. Wie lautet die Geradengleichung für die Tangente, y T =? Antwort:

Tangentengleichung. Wie lautet die Geradengleichung für die Tangente, y T =? Antwort: Tangentengleichung Wie Sie wissen, gibt die erste Ableitung einer Funktion deren Steigung an. Betrachtet man eine fest vorgegebene Stelle, gibt f ( ) also die Steigung der Kurve und somit auch die Steigung

Mehr

Anleitung Thunderbird Email Verschlu sselung

Anleitung Thunderbird Email Verschlu sselung Anleitung Thunderbird Email Verschlu sselung Christoph Weinandt, Darmstadt Vorbemerkung Diese Anleitung beschreibt die Einrichtung des AddOn s Enigmail für den Mailclient Thunderbird. Diese Anleitung gilt

Mehr

Linux User Group Tübingen

Linux User Group Tübingen theoretische Grundlagen und praktische Anwendung mit GNU Privacy Guard und KDE Übersicht Authentizität öffentlicher GNU Privacy Guard unter KDE graphische Userinterfaces:, Die dahinter

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

Primzahlzertifikat von Pratt

Primzahlzertifikat von Pratt Primzahlzertifikat von Pratt Daniela Steidl TU München 17. 04. 2008 Primzahltests in der Informatik "Dass das Problem, die Primzahlen von den Zusammengesetzten zu unterscheiden und letztere in ihre Primfaktoren

Mehr

6.2 Scan-Konvertierung (Scan Conversion)

6.2 Scan-Konvertierung (Scan Conversion) 6.2 Scan-Konvertierung (Scan Conversion) Scan-Konvertierung ist die Rasterung von einfachen Objekten (Geraden, Kreisen, Kurven). Als Ausgabemedium dient meist der Bildschirm, der aus einem Pixelraster

Mehr

a n + 2 1 auf Konvergenz. Berechnen der ersten paar Folgenglieder liefert:

a n + 2 1 auf Konvergenz. Berechnen der ersten paar Folgenglieder liefert: Beispiel: Wir untersuchen die rekursiv definierte Folge a 0 + auf Konvergenz. Berechnen der ersten paar Folgenglieder liefert: ( ) (,, 7, 5,...) Wir können also vermuten, dass die Folge monoton fallend

Mehr

Digitale Unterschriften Grundlagen der digitalen Unterschriften Hash-Then-Sign Unterschriften Public-Key Infrastrukturen (PKI) Digitale Signaturen

Digitale Unterschriften Grundlagen der digitalen Unterschriften Hash-Then-Sign Unterschriften Public-Key Infrastrukturen (PKI) Digitale Signaturen Sommersemester 2008 Digitale Unterschriften Unterschrift von Hand : Physikalische Verbindung mit dem unterschriebenen Dokument (beides steht auf dem gleichen Blatt). Fälschen erfordert einiges Geschick

Mehr

Absolute Stetigkeit von Maßen

Absolute Stetigkeit von Maßen Absolute Stetigkeit von Maßen Definition. Seien µ und ν Maße auf (X, Ω). Dann heißt ν absolut stetig bezüglich µ (kurz ν µ ), wenn für alle A Ω mit µ(a) = 0 auch gilt dass ν(a) = 0. Lemma. Sei ν ein endliches

Mehr

8: Zufallsorakel. Wir suchen: Einfache mathematische Abstraktion für Hashfunktionen

8: Zufallsorakel. Wir suchen: Einfache mathematische Abstraktion für Hashfunktionen Stefan Lucks 8: Zufallsorakel 139 Kryptogr. Hashfunkt. (WS 08/09) 8: Zufallsorakel Unser Problem: Exakte Eigenschaften von effizienten Hashfunktionen nur schwer erfassbar (z.b. MD5, Tiger, RipeMD, SHA-1,...)

Mehr

Sowohl die Malstreifen als auch die Neperschen Streifen können auch in anderen Stellenwertsystemen verwendet werden.

Sowohl die Malstreifen als auch die Neperschen Streifen können auch in anderen Stellenwertsystemen verwendet werden. Multiplikation Die schriftliche Multiplikation ist etwas schwieriger als die Addition. Zum einen setzt sie das kleine Einmaleins voraus, zum anderen sind die Überträge, die zu merken sind und häufig in

Mehr

OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

OECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland OECD Programme for International Student Assessment Deutschland PISA 2000 Lösungen der Beispielaufgaben aus dem Mathematiktest Beispielaufgaben PISA-Hauptstudie 2000 Seite 3 UNIT ÄPFEL Beispielaufgaben

Mehr

27. Algorithmus der Woche Public-Key-Kryptographie Verschlüsseln mit öffentlichen Schlüsseln

27. Algorithmus der Woche Public-Key-Kryptographie Verschlüsseln mit öffentlichen Schlüsseln 27. Algorithmus der Woche Public-Key-Kryptographie Verschlüsseln mit öffentlichen Schlüsseln Autor Dirk Bongartz, RWTH Aachen Walter Unger, RWTH Aachen Wer wollte nicht schon mal eine Geheimnachricht übermitteln?

Mehr

Kap. 8: Speziell gewählte Kurven

Kap. 8: Speziell gewählte Kurven Stefan Lucks 8: Spezielle Kurven 82 Verschl. mit Elliptischen Kurven Kap. 8: Speziell gewählte Kurven Zur Erinnerung: Für beliebige El. Kurven kann man den Algorithmus von Schoof benutzen, um die Anzahl

Mehr

12 Kryptologie. ... immer wichtiger. Militär (Geheimhaltung) Telebanking, Elektronisches Geld E-Commerce WWW...

12 Kryptologie. ... immer wichtiger. Militär (Geheimhaltung) Telebanking, Elektronisches Geld E-Commerce WWW... 12 Kryptologie... immer wichtiger Militär (Geheimhaltung) Telebanking, Elektronisches Geld E-Commerce WWW... Kryptologie = Kryptographie + Kryptoanalyse 12.1 Grundlagen 12-2 es gibt keine einfachen Verfahren,

Mehr

3: Primzahlen. 111 S. Lucks Diskr Strukt. (WS 18/19) 3: Primzahlen

3: Primzahlen. 111 S. Lucks Diskr Strukt. (WS 18/19) 3: Primzahlen 3: Primzahlen 111 S. Lucks Diskr Strukt. (WS 18/19) 3: Primzahlen Definition 40 (Teiler, Vielfache, Primzahlen, zusammengesetzte Zahlen) Seien a, b N. a ist ein Teiler von b ( a b ), falls es ein k N gibt

Mehr

Mathematischer Vorbereitungskurs für Ökonomen

Mathematischer Vorbereitungskurs für Ökonomen Mathematischer Vorbereitungskurs für Ökonomen Dr. Thomas Zehrt Wirtschaftswissenschaftliches Zentrum Universität Basel Gleichungen Inhalt: 1. Grundlegendes 2. Lineare Gleichungen 3. Gleichungen mit Brüchen

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 15: Reguläre Ausdrücke und rechtslineare Grammatiken Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009 1/25 Was kann man mit endlichen

Mehr

Gleichungen Lösen. Ein graphischer Blick auf Gleichungen

Gleichungen Lösen. Ein graphischer Blick auf Gleichungen Gleichungen Lösen Was bedeutet es, eine Gleichung zu lösen? Was ist überhaupt eine Gleichung? Eine Gleichung ist, grundsätzlich eine Aussage über zwei mathematische Terme, dass sie gleich sind. Ein Term

Mehr

1 topologisches Sortieren

1 topologisches Sortieren Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung

Mehr

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank In den ersten beiden Abschnitten (rbanken1.pdf und rbanken2.pdf) haben wir uns mit am Ende mysql beschäftigt und kennengelernt, wie man

Mehr

Überblick. Lineares Suchen

Überblick. Lineares Suchen Komplexität Was ist das? Die Komplexität eines Algorithmus sei hierbei die Abschätzung des Aufwandes seiner Realisierung bzw. Berechnung auf einem Computer. Sie wird daher auch rechnerische Komplexität

Mehr

Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote

Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote Anleitung zum erfassen von Last Minute Angeboten und Stellenangebote Zweck dieser Anleitung ist es einen kleinen Überblick über die Funktion Last Minute auf Swisshotelportal zu erhalten. Für das erstellen

Mehr

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster Es gibt in Excel unter anderem die so genannten Suchfunktionen / Matrixfunktionen Damit können Sie Werte innerhalb eines bestimmten Bereichs suchen. Als Beispiel möchte ich die Funktion Sverweis zeigen.

Mehr

Abituraufgabe zur Stochastik, Hessen 2009, Grundkurs (TR)

Abituraufgabe zur Stochastik, Hessen 2009, Grundkurs (TR) Abituraufgabe zur Stochastik, Hessen 2009, Grundkurs (TR) Eine Firma stellt USB-Sticks her. Sie werden in der Fabrik ungeprüft in Packungen zu je 20 Stück verpackt und an Händler ausgeliefert. 1 Ein Händler

Mehr

3: Zahlentheorie / Primzahlen

3: Zahlentheorie / Primzahlen Stefan Lucks Diskrete Strukturen (WS 2009/10) 96 3: Zahlentheorie / Primzahlen 3: Zahlentheorie / Primzahlen Stefan Lucks Diskrete Strukturen (WS 2009/10) 97 Definition 37 (Teiler, Vielfache, Primzahlen,

Mehr

Leichte-Sprache-Bilder

Leichte-Sprache-Bilder Leichte-Sprache-Bilder Reinhild Kassing Information - So geht es 1. Bilder gucken 2. anmelden für Probe-Bilder 3. Bilder bestellen 4. Rechnung bezahlen 5. Bilder runterladen 6. neue Bilder vorschlagen

Mehr

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar 2015. ZID Dezentrale Systeme

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar 2015. ZID Dezentrale Systeme Novell Client Anleitung zur Verfügung gestellt durch: ZID Dezentrale Systeme Februar 2015 Seite 2 von 8 Mit der Einführung von Windows 7 hat sich die Novell-Anmeldung sehr stark verändert. Der Novell Client

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr

Verschlüsseln Sie Ihre Dateien lückenlos Verwenden Sie TrueCrypt, um Ihre Daten zu schützen.

Verschlüsseln Sie Ihre Dateien lückenlos Verwenden Sie TrueCrypt, um Ihre Daten zu schützen. HACK #39 Hack Verschlüsseln Sie Ihre Dateien lückenlos Verwenden Sie TrueCrypt, um Ihre Daten zu schützen.»verschlüsseln Sie Ihren Temp-Ordner«[Hack #33] hat Ihnen gezeigt, wie Sie Ihre Dateien mithilfe

Mehr

Konzepte von Betriebssystem-Komponenten: Schwerpunkt Sicherheit Grundlagen: Asymmetrische Verschlüsslung, Digitale Signatur

Konzepte von Betriebssystem-Komponenten: Schwerpunkt Sicherheit Grundlagen: Asymmetrische Verschlüsslung, Digitale Signatur Konzepte von Betriebssystem-Komponenten: Schwerpunkt Sicherheit Grundlagen: Asymmetrische Verschlüsslung, Digitale Signatur Rudi Pfister Rudi.Pfister@informatik.stud.uni-erlangen.de Public-Key-Verfahren

Mehr

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER Inhalt 1 Einleitung... 1 2 Einrichtung der Aufgabe für die automatische Sicherung... 2 2.1 Die Aufgabenplanung... 2 2.2 Der erste Testlauf... 9 3 Problembehebung...

Mehr

Lineare Differentialgleichungen erster Ordnung erkennen

Lineare Differentialgleichungen erster Ordnung erkennen Lineare Differentialgleichungen erster Ordnung In diesem Kapitel... Erkennen, wie Differentialgleichungen erster Ordnung aussehen en für Differentialgleichungen erster Ordnung und ohne -Terme finden Die

Mehr

Lineare Gleichungssysteme

Lineare Gleichungssysteme Brückenkurs Mathematik TU Dresden 2015 Lineare Gleichungssysteme Schwerpunkte: Modellbildung geometrische Interpretation Lösungsmethoden Prof. Dr. F. Schuricht TU Dresden, Fachbereich Mathematik auf der

Mehr

x 2 2x + = 3 + Es gibt genau ein x R mit ax + b = 0, denn es gilt

x 2 2x + = 3 + Es gibt genau ein x R mit ax + b = 0, denn es gilt - 17 - Die Frage ist hier also: Für welche x R gilt x = x + 1? Das ist eine quadratische Gleichung für x. Es gilt x = x + 1 x x 3 = 0, und man kann quadratische Ergänzung machen:... ( ) ( ) x x + = 3 +

Mehr

Kulturelle Evolution 12

Kulturelle Evolution 12 3.3 Kulturelle Evolution Kulturelle Evolution Kulturelle Evolution 12 Seit die Menschen Erfindungen machen wie z.b. das Rad oder den Pflug, haben sie sich im Körperbau kaum mehr verändert. Dafür war einfach

Mehr

Proseminar Datensicherheit & Versicherungsmathematik RSA-Verfahren

Proseminar Datensicherheit & Versicherungsmathematik RSA-Verfahren Proseminar Datensicherheit & Versicherungsmathematik RSA-Verfahren Herwig Stütz 2007-11-23 1 Inhaltsverzeichnis 1 Einführung 2 2 Das RSA-Verfahren 2 2.1 Schlüsselerzeugung.................................

Mehr

BITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen?

BITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen? BITte ein BIT Vom Bit zum Binärsystem A Bit Of Magic 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen? 3. Gegeben ist der Bitstrom: 10010110 Was repräsentiert

Mehr

Kurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11

Kurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11 Kurzanleitung MEYTON Aufbau einer Internetverbindung 1 Von 11 Inhaltsverzeichnis Installation eines Internetzugangs...3 Ist mein Router bereits im MEYTON Netzwerk?...3 Start des YAST Programms...4 Auswahl

Mehr

3. Zusammenhang. 22 Andreas Gathmann

3. Zusammenhang. 22 Andreas Gathmann 22 Andreas Gathmann 3. Zusammenhang Eine der anschaulichsten Eigenschaften eines topologischen Raumes ist wahrscheinlich, ob er zusammenhängend ist oder aus mehreren Teilen besteht. Wir wollen dieses Konzept

Mehr

Grundlagen der Informatik

Grundlagen der Informatik Mag. Christian Gürtler Programmierung Grundlagen der Informatik 2011 Inhaltsverzeichnis I. Allgemeines 3 1. Zahlensysteme 4 1.1. ganze Zahlen...................................... 4 1.1.1. Umrechnungen.................................

Mehr