Modulo Gleichung lösen

Neue Frage »

Tryndamere Auf diesen Beitrag antworten »
Modulo Gleichung lösen
Meine Frage:
Hallo

Ich hoch schon seit ca 3 Stunde an folgendem Problem. (El Gamal Signatur)(Das System meinte ich solle es in Algebra posten ich hätte es doch eher in Sonstiges, bitte verschieben wenn es falsch liegt)

Es gelte folgende Formel:


p = 53

2 Nachrichten gegeben
die erste

die zweite


Berechnung von a und r

Meine Ideen:
Also Die Annahme das r in beiden Fällen gleich ist, ist korrekt, da lambda den selben wert besitzt und dmait mit dem gleichen r berechnet worden ist.

Die 2 Gleichungen:



Mein Ansatz wäre gewesen:

eine Gleichung nach r umzustellen und r einzusetzen und a zu berechnen.

Das Problem ist, dass am Ende einfach Kommawerte rauskommen und ich leider nicht verstehe wie ich das mod 52 "umkehre"
tryndamere Auf diesen Beitrag antworten »

Kann es sein,

das für r = 59589 rauskommt?

ich habe nun umgestellt nach r

also

und mit "probieren" gelöst

Solange r keine gerade Zahl ist


k++

stimmt der weg?
tryndamere Auf diesen Beitrag antworten »

ok langsam bin ich am verzweifeln ...

Wolfram meint es kommt 17 raus
(wegen url beschränkung wolframalpher selebr aufrufen und den input selber hinachen)
/input/?i=49%3D%2844-17-2x%29%2F%2845x%29+mod52

danach habe ich nochmal gerechnet und habe ienen Fehler beim umstellen gefunden

und folgendes für r gefunden



und nach dem Schema ausgerechnet und es kommt 1269 raus.

Also ich brauch wirklich dringend mal einen Ansatz ... :<
tryndamere Auf diesen Beitrag antworten »

Und noch einmal einen schritt weiter

a= 8
r=5

scheinen ja vernünftige Lösungen zu sein, wenn ich das aber durchteste

d.h. annehme s sei unbekannt und a,r einsetze kommt nicht das gesuchte s raus
HAL 9000 Auf diesen Beitrag antworten »

r=5 ist richtig, auch wenn ich deine Rechnungen reichlich abenteuerlich finde. a=8 ist jedenfalls falsch.

Zitat:
Original von Tryndamere


Subtraktion ergibt

,

also



Dies eingesetzt in die erste Gleichung erhält man



.
tryndamere Auf diesen Beitrag antworten »

Ja das ganze ist vl. etwas kaotisch, da ich nie gelernt habe wie man in moduloräumen rechnet.
Ich bin halt auch "nur" Informatiker und versuche mir halt alles über Algorithmen beizubringen.

Zitat:
Original von HAL 9000



Den 2. schritt verstehe ich ehrlich gesgat nicht


Wie kommt man auf so etwas? bloßes Hinsehen? Und wenn ja woran erkennt man es.

Und bei negativen werten wird dann anscheinend das negativ einfach weggelassen also im Beispiel

- 567 zu 567 und der daraus entstehende Wert vom modulo Operanden abgezogen

also im Beispiel 567 mod 52 = 47
52-47 = 5.

Habe ich das so richtig verstanden?

Zitat:
Original von HAL 9000
.


Und die Zeile verstehe ich auch nicht.

Ich dachte 7 sei nun mein a oder was übersehe ich gerade?

LG
 
 
HAL 9000 Auf diesen Beitrag antworten »

Zitat:
Original von tryndamere
Ja das ganze ist vl. etwas kaotisch, da ich nie gelernt habe wie man in moduloräumen rechnet.

Sowas hab ich schon geahnt und befürchtet, und leider schon sehr oft hier im Board beobachtet. Für mich ist es ein Unding, solche Verschlüsselungsalgorithmen (RSA, etc.) durchgehen zu wollen, ohne die notwendigen Grundlagen der Modulorechnung zu beherrschen. Das kann irgendwie nicht lange gutgehen. unglücklich

Zitat:
Original von tryndamere
Den 2. schritt verstehe ich ehrlich gesgat nicht


