Lösungsblatt zur Vorlesung. Kryptanalyse WS 2009/2010. Blatt 5 / 9. Dezember 2009 / Abgabe bis spätestens 23. Dezember 2009, 10 Uhr (vor der Übung)
|
|
- Heini Andreas Hauer
- vor 5 Jahren
- Abrufe
Transkript
1 Ruhr-Universität Bochum Lehrstuhl für Kryptologie und IT-Sicherheit Prof. Dr. Alexander May Mathias Herrmann, Alexander Meurer Lösungsblatt zur Vorlesung Kryptanalyse WS 2009/2010 Blatt 5 / 9. Dezember 2009 / Abgabe bis spätestens 23. Dezember 2009, 10 Uhr (vor der Übung) AUFGABE 1 (6 Punkte): Sei N = pq ein RSA-Modul und b = a 2 mod N. (a) Konstruieren Sie einen Algorithmus, der bei Eingabe b, N in Zeit Õ(N 1 2 ) und Platz Õ(1) eine Quadratwurzel von b berechnet. Verwenden Sie dazu den Satz von Coppersmith (Satz 60). Zunächst lässt sich das Lösen der Gleichung a 2 = b mod N für gegebenes b, N leicht umformulieren zur Berechnung der Nullstellen des univariaten Polynoms f(x) = x 2 b mod N Die Grundidee ist, für eine Approximation A von a der Güte auf das modifizierte univariate Polynom a A N 1 2 f(x) := (x + A) 2 b mod N die Coppersmith-Methode anzuwenden. Diese findet dann wegen grad(f) = 2 alle Nullstellen x 0 mit x 0 N 1 2 und somit für geeignete Wahl von A die Nullstelle x 0 = a A. Jede (ganzzahlige) Nullstelle erfüllt dann (x 0 + A) 2 b mod N und wir können a = x 0 + A wählen, um die gewünschte Lösung zu erhalten. Da wir die Approximation A nicht kennen, testen wir verschiedene Approximationen A := i N 1 2 (für i = 1, 2,...), so dass mit der Coppersmith-Methode alle Nullstellen im gesamten
2 Suchraum Z N = {0,..., N 1} gefunden werden (falls diese existieren). Für i = 1 finden wir bspw. die gesuchte Nullstelle a, falls a N 1 2 N 1 2 d.h. wir decken den Bereich a {0,..., 2 N 1 2 } ab. Für i = 2 finden wir a, falls a 2 N 1 2 N 1 2 d.h. wir bearbeiten a { N 1 2,..., 3 N 1 2 }. Insgesamt überdecken wir also ganz Z N auf diese Art. Das führt zu folgendem Algorithmus: Algorithm 1 Quadratwurzeln mod N Eingabe: N = pq, b Z N Ausgabe: a Z N mit a 2 b mod N i := 1 A := i N 1 2 ; while A N do f(x) := (x + A) 2 b mod N Finde Nullstellen x 0 von f(x) mit der Coppersmith-Methode if Nullstelle x 0 gefunden then breche die WHILE-Schleife ab und gib a := x 0 + A aus end if i := i + 1 und A := i N 1 2 end while Dass der Algorithmus korrekt arbeitet, haben wir bereits zuvor erläutert (wobei man gefundene Nullstellen evt. noch auf Ganzzahligkeit testen muss). Die Coppersmith- Methode hat Laufzeit O(poly(log N)). Es bleibt zu untersuchen, wie oft die Schleife durchlaufen wird. Der Abbruch erfolgt spätestens bei A > N, d.h. wir müssen i mit i N 1 2 > N bestimmen. Dies gilt für i > N N 1 2 N N 1 2 = N 1 2 d.h. die Schleife wird maximal N 1 2 -mal durchlaufen und wir erhalten eine Gesamtlaufzeit von ) O (N 1 2 poly(log N) = Õ(N 1 2 ) Zur Speicherung reicht offensichtlich konstanter Platz Õ(1). Bemerkung. Man kann die Laufzeit noch verkürzen, indem man bei der Approximation A größere Schritte wählt, so dass die oben erläuterten Intervalle leeren Schnitt haben und wir keine Bereiche doppelt absuchen.
3 (b) Für Polynome vom Grad 2 liefert der Satz von Coppersmith die Schranke x 0 N 1 2. Angenommen man könnte die Schranke auf x 0 N verbessern. Zeigen Sie, dass man dann N in Polynomialzeit faktorisieren kann. Gilt die verbesserte Schranke, so können wir alle Nullstellen des Polynoms f(x) = x 2 1 mod N bestimmen. Offensichtlich hat x 2 1 in Z p bzw. Z q jeweils zwei Nullstellen ±1, welche sich mit dem CRT zu 4 verschiedenen Nullstellen in Z N zusammensetzen. Wir finden also insbesondere mindestens eine nicht-triviale Nullstelle x 0 ±1. Wegen x mod N gilt N x also auch N (x 0 + 1)(x 0 1) aber weil x 0 nicht-triviale Nullstelle ist, gilt N (x 0 + 1) und N (x 0 1). N teilt also das Produkt (x 0 + 1)(x 0 1) aber keinen der beiden Faktoren. Dann muss N aber mit x einen nichttrivialen gemeinsamen Teiler k haben (und entsprechend einen nichttrivialen gemeinsamen Teiler N mit x k 0 1) 1. Somit liefert die Berechnung von ggt(n, x 0 + 1) bzw. ggt(n, x 0 1) je einen der gesuchten Faktoren p oder q. Alle Berechnungen (ggt und Coppersmith) wären unter der Annahme für die verbesserte Schranke effizient durchführbar. AUFGABE 2 (4 Punkte): Beweisen Sie den Satz von Howgrave-Graham für bivariate Polynome, d.h. zeigen Sie: Sei g(x, y) = i,j b i,jx i y i Z[x, y] ein Polynom mit n Monomen. Es sei ferner (1) g(x 0, y 0 ) = 0 mod M m für x 0 X, y 0 Y und (2) g(xx, yy ) < M m n. Dann gilt g(x 0, y 0 ) = 0 über den ganzen Zahlen. Hinweis: Wie bei univariate Polynomen ist die Norm von g(x, y) als die Euklidische Norm des Koeffizientenvektors definiert. Man kann den Beweis aus der Vorlesung analog für bivariate Polynome nachahmen, denn es gilt g(x 0, y 0 ) = i,j b i,j x i 0y j 0 i,j i,j b i,j X i ( x 0 X )i }{{} 1 Y j ( y 0 Y )j }{{} 1 b i,j X i Y j n g(xx, yy ) < M m 1 Das kann man sich bspw. sehr schnell mittels Primfaktorzerlegung überlegen
4 Hierbei haben wir im vorletzten Schritt einerseits die Normdefinition bivariater Polynome benutzt, denn g(xx, yy ) hat gerade die Koeffizienten b i,j X i Y j und somit gilt g(xx, yy ) = (b i,j X i Y j ) 2 woraus die gewünschte Abschätzung zusammen mit der Normäquivalenz x 1 n x 2 in endlichdimensionalen Vektorräumen folgt. Die Ungleichung g(x 0, y 0 ) < M m bedeutet aber zusammen mit der ersten Bedingung g(x 0, y 0 ) = 0 mod M m, dass die Nullstelle auch in Z existiert, also g(x 0, y 0 ) = 0 über Z i,j AUFGABE 3 (10 Punkte): Bestimmen Sie mit einem Angriff nach Wiener den geheimen Schlüssel zu folgendem öffentlichen Schlüssel: N = e = Es liefert z.b. der folgende Code für die Mathematik Umgebung SAGE die gesuchte Lösung d = from sage.libs.fplll.fplll import FP_LLL N= e= ## We build a lattice basis ## for the linearized polynomial ## ex_1 + x_2 = 0 mod N X1= ceil(rr( 1/3 * N^(1/4) ) ) X2= ceil(rr( N^(3/4) ) ) Y1=ceil( N/X1 ) Y2=ceil( N/X2 ) B=matrix(2,2); B[0,0]=Y1 B[0,1]=e * Y2 B[1,0]=0;
5 B[1,1]=N * Y2 F = FP_LLL(B) F.wrapper() red=f._sage_() xprime = red[0]; d = xprime[0]/y1 #### Check if +-d is correct testmessage=mod( ,n); testcipher=(testmessage**e); if testcipher**d == testmessage : print "Found d = ", d; elif testcipher**-d == testmessage : print "Found d = ", -d; else : print "Something went wrong, d is not correct"; Können Sie ebenfalls die Faktorisierung von N bestimmen? (Kapitel 9.1.3) p = q = from sage.libs.fplll.fplll import FP_LLL N= e= d= def fillbasis(b2,g,row,x): coeffs=g.coeffs(); for pos in range(len(coeffs)): B2[row,pos]=coeffs[pos]; return; def getpol(v,x): thepol=0; for p in range(len(v)): thepol = thepol + (v[p]/(x^p))*(x^p) return thepol; P,x=PolynomialRing(IntegerRing(),x).objgen() M=e*d-1; X=ceil(RR(1/2*N^(1/2))) for j in range(6): approx=n-ceil(rr(j/2*n^(1/2)))
6 f=approx-x b=1/2 m=2; dim=1/b*m B2=matrix(dim,dim); thepositions=[]; #index ist position in der Basismatrix, denn wir fügen der Reihe nach hinzu counter=0; for i in range(m+1): pol=m^(m-i)*f^i; pol=pol.subs(x=x*x); thepositions=fillbasis(b2,pol,counter,x); counter=counter+1; for i in range(m+1,1/b*m): pol=x^(i-m)*f^m; pol=pol.subs(x=x*x); thepositions=fillbasis(b2,pol,counter,x); counter=counter+1; F2 = FP_LLL(B2) F2.wrapper() red2=f2._sage_() theroot=getpol(red2[0],x).roots()[0][0] thephi=approx-theroot if (e*d)%thephi == 1 : print "Correct phi = ", thephi break; p=var( p ) sol=solve([(thephi-n-1)*p+p^2+n==0],p) if sol[0].rhs()*sol[1].rhs()==n: print "\nfound factorization:\n\t p = ",sol[0].rhs(),"\n\t q = ", sol[1].rhs() Abgabe von lauffähigen Programmen oder Skripten an mathias.herrmann@rub.de. Hinweis: Viele Computeralgebraprogramme verfügen über eine LLL Implementierung (z.b. pari/gp). Alternativ kann eine Implementierung in C/C++ verfügbare Bibliotheken (z.b. NTL) einbinden.
Lösungsblatt zur Vorlesung. Kryptanalyse WS 2009/2010. Blatt 6 / 23. Dezember 2009 / Abgabe bis spätestens 20. Januar 2010, 10 Uhr (vor der Übung)
Ruhr-Universität Bochum Lehrstuhl für Kryptologie und IT-Sicherheit Prof. Dr. Alexander May Mathias Herrmann, Alexander Meurer Lösungsblatt zur Vorlesung Kryptanalyse WS 2009/2010 Blatt 6 / 23. Dezember
MehrDiskrete Mathematik 1
Ruhr-Universität Bochum Lehrstuhl für Kryptologie und IT-Sicherheit Prof. Dr. Alexander May M. Ritzenhofen, M. Mansour Al Sawadi, A. Meurer Lösungsblatt zur Vorlesung Diskrete Mathematik 1 WS 008/09 Blatt
MehrRabin Verschlüsselung 1979
Rabin Verschlüsselung 1979 Idee: Rabin Verschlüsselung Beobachtung: Berechnen von Wurzeln in Z p ist effizient möglich. Ziehen von Quadratwurzeln in Z N ist äquivalent zum Faktorisieren. Vorteil: CPA-Sicherheit
MehrDiskrete Mathematik 1 WS 2008/09
Ruhr-Universität Bochum Lehrstuhl für Kryptologie und IT-Sicherheit Prof. Dr. Alexander May M. Ritzenhofen, M. Mansour Al Sawadi, A. Meurer Lösungsblatt zur Vorlesung Diskrete Mathematik 1 WS 008/09 Blatt
MehrBsp: Die kleinsten Carmichael-Zahlen sind 561, 1105, 1729, Es gibt unendlich viele Carmichael-Zahlen (Beweis 1994).
Primzahltest Wir wollen testen, ob eine gegebene Zahl n eine Primzahl ist Effizienter Algorithmus zum Faktorisieren ist unbekannt Kontraposition des Kleinen Satzes von Fermat liefert: Falls a n 1 1 mod
MehrKlausurtermin. Klausur Diskrete Mathematik I Do stündig
Klausurtermin Klausur Diskrete Mathematik I Do. 28.02.2008 3-stündig 07.12.2007 1 Wiederholung Komplexität modularer Arithmetik Addition: O(n) Multiplikation: O(n 2 ) bzw. O(n log 2 3 ) Exponentiation:
MehrRSA Parameter öffentlich: N = pq mit p, q prim und e Z RSA Parameter geheim: d Z φ(n)
RSA Parameter { öffentlich: N = pq mit p, q prim und e Z RSA Parameter φ(n) geheim: d Z φ(n) mit ed = 1 mod φ(n). Satz RSA Parameter Generierung RSA-Parameter (N, e, d) können in Zeit O(log 4 N) generiert
MehrKryptographische Protokolle
Kryptographische Protokolle Lerneinheit 2: Generierung von Primzahlen Prof. Dr. Christoph Karg Studiengang Informatik Hochschule Aalen Wintersemester 2018/2019 15.11.2018 Einleitung Einleitung Diese Lerneinheit
MehrEinwegfunktionen. Problemseminar. Komplexitätstheorie und Kryptographie. Martin Huschenbett. 30. Oktober 2008
Problemseminar Komplexitätstheorie und Kryptographie Martin Huschenbett Student am Institut für Informatik an der Universität Leipzig 30. Oktober 2008 1 / 33 Gliederung 1 Randomisierte Algorithmen und
MehrEuklidischer Algorithmus
Euklidischer Algorithmus Ermitteln des größten gemeinsamen Teilers mit Euklid: function ggt (m, n) Hierbei ist m begin 0undn 0vorausgesetzt. if m = 0 then return n else return ggt (n mod m, m) fi end Man
MehrAffine Varietät. Definition Affine Varietät. Seien f 1,..., f m F[x 1,..., x n ] für einen Körper F. Wir bezeichnen
Affine Varietät Definition Affine Varietät Seien f 1,..., f m F[x 1,..., x n ] für einen Körper F. Wir bezeichnen V(f 1,..., f m ) = {(a 1,..., a n ) F n f i (a 1,..., a n ) = 0 für i = 1,..., m} als die
MehrSicherheit von ElGamal Intuitiv: Eve soll c 2 = m g ab nicht von c 2 R G unterscheiden können.
Sicherheit von ElGamal Intuitiv: Eve soll c 2 m g ab nicht von c 2 R G unterscheiden können. Protokoll Unterscheider EINGABE: q, g, g x 1 Eve wählt m G und schickt m an Alice. 2 Alice wählt b R {0, 1},
MehrAlgorithmische Kryptographie
Algorithmische Kryptographie Walter Unger Lehrstuhl für Informatik I 16. Februar 2007 Public-Key-Systeme: Rabin 1 Das System nach Rabin 2 Grundlagen Körper Endliche Körper F(q) Definitionen Quadratwurzel
Mehr= 1. Falls ( a n. ) r i. i=1 ( b p i
Das Jacobi-Symbol Definition Jacobi-Symbol Sei n N ungerade mit Primfaktorzerlegung n = s definieren das Jacobi-Symbol ( a ( ) ri n) := s a i=1 p i. i=1 pr i i. Wir Anmerkungen: Falls a quadratischer Rest
MehrÜbung zur Vorlesung Berechenbarkeit und Komplexität
RWTH Aachen Lehrgebiet Theoretische Informatik Reidl Ries Rossmanith Sanchez Tönnis WS 2012/13 Übungsblatt 7 26.11.2012 Übung zur Vorlesung Berechenbarkeit und Komplexität Aufgabe T15 Entwickeln Sie ein
MehrDiskrete Mathematik 1
Ruhr-Universität Bochum Lehrstuhl für Kryptologie und IT-Sicherheit Prof. Dr. Alexander May M. Ritzenhofen, M. Mansour Al Sawadi, A. Meurer Lösungsblatt zur Vorlesung Diskrete Mathematik 1 WS 2008/09 Blatt
MehrZunächst ein paar einfache "Rechen"-Regeln: Lemma, Teil 1: Für beliebige Funktionen f und g gilt:
Der Groß-O-Kalkül Zunächst ein paar einfache "Rechen"-Regeln: G. Zachmann Informatik 1 - WS 05/06 Komplexität 22 Additionsregel Lemma, Teil 1: Für beliebige Funktionen f und g gilt: Zu beweisen: nur das
MehrVortrag 20: Kurze Vektoren in Gittern
Seminar: Wie genau ist ungefähr Vortrag 20: Kurze Vektoren in Gittern Kerstin Bauer Sommerakademie Görlitz, 2007 Definition und Problembeschreibung Definition: Gitter Seien b 1,,b k Q n. Dann heißt die
MehrMinimalpolynome und Implikanten
Kapitel 3 Minimalpolynome und Implikanten Wir haben bisher gezeigt, daß jede Boolesche Funktion durch einfache Grundfunktionen dargestellt werden kann. Dabei können jedoch sehr lange Ausdrücke enstehen,
MehrKapitel III Ringe und Körper
Kapitel III Ringe und Körper 1. Definitionen und Beispiele Definition 117 Eine Algebra A = S,,, 0, 1 mit zwei zweistelligen Operatoren und heißt ein Ring, falls R1. S,, 0 eine abelsche Gruppe mit neutralem
MehrEinführung in die Theoretische Informatik
Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Sascha Böhme, Lars Noschinski Sommersemester 2011 Lösungsblatt 9 25. Juli 2011 Einführung in die Theoretische Informatik
MehrAnzahl der Generatoren
Anzahl der Generatoren Satz Anzahl Generatoren eines Körpers Sei K ein Körper mit q Elementen. Dann besitzt K genau φ(q 1) viele Generatoren. Beweis: K ist zyklisch, d.h. K besitzt einen Generator a mit
MehrWS 2009/10. Diskrete Strukturen
WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910
Mehr11. Übung zur Vorlesung Zahlentheorie. im Wintersemester 2016/17. Untersuche mit dem Lucas-Lehmer-Test, ob die Zahl n = prim ist.
11. Übung zur Vorlesung Aufgabe 41. Untersuche mit dem Lucas-Lehmer-Test, ob die Zahl n = 2 11 1 prim ist. Aufgabe 42. Beweise das folgende Kriterium von Proth mit dem Pocklington-Test: Sei n > 1 gegeben.
MehrTechnische Universität München Zentrum Mathematik. Optimierung 2, WS 2008/09 Übungsblatt 12
Technische Universität München Zentrum Mathematik Prof. Dr. P. Gritzmann, Dipl.-Inf. Dipl.-Math. S. Borgwardt, Dr. M. Ritter Optimierung 2, WS 2008/09 Übungsblatt 12 Aufgabe 12.1 Betrachten Sie die folgenden
MehrÜbung Algorithmen und Datenstrukturen
Übung Algorithmen und Datenstrukturen Sommersemester 2016 Patrick Schäfer, Humboldt-Universität zu Berlin Organisation Vorlesung: Montag 11 13 Uhr Marius Kloft RUD 26, 0 115 Mittwoch 11 13 Uhr Marius Kloft
Mehr2 Polynome und rationale Funktionen
Gleichungen spielen auch in der Ingenieurmathematik eine große Rolle. Sie beschreiben zum Beispiel Bedingungen, unter denen Vorgänge ablaufen, Gleichgewichtszustände, Punktmengen. Gleichungen für eine
Mehr2. Algorithmische Methoden 2.1 Rekursion. 18. April 2017
2. Algorithmische Methoden 2.1 Rekursion 18. April 2017 Rekursiver Algorithmus Ein rekursiver Algorithmus löst ein Problem, indem er eine oder mehrere kleinere Instanzen des gleichen Problems löst. Beispiel
MehrAlgebra. 0 = (f g)(x) = f(x) g(x).
Fachbereich Mathematik Prof. Dr. Nils Scheithauer Walter Reußwig TECHNISCHE UNIVERSITÄT DARMSTADT WS 08/09 25. November 2008 Algebra 7. Übung mit Lösungshinweisen Aufgabe 31 Sei R ein Integritätsbereich,
MehrAuswählen nach Rang (Selektion)
Auswählen nach Rang (Selektion) Geg.: Folge X von n Schlüsseln, eine Zahl k mit k n Ges.: ein k-kleinster Schlüssel von X, also den Schlüssel x k für X sortiert als x x 2 L x n trivial lösbar in Zeit O(kn)
MehrDas Generalized Birthday Problem
Das Generalized Birthday Problem Problem Birthday Gegeben: L 1, L 2 Listen mit Elementen aus {0, 1} n Gesucht: x 1 L 1 und x 2 L 2 mit x 1 x 2 = 0. Anwendungen: Meet-in-the-Middle Angriffe (z.b. für RSA,
MehrBeispiel für simultane Kongruenz
Beispiel für simultane Kongruenz Jetzt wollen wir das Lemma der letzten Einheit anwenden. Wenn man eine Zahl sucht, die kongruent zu y modulo m und kongruent zu z modulo n ist, so nehme man zam + ybn wobei
MehrInstitut für Theoretische Informatik Jun.-Prof. Dr. D. Hofheinz. Stammvorlesung Sicherheit im Sommersemester Übungsblatt 3
Institut für Theoretische Informatik Jun.-Prof. Dr. D. Hofheinz Stammvorlesung Sicherheit im Sommersemester 2014 Übungsblatt 3 Hinweis: Übungsblätter können freiwillig bei Florian Böhl, Raum 255, Geb.
Mehr8. Musterlösung zu Mathematik für Informatiker II, SS 2004
8. Musterlösung zu Mathematik für Informatiker II, SS 2004 MARTIN LOTZ &MICHAEL NÜSKEN Aufgabe 8.1 (Polynomdivision). (8 Punkte) Dividiere a mit Rest durch b für (i) a = x 7 5x 6 +3x 2 +1, b = x 2 +1in
MehrWann sind Codes eindeutig entschlüsselbar?
Wann sind Codes eindeutig entschlüsselbar? Definition Suffix Sei C ein Code. Ein Folge s {0, 1} heißt Suffix in C falls 1 c i, c j C : c i = c j s oder 2 c C und einen Suffix s in C: s = cs oder 3 c C
Mehr3: 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
MehrVI.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
MehrKapitel 3: Die Sätze von Euler, Fermat und Wilson. 8 Der Satz von Euler
Kapitel 3: Die Sätze von Euler, Fermat und Wilson In diesem Kapitel wollen wir nun die eulersche -Funktion verwenden, um einen berühmten Satz von Euler zu formulieren, aus dem wir dann mehrere interessante
MehrApproximationsalgorithmen
Effiziente Algorithmen Lösen NP-vollständiger Probleme 320 Approximationsalgorithmen In polynomieller Zeit lässen sich nicht exakte Lösungen von NP-harten Problemen berechnen. Approximationsalgorithmen
MehrT n (1) = 1 T n (cos π n )= 1. deg T n q n 1.
KAPITEL 3. INTERPOLATION UND APPROXIMATION 47 Beweis: Wir nehmen an qx) für alle x [, ] und führen diese Annahme zu einem Widerspruch. Es gilt nach Folgerung ii) T n ) T n cos π n ). Wir betrachten die
MehrAlgorithmen II Vorlesung am
Algorithmen II Vorlesung am 07..0 Minimale Schnitte in Graphen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum
Mehr3: 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,
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Große Übung #1 Christian Rieck, Arne Schmidt 26.10.2017 Organisatorisches Christian Rieck, Arne Schmidt Große Übung 2 Homepage Aktuelle Informationen, Hausaufgaben, Slides
MehrÜbungen zur Vorlesung Datenstrukturen und Algorithmen SS 07 Beispiellösung Blatt 5
Kamil Swierkot Paderborn, den 01.06.2007 Aufgabe 17 Übungen zur Vorlesung Datenstrukturen und Algorithmen SS 07 Beispiellösung Blatt 5 Bei der Optimierungsvariante des SubSetSum Problems wird bei der Eingabe
MehrEin sortiertes Feld kann in O(log n) durchsucht werden, z.b. mit Binärsuche. Der Algorithmus 1 gibt den Pseudocode der binären Suche an.
2.5 Suchen Eine Menge S will nach einem Element durchsucht werden. Die Menge S ist statisch und S = n. S ist Teilmenge eines Universums auf dem eine lineare Ordnung definiert ist und soll so gespeichert
MehrTheorie und Praxis geometrischer Algorithmen Seminarvortrag. Resultanten. von. Manuel Caroli
Theorie und Praxis geometrischer Algorithmen Seminarvortrag Resultanten von Manuel Caroli Motivation Schnittkurve zweier "quadrics": Menge der gemeinsamen Wurzeln ihrer Polynome Fragestellung: Finde die
Mehr9. Musterlösung zu Mathematik für Informatiker I, WS 2003/04
9. Musterlösung zu Mathematik für Informatiker I, WS 2003/04 KATHRIN TOFALL, MICHAEL NÜSKEN Die mit * gekennzeichneten Aufgabenteile und Aufgaben sind freiwillig. Die dort erworbenen Punkte werden als
MehrÜbungsblatt 5. Vorlesung Theoretische Grundlagen der Informatik im WS 17/18
Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 5 Vorlesung Theoretische Grundlagen der Informatik im WS 17/18 Ausgabe 20. Dezember 2017 Abgabe 16. Januar 2018, 11:00 Uhr
MehrAlgorithmen II Vorlesung am
Algorithmen II Vorlesung am 0..0 Minimale Schnitte in Graphen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum
Mehr8. Woche Quadratische Reste und Anwendungen. 8. Woche: Quadratische Reste und Anwendungen 163/ 238
8 Woche Quadratische Reste und Anwendungen 8 Woche: Quadratische Reste und Anwendungen 163/ 238 Quadratische Reste Ḋefinition Quadratischer Rest Sei n N Ein Element a Z n heißt quadratischer Rest in Z
MehrDer Primzahltest von Agrawal, Kayal und Saxena. Dr. Gerold Jäger
Der Primzahltest von Agrawal, Kayal und Saxena Dr. Gerold Jäger Habilitationsvortrag Christian-Albrechts-Universität zu Kiel Institut für Informatik 19. Januar 2011 Dr. Gerold Jäger Habilitationsvortrag
MehrAbgabe: (vor der Vorlesung) Aufgabe 2.1 (P) O-Notation Beweisen Sie die folgenden Aussagen für positive Funktionen f und g:
TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen SS 2009 Grundlagen: Algorithmen und Datenstrukturen Übungsblatt 2 Prof. Dr. Helmut Seidl, S. Pott,
MehrKapitel 3. Konvergenz von Folgen und Reihen
Kapitel 3. Konvergenz von Folgen und Reihen 3.1. Normierte Vektorräume Definition: Sei V ein Vektorraum (oder linearer Raum) über (dem Körper) R. Eine Abbildung : V [0, ) heißt Norm auf V, falls die folgenden
MehrTheorie und Praxis geometrischer Algorithmen
0/36 Theorie und Praxis geometrischer Algorithmen Isolierende Intervalle: Sturmsche Ketten Rico Philipp Motivation 1/36 Was ist eine Sturmsche Kette? Wie berechnet man diese? Durch welche Eigenschaften
MehrADS: Algorithmen und Datenstrukturen 2
ADS: Algorithmen und Datenstrukturen 2 Teil 11 Prof. Peter F. Stadler & Dr. Christian Höner zu Siederdissen Bioinformatik/IZBI Institut für Informatik & Interdisziplinäres Zentrum für Bioinformatik Universität
MehrFaktorisierung von Polynomen. zusammen mit Karim Belabas, Mark van Hoeij und Allan Steel.
Faktorisierung von Polynomen Jürgen Klüners klueners@mathematik.uni-kassel.de zusammen mit Karim Belabas, Mark van Hoeij und Allan Steel. Beispiele Faktorisieren von Zahlen: 60 = 2 2 3 5. Faktorisieren
MehrÜbungsaufgaben zur Zahlentheorie (Holtkamp)
Ruhr-Universität Bochum Fakultät für Mathematik Sommersemester 2005 Übungsaufgaben zur Zahlentheorie (Holtkamp) Sonderregelung: Zur vollständigen Lösung jeder Aufgabe gehört die Kennzeichnung der (maximal
MehrAttacken auf RSA und Das Rabin Kryptosystem
Attacken auf RSA und Das Rabin Kryptosystem Institut für Informatik Universität Potsdam 4. Januar 2005 Überblick Wiederholung: RSA Das RSA Kryptosystem Attacken auf RSA RSA-FACTOR Wieners Algorithmus Das
MehrMathematik I. Vorlesung 7. Folgen in einem angeordneten Körper
Prof. Dr. H. Brenner Osnabrück WS 009/010 Mathematik I Vorlesung 7 Folgen in einem angeordneten Körper Wir beginnen mit einem motivierenden Beispiel. Beispiel 7.1. Wir wollen die Quadratwurzel einer natürlichen
MehrHumboldt-Universität zu Berlin Berlin, den Institut für Informatik
Humboldt-Universität zu Berlin Berlin, den 15.06.2015 Institut für Informatik Prof. Dr. Ulf Leser Übungen zur Vorlesung M. Bux, B. Grußien, J. Sürmeli, S. Wandelt Algorithmen und Datenstrukturen Übungsblatt
MehrAlgorithmen und Datenstrukturen
1 Algorithmen und Datenstrukturen Wintersemester 2014/15 3. Vorlesung Laufzeitanalyse Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I 2 Recap: Diskutieren Sie mit Ihrer NachbarIn! 1. 2. 3. Was sind
MehrBeispiel: Primelemente in den Gaußschen Zahlen
Beispiel: Primelemente in den Gaußschen Zahlen Satz Primelemente in Z[i] Für die Primelemente π Z[i] gilt bis auf Assoziiertheit 1 N(π) = p für ein p P oder 2 π = p für ein p P mit p x 2 + y 2 für (x,
MehrAlgorithmen und Datenstrukturen
Universität Innsbruck Institut für Informatik Zweite Prüfung 16. Oktober 2008 Algorithmen und Datenstrukturen Name: Matrikelnr: Die Prüfung besteht aus 8 Aufgaben. Die verfügbaren Punkte für jede Aufgabe
MehrFortgeschrittene Netzwerk- und Graph-Algorithmen
Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester
MehrEinführung in die Algebra
Prof. Dr. H. Brenner Osnabrück SS 2009 Einführung in die Algebra Vorlesung 23 Die Gradformel Satz 1. Seien K L und L M endliche Körperweiterungen. Dann ist auch K M eine endliche Körpererweiterung und
MehrBeispiel: Primelemente in den Gaußschen Zahlen
Beispiel: Primelemente in den Gaußschen Zahlen Satz Primelemente in Z[i] Für die Primelemente π Z[i] gilt bis auf Assoziiertheit 1 N(π) = p für ein p P oder 2 π = p für ein p P mit p x 2 + y 2 für (x,
MehrSignale und Codes Vorlesung 11
Signale und Codes Vorlesung 11 Nico Döttling January 31, 2014 1 / 22 Ein List-Decoder für WH k Theorem (Goldreich-Levin) Für jedes ɛ > 0 existiert ein effizienter List-Decoder für WH k welcher 1 2 ɛ Fehler
MehrKapitel 2. Weitere Beispiele Effizienter Algorithmen
Kapitel 2 Weitere Beispiele Effizienter Algorithmen Sequentielle Suche Gegeben: Array a[1..n] Suche in a nach Element x Ohne weitere Zusatzinformationen: Sequentielle Suche a[1] a[2] a[3] Laufzeit: n Schritte
MehrFortgeschrittene Netzwerk- und Graph-Algorithmen
Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Große Übung #1 Christian Rieck, Arne Schmidt 25.10.2018 Organisatorisches Christian Rieck, Arne Schmidt Große Übung #1 - AuD 2 Homepage Aktuelle Informationen, Hausaufgaben,
Mehr5 Interpolation und Approximation
5 Interpolation und Approximation Problemstellung: Es soll eine Funktion f(x) approximiert werden, von der die Funktionswerte nur an diskreten Stellen bekannt sind. 5. Das Interpolationspolynom y y = P(x)
MehrDiskrete Strukturen Kapitel 5: Algebraische Strukturen (Gruppen)
WS 2015/16 Diskrete Strukturen Kapitel 5: Algebraische Strukturen (Gruppen) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_15
MehrTheoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme
Theoretische Informatik Exkurs Rainer Schrader Exkurs: Komplexität von n Institut für Informatik 13. Mai 2009 1 / 34 2 / 34 Gliederung Entscheidungs- und Approximationen und Gütegarantien zwei Greedy-Strategien
Mehr2.7. RINGDIREKTE SUMME, SIMULTANE KONGRUENZEN 89
2.7. RINGDIREKTE SUMME, SIMULTANE KONGRUENZEN 89 Beweis. 1.) ϕ : Z K : 1 1 definiert einen Homomorphismus. Da Bild ϕ endlich ist, ist Z/ Kern ϕ endlich und man sieht leicht Kern ϕ = pz für eine Primzahl
MehrRandomisierte Algorithmen
Randomisierte Algorithmen Kapitel 1 Markus Lohrey Universität Leipzig http://www.informatik.uni-leipzig.de/~lohrey/rand WS 2005/2006 Markus Lohrey (Universität Leipzig) Randomisierte Algorithmen WS 2005/2006
MehrCharakterisierung von Gröbnerbasen
Charakterisierung von Gröbnerbasen Satz Charakterisierung von Gröbnerbasen Eine Menge G = {g 1,..., g m } I ist eine Gröbnerbasis gdw für jedes f I der Term LT (f ) von einem der LT (g i ), i = 1,...,
MehrKapitel 6: Das quadratische Reziprozitätsgesetz
Kapitel 6: Das quadratische Reziprozitätsgesetz Ziel dieses Kapitels: die Untersuchung der Lösbarkeit der Kongruenzgleichung X also die Frage, ob die ganze Zahl Z eine Quadratwurzel modulo P besitzt. Im
Mehr11. Übung zur Vorlesung. Zahlentheorie. im Wintersemester 2015/16
11. Übung zur Vorlesung Aufgabe 41. Zeige, dass das Polynom (X 2 13)(X 2 17)(X 2 13 17) Z[X] modulo jeder natürlichen Zahl n N eine Nullstelle hat, aber keine Nullstelle in Z besitzt. Aufgabe 42. Sei p
MehrForm der Äquivalenzklassen
Form der Äquivalenzklassen Anmerkung: Es gilt a = a ± m = a ± 2m =... = a + km mod m für alle k Z. Wir schreiben auch {x Z x = a + mk, k Z} = a + mz. Es gibt m verschiedene Äquivalenzklassen modulo m:
MehrZahlentheorie. Alexander May. Fakultät für Mathematik Ruhr-Universität Bochum. Sommersemester 2015
Zahlentheorie Alexander May Fakultät für Mathematik Ruhr-Universität Bochum Sommersemester 2015 Zahlentheorie - V01 Primzahlen, Landau-Notation, Fermat Primzahl, Mersenne Primzahl 1 / 230 Organisatorisches
MehrStudent: Alexander Carls Matrikelnummer: Aufgabe: Beschreibung des euklidischen Algorithmus Datum:
Berufsakademie Stuttgart / Außenstelle Horb Studienbereich Technik Studiengang Informationstechnik Kurs IT2006, 2.Semester Dozent: Olaf Herden Student: Alexander Carls Matrikelnummer: 166270 Aufgabe: Beschreibung
MehrSeminar. Algorithmische Geometrie
Seminar Algorithmische Geometrie WS 2000/2001 Thema: Konvexe Hülle Mirko Dennler 21439 Inhaltsverzeichnis Konvexe Hülle 1. Problemstellung 3 2. GRAHAMS SCAN 4-5 3. JARVIS' MARCH 5-6 4. QUICK HULL 6-7 5.
MehrVolker Kaatz. Faktorisierung. Faktorisierung. Problem und Algorithmen. Relevanz in der Kryptographie
Faktorisierung Problem und Algorithmen Relevanz in der Kryptographie Inhalt Begriff Faktorisierung Algorithmen (Übersicht) Strategie und Komplexität Pollard p-1 Algorithmus Pseudocode, mathematische Basis,
MehrPolynomdivision. Definition führender Term. Algorithmus Polynomdivision
Polynomdivision Definition führender Term Sei f = a m x m +...+a 0 F[x]. Dann bezeichnen wir den führenden Term von f mit LT(f) = a m x m. Anmerkung: Für f, g F[x] gilt: grad(f) grad(g) LT(f) teilt LT(g).
Mehr2. Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung
2 Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 2 Woche: Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 24/ 44 Zwei Beispiele a 0
MehrAlgorithmik WS 07/ Vorlesung, Andreas Jakoby Universität zu Lübeck
Lemma 15 KLP 1 ist genau dann lösbar, wenn das dazugehörige LP KLP 2 eine Lösung mit dem Wert Z = 0 besitzt. Ist Z = 0 für x 0, x 0, dann ist x eine zulässige Lösung von KLP 1. Beweis von Lemma 15: Nach
MehrKombinatorische Optimierung
Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Vorlesung 16 Programm: Einführung
MehrLösung zur 13. Hausübung Algebraische Strukturen (keine Abgabe)
TU Kaiserslautern Fachbereich Mathematik Prof. Dr. Andreas Gathmann Inga Schwabrow Lösung zur 13. Hausübung Algebraische Strukturen (keine Abgabe) Aufgabe 1. Wintersemester 2016/17 (1 + i) (1 i) 3 (2 +
Mehr8.1.3 Operation Build-Max-Heap Operation zur Konstruktion eines Heaps Eingabe: Feld A[1..n], n = länge(a) BUILD-MAX-HEAP (A)
Stand der Vorlesung: Datenstruktur Heap: fast vollständiger Binärbaum MaxHeap: sortierter Heap, größtes Element an Wurzel Sortierverfahren: HeapSort: Sortieren eines Feldes A[1.. n] Idee: in place: Feld
MehrTechnische Universität München
Stand der Vorlesung: Datenstruktur Heap: fast vollständiger Binärbaum MaxHeap: sortierter Heap, größtes Element an Wurzel Sortierverfahren: HeapSort: Sortieren eines Feldes A[1.. n] Idee: in place: Feld
MehrZahlentheorie I - Tipps & Lösungen. Aktualisiert: 15. Oktober 2016 vers Teilbarkeit
Schweizer Mathematik-Olympiade smo osm Zahlentheorie I - Tipps & Lösungen Aktualisiert: 15. Oktober 2016 vers. 1.2.0 1 Teilbarkeit Einstieg 1.1 Zeige, dass 900 ein Teiler von 10! ist. Tipp: Schreibe 900
MehrLineare Algebra 2. Lösung zu Aufgabe 7.2:
Technische Universität Dortmund Sommersemester 2017 Fakultät für Mathematik Übungsblatt 7 Prof. Dr. Detlev Hoffmann 15. Juni 2017 Marco Sobiech/ Nico Lorenz Lineare Algebra 2 Lösung zu Aufgabe 7.1: (a)
MehrDas RSA-Verfahren. Proseminar Kryptographische Protokolle SS Armin Litzel
in der Praxis Proseminar Kryptographische Protokolle SS 2009 5.5.2009 in der Praxis Gliederung 1 Grundlegendes über RSA 2 in der Praxis Allgemeine Vorgehensweise zur Verschlüsselung Signieren mit RSA 3
MehrRelationen und DAGs, starker Zusammenhang
Relationen und DAGs, starker Zusammenhang Anmerkung: Sei D = (V, E). Dann ist A V V eine Relation auf V. Sei andererseits R S S eine Relation auf S. Dann definiert D = (S, R) einen DAG. D.h. DAGs sind
Mehra i x i, (1) Ein Teil der folgenden Betrachtungen gilt auch, wenn man den Körper durch einen Ring ersetzt.
Polynome Definition 1. Ein Polynom f über einem Körper K mit der Unbestimmten x ist eine formale Summe f(x) = i 0 a i x i, (1) wobei nur endlich viele der Koeffizienten a i K von Null verschieden sind.
MehrSatz von Euler. Satz von Euler. Korollar 1. Korollar 2 Kleiner Fermat. Sei (G, ) eine endl. abelsche Gruppe. Dann gilt a G = 1 für alle a G.
Satz von Euler Satz von Euler Sei (G, ) eine endl. abelsche Gruppe. Dann gilt a G = 1 für alle a G. Beweis: Sei G = {g 1,..., g n } und a G. Betrachte die Abbildung f : G G, g ag. Da a G, besitzt a ein
MehrSatz von Euler. Satz von Euler. Korollar 1. Korollar 2 Kleiner Fermat. Sei (G, ) eine endl. abelsche Gruppe. Dann gilt a G = 1 für alle a G.
Satz von Euler Satz von Euler Sei (G, ) eine endl. abelsche Gruppe. Dann gilt a G = 1 für alle a G. Beweis: Sei G = {g 1,..., g n } und a G. Betrachte die Abbildung f : G G, g ag. Da a G, besitzt a ein
Mehr