![]() |
---|
Hallo, ich habe eine Aufgabe bekommen und weiß nicht genau, wie ich diese lösen soll. zur Aufgabe: Diesen Link wollen Sie natürlich sofort entschlüsseln. Sie wissen, dass ein erweiterter linearer Kongruenzgenerator (LCG) zur Erzeugung eines Schlüsselstroms genutzt wurde. Außerdem wissen Sie, dass der Schlüsselstrom dazu verwendet wurde, den Link in UTF-8 Kodierung zeichenweise zu verschlüsseln, . . das Chiffrat ergibt sich für jedes UTF-8 Klartext-Zeichen als bitweises XOR mit . Die erweiterte Variante des LCG berechnet jedes neue Schlüsselstromsymbol aus den beiden vorherigen Elementen und s_i−1} . In diesem Fall benötigt der LCG aber auch zwei seed Werte und sowie insgesamt drei Schlüsselparameter und und den Modulo . Die entsprechende Gleichung ist gegeben als: · · s_i−1} mit . . . Aufgrund des 8-Bit-ASCII kodierten Klartextes verwenden wir für den erweiterten LCG den Modulus . Die abgefangene Nachricht in hexadezimaler Darstellung lautet wie folgt: 5F23C8EED2078FE00EDC300372DEFC376260BC1DAFC434BF9 Berechnen Sie die Parameter und durch Aufstellen eines linearen Gleichungssystems. Außerdem wissen Sie, dass es sich um einen Link, der mit der Zeichenkette “ ” beginnt, handelt. Die Zeichenkette " " habe ich in Hex umgewandelt und dann ein Xor auf die Abgefangene Nachricht durchgeführt, so dass ich die Schlüssel von erhalte. als Hexcode: Die Schlüssel in Dezimal: Ich habe die Parameter bereits über eine andere Methode selber bestimmt(A=37,B=67,C=223). Jedoch erhalte ich andere Werte ,wenn ich versuche ein LGS aufzustellen und dieses nach und umstelle. Kann bitte jemand erklären wie man die Werte von und über ein LGS erhält. viele Grüße Für alle, die mir helfen möchten (automatisch von OnlineMathe generiert): "Ich möchte die Lösung in Zusammenarbeit mit anderen erstellen." |
![]() |
![]() |
Ich verstehe nicht, wie du (also 8 Byte) erhalten konntest, wenn du nur den Anfang " " (das sind bei mir 3 Byte) Klartextnachricht kanntest: Nach meiner Logik kannst du dann durch die XOR-Operation auch nur erhalten - oder was verstehe ich hier falsch? |
![]() |
Jedes Klartextzeichen wurde mit 2 Hexadezimalzeichen codiert. Jedes Hexadezimalzeichen kann mit 4 Bits (also 2 Zeichen-Hex dann mit 8 Bits oder 1 Byte) dargestellt werden. Zum Beispiel: ist die verschlüsselte Hex Folge (und das erste Zeichen der abgefangenen Nachricht "h"). in unicode entspricht . wenn man nun die beiden Hex werte in Binär umwandelt und die xor operation durchführt bekommt man: sprich ein Byte. In dezimal umgerechnet ergibt das . Das kann man für die weiteren 7 Zeichen wiederholen und bekommt somit die Schlüssel von . |
![]() |
Ich bin nicht so blöd, dass du mir die Hexadezimalkodierung erklären musst, oder die XOR-Operation. Auf meine Frage bist du nicht wirklich eingegangen - nochmal: " " sind bei mir 3 ASCII-Zeichen oder wenn man so will auch UTF-8-Zeichen, hexadezimal 222022. Auch nach der XOR-Operation sind das immer noch 3 Byte statt 8 Byte. > Außerdem wissen Sie, dass es sich um einen Link, der mit der Zeichenkette " " beginnt, handelt. Da steht nichts von 8 Zeichen. |
![]() |
sorry, wir haben aneinander vorbei gesprochen, ich habe die Nachricht in " " gesetzt, aber das Mathe Forum hat sie dadurch nicht angezeigt. Der Klartext den ich habe besteht aus hatatapasa:a/a/ (ignoriere die ich kann sonst den klartext nicht schrieben) und nicht aus " ". Danke fürs darauf aufmerksam machen, wollte dich nicht für blöd verkaufen. |
![]() |
Keine Ahnung, warum du Probleme hast den Code zu posten, an sich ist das Forum hier in der Lage, Юникод darzustellen. |
![]() |
Ich glaube es liegt daran, dass es der Anfang eines Links ist und es deswegen als so einer erkannt wird. Aber wenn ich den Klartext normal schreibe wird er eben nicht angezeigt. |
![]() |
Mal testen: In der Vorschau klappt es noch. EDIT: Hast Recht, ist verschwunden. |
![]() |
Um auf meine Aufgabe zurück zu kommen, ich habe bereits versucht es in ein normales LGS zu überführen, mit 3 Gleichungen und 3 Unbekannten und es mit der Addition dieser Gleichungen aufzulösen. Aber ich bekomme andere Ergebnisse für die Parameter raus. mit multipliziert Addition von und Addition von mit multipliziert und mit multiplizieren mit multiplizieren Addition von und modulo anwenden. mit multiplizieren (multiplikatives Inverses bilden) |
![]() |
Ohne deine Rechenschritte nachvollzogen zu haben, komme ich auf eine andere Lösung des Gleichungssystems in : |
![]() |
Das sind die richtigen Parameter, mich würde dennoch interessieren wo mein Fehler liegt. Könntest du entweder meinen Fehler zeigen oder deinen Rechenweg teilen? Damit ich das nachvollziehen kann? |
![]() |
EDIT: Einen Fehler sehe ich schon. 188-87=101 statt -101. Es geht weiter mit 188-55=133 statt 33. Übrigens: War dein Name gestern noch "Ascorbin", oder gibt es jetzt tatsächlich zwei Leute, die sich zeitnah für Gleichungssysteme modulo 257 interessieren? www.onlinemathe.de/forum/LGS-mit-3-Variablen-und-Modulo |
![]() |
es kann sein, dass wir an der gleichen Übungsaufgabe scheitern :-) aber das ist jemand anderes |
![]() |
Danke, für deine Hilfe, mit der Korrektur habe ich es geschafft auch auf zu kommen. Vielen Dank. Ich versuche den Rest jetzt erstmal alleine zu lösen, falls ich Hilfe brauceh komme ich wieder. Nochmal Danke |
![]() |
kannst du bitte zeigen wie du A ausgerechnet hast |
Diese Frage wurde automatisch geschlossen, da der Fragesteller kein Interesse mehr an der Frage gezeigt hat.
|