• Keine Ergebnisse gefunden

ar ba qn mod p

N/A
N/A
Protected

Academic year: 2021

Aktie "ar ba qn mod p"

Copied!
1
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Prof.Dr. W.Koepf

Dipl.-Math. T.Sprenger Ubungen zur Vorlesung

Ubungsblatt 05 COMPUTERALGEBRA I 16.11.2006

Aufgabe 1: (Modulare Inverse)

Benutzen Sie die erweiterte GCD-Funktion von Mathematica, um eine Funktion ModInv[a,r] zu implementieren, die das Inverse von a in Zr zuruckgibt, falls ein Inverses existiert und ansonsten 0.

(4 Punkte)

Aufgabe 2: (Modulares Potenzieren)

Programmieren Sie die Funktion powermod aus der Vorlesung iterativ.

(6 Punkte)

Aufgabe 3: (Modulare Logarithmen/Babystep-Giantstep-Verfahren) Sei p 2 P und n = bppc. Dann gilt

x logab mod p () ar ba qn mod p; (1)

wobei x = q n + r mit 0 q; r < n.

1. Beweisen Sie die Aquivalenz (1).

2. Die Aquivalenz (1) rechtfertigt die Vorgehensweise im folgenden Babystep-Giantstep- Verfahren zur Bestimmung von modularen Logarithmen

(i) Bilden Sie eine Menge M mit den Elementen ar mod p fur r = 0; : : : ; n 1.

(ii) Vergleichen Sie, ob ba qn mod p in M enthalten ist (q = 0; : : : ; n 1). Gilt ar ba qn mod p fur ein Paar (q; r), so geben Sie den (minimalen) modularen Logarithmus x = q n + r aus. Hinweis: ba qn b a nq

mod p lasst sich aus b a nq 1

a n mod p, also aus der vorherigen Iteration, bestimmen.

Implementieren Sie diesen Algorithmus.

3. Testen Sie Ihre Prozedur an den Beispielen (a) log25 mod 7

(b) log58 mod 13

(c) log166433376 mod 104729.

4. Geben Sie die Anzahl der Schritte an, die im schlechtesten Fall notwendig sind, den modularen Logarithmus mit der obigen Methode zu bestimmen. Vergleichen Sie diese mit der Anzahl der Schritte des in der Vorlesung beschriebenen Verfahrens (DiskreterLogarithmus).

(12 Punkte)

Abgabetermin: Dienstag, 28.11.2006, 09.15 Uhr ansprenger@mathematik.uni-kassel.de

Referenzen

ÄHNLICHE DOKUMENTE

Aufgabe 3: (Kronecker-Algorithmus) Programmieren Sie den Kronecker-Algorithmus aus Sitzung 6.36 als Mathematica-Funktion Kronecker und faktorisieren Sie damit die folgenden

[r]

Hierbei sollen alle aufgetretenen Fehler

[r]

Da f 0 6= 0, gibt es keine lokalen und somit auch keine globalen Extremstellen im Inneren von D.. Damit m¨ ussen alle Extremstellen auf dem Rand von

negati- ven Achsen, und alle weiteren Niveaumengen sind entlang der y–Achse verschobene Winkelhalbierende.. Die Funktion l k¨ onnen wir ebenfalls ausschließen da diese

(ii) Als Begr¨ undung f¨ ur eine Funktion reicht es leider nicht, die Niveaumenge zu einem Wert hinzuschreiben.. Abbildung 1 zeigt Niveaulininen der

Im folgenden soll zun¨ achst eine Stammfunktion von g 2 mittels partieller Integration bestimmt werden... Falls die Matrix A vollen Rang