Wie kommt man auf so etwas? bloßes Hinsehen? Und wenn ja woran erkennt man es.

Naja, z.B. ergibt der "Erweiterte Euklidische Algorithmus" (EEA)

,

was zur Folge hat, was ja nichts anderes ist als .

Zitat:
Original von tryndamere
Zitat:
Original von HAL 9000
.


Und die Zeile verstehe ich auch nicht.

Ich dachte 7 sei nun mein a oder was übersehe ich gerade?

Nein, wir waren bei . Und da , ergibt sich , was dann offensichtlich zur Lösung führt.


Fazit: Du solltest dir unbedingt die Theorie und Beispiele zum Lösen einfacher linearer Kongruenzen mal ansehen, u.a. auch die Berechnung der Inversen (so denn existent) per EEA. Ansonsten wird das für dich das blanke Stochern im Nebel.
tryndamere Auf diesen Beitrag antworten »

Zitat:
Original von HAL 9000
was dann offensichtlich zur Lösung führt.


Das Problem ist nur das a = -1 keine Gültige Lösung ist, da per Definition des ElGamal

0 < a < p-2

D.h. es muss ein weiteres a geben für das es gilt das führt mich aber zur Frage, wenn es 2 Lösungen gibt, gibt es dann überhaupt eine eindeutige Lösung?

Zitat:
Original von HAL 9000
Fazit: Du solltest dir unbedingt die Theorie und Beispiele zum Lösen einfacher linearer Kongruenzen mal ansehen, u.a. auch die Berechnung der Inversen (so denn existent) per EEA. Ansonsten wird das für dich das blanke Stochern im Nebel.


Hast du vl zufällig iwelche Seiten die das schön erklären mit Beispielen außer Wikipedia?

Naja HAL programmiertechnisch sit das ein klacks für mich zum umsetzen, bloß leider besitze ich in de rPrüfung kein python oder ähnliches zum lösen, ich finde es auch nicht gerade rosig ohne Vorkenntnisse da reingeworfen zu werden. Aber es wird halterwartet das wir das uns selbst anlernen. :-(

Wie gesagt deshalb habe ich mir schon die "kaotische" Lösung erarbeitet mit der Schleife. Da mien TR schnell Tabellen erzeugen kann, ist das ein durchscrollen der Liste, wobei mir die reguläre Lösung besser gefällt, da die auch ohne TR funktioniert.

Danke für deine Hilfe
LG
HAL 9000 Auf diesen Beitrag antworten »

Zitat:
Original von tryndamere
Das Problem ist nur das a = -1 keine Gültige Lösung ist, da per Definition des ElGamal

0 < a < p-2

D.h. es muss ein weiteres a geben

Nicht für dieses obige Gleichungssystem: Es gibt nur die eine Lösung

,

wenn du denn unbedingt einen positiven Repräsentanten brauchst. Aber mit deinem ist damit , erfüllt also nicht deine Bedingung .

Diese Eindeutigkeit müsstest du auch erkennen, wenn, ja wenn das Vorwissen über denn da wäre...
tryndamere Auf diesen Beitrag antworten »

ah entschuldigung der Raum ist nicht p-2 sondern p-1 (hatte ich gerade falsch im Kopf)

a element {1,...,p-2}: also ist 51 die exakte Lösung.

Ich bin bloß auch gerade glücklich das ich zur Not meine Algolösung habe die zwar nicht schön ist aber funktioniert und keinen Mehrauffwand für mich bedeutet.

Ich muss schließlich auch die Zeitsparenste Lösung finden.

Ich werde mir einmal die von dir angesprochenen Punkte anschauen und hoffentlich schnell verstehen.

Danke für deine Hilfe und Nerven.

MfG
RavenOnJ Auf diesen Beitrag antworten »

Was nützt dir eine algorithmische Lösung, wenn du gar nicht verstehst, warum die Lösung eine Lösung ist? Natürlich kann man sehr einfach einen Brute-Force-Algo finden, der zumindest für kleine Zahlen eine Lösung findet. Das bringt dich nur im Verständnis überhaupt nicht weiter.
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »