Diskussion:RSA-Kryptosystem

Letzter Kommentar: vor 9 Stunden von Rat in Abschnitt p,q und phi(N)
Diese Diskussionsseite dient dazu, Verbesserungen am Artikel „RSA-Kryptosystem“ zu besprechen. Persönliche Betrachtungen zum Thema gehören nicht hierher. Für allgemeine Wissensfragen gibt es die Auskunft.

Füge neue Diskussionsthemen unten an:

Klicke auf Abschnitt hinzufügen, um ein neues Diskussionsthema zu beginnen.
Auf dieser Seite werden Abschnitte ab Überschriftenebene 2 automatisch archiviert, die seit 7 Tagen mit dem Baustein {{Erledigt|1=--~~~~}} versehen sind. Das aktuelle Archiv befindet sich unter Archiv/1.

Code-Beispiel etwas irreführend

Bearbeiten

Das vorgestellte Code-Beispiel ist in vieler Hinsicht hilfreich, allerdings hat es eine entscheidende Schwäche: statt einer gesamten Nachricht (bis zu einer maximalen Länge) wird dort nur jedes Zeichen der Nachricht einzeln verschlüsselt. Eine solche Implementierung ließe sich leicht aushebeln, indem ein Angreifer z.B. das gesamte Alphabet mit dem öffentlichen Schlüssel zeichenweise verschlüsselt, daraus eine Tabelle bildet und dann bei der zu entschlüsselnden Nachricht schlichtweg Zeichen für Zeichen mit der Tabelle abgleicht.

Vergleiche auch den Abschnitt "Padding" über die Gefahr, die besteht, wenn die Grundlänge der Nachricht zu klein gewählt wird. => nicht signiert !

Bei mir funktioniert dieser Code einfach nicht !?

Bearbeiten

Ich verwende VS C++ 2002. Als Klartext erhalte ich :"☻©↨Ü©`VM╬¶↨M©Ü`©M`☻M═Ms©ÜM♦³". Welchen Fehler mache ich ? --92.200.219.254 09:47, 13. Dez. 2022 (CET)Beantworten

Mir scheint, der Fehler liegt in der Funktion encryptTextWithRSA: Das Schlüsseltextzeichen c hat einen Wertebereich von 0 bis n-1, und das überschreitet die Größe eines char, so dass es nicht ohne Verlust im String gespeichert werden kann. --Megatherium (Diskussion) 12:26, 13. Dez. 2022 (CET)Beantworten

Da gibt es noch andere Probleme ! Dieses Programm kann niemals funktioniert haben:( Wie kann den solcher ungetesteter Mist als Beispiel hergenommen werden ??--92.200.219.254 19:21, 13. Dez. 2022 (CET)Beantworten

RSA Entschlüsselung exponent (geheimer Schlüssel) d

Bearbeiten

Hi,

warum kneift Ihr alle (auch der Justus von der Humboldt in Berlin) den Schritt von

d*e kongruent 1 mod phi(N)

zur Lösung die inverse Gleichung

d*e = 1

und nun dividieren diese Gleichung durch e auf beiden Seiten

d = 1/e

d.i, ist d=e^-1

und nun kann das konkrete Beispiel praktisch entschüsselt werden.

wieso wird der RSA-Anwender mit dem ganzen theoretischen Zeug von Leonard Euler beim Enschlüsseln überfrachtet, das braucht er nicht, statt dessen die obige inverse Gleichung.

Gruß Wolfgang


--Lobito060454 (Diskussion) 06:45, 2. Apr. 2023 (CEST)Beantworten

RSA-Kryptosystem, Änderungsabsicht

Bearbeiten

Hi,

liebe Kryptologe und Programmierer,


ich bitte um Entschuldigung für mein Abschnitt vom 02.04.23 06:45 Uhr, hab nicht gesehen, daß die Grundvoraussetzungen siehe https://www.britannica.com/topic/RSA-encryption,

nicht gegeben sind, vorallem "Wähle eine zu φ ( N ) varphi (N) teilerfremde Zahl e, für die gilt 1 < e < φ ( N ) − 1  1<e< (N)-1.

Das C-Programm sollte unterstützen beim Umwandeln der Nachricht in ASCII-Codes,

das ist viel mühsam, als die Schlüssel zu erzeugen und Codieren, ferner was soll die Funktion "getPublic", damit wird der Wert von φ(n) sodaß er zu e passt, na ja und wozu sollen

"Wir wählen p = 11 p=11 und q = 13 q=13 für die beiden Primzahlen", die multipliziert werden um den öffentlichen Schlüssel n zu berechnen, aus dem die φ(n)-Funktion

bezüglich e berechnet, das wird aber nicht in einer endlos laufender Schleife gemacht, sondern ganz hart mit φ(n) = n-1/e, dahin kommt der erweitert Euklidischer Algorythmus,

den der Leser ohne Programm durchführen soll,

ach aber nicht doch,

Die Auswahl der Primzahlen p&q aus einer Tabelle, die Berechnung von d&e, die Umwandlung der Nachricht Buchstaben für Buchstaben in ASII, deren codierung/decodierung

mithilfe e und d.

Und es reicht nicht, zu verschlüsseln, das Entschlüsseln ist bis zurück zur Nachricht in Buchstaben ein ebenso mühsamer Job.

Da mir als alter C- und HTML-Programmierer, fällt mir nicht schwer eine Android-App zu schreiben, die als Clien für SMS, WhatsApp, Outlook, Gmail, SKYPE fungiert,

eine richtige "Eierlegende Wollmilchsau", der Anwender muß sich einloggen, falls das Handy verloren geht, er legt einen Kontakt nur mit Namen und Telefonnummer, eMails,

SKYPE-eMail, der Anwender wählt aus einer Primzahlen-Tabelle p&q und e, bei Dateneingabe-Bestätigung, werden die "Secret Keys" und p*q ausgerechnet, der Kontakt kriegt

eine eMail mit den "Öffentlichen Keys", sowie der Telefonnummer, der SKYPE-eMail, die App erkennt beim Kontakt, daß es so eine Nachricht ist und identifiziert den Kontakt

anhand der eMail, falls es den Kontakt nicht gibt , wird er angelegt und die App trägt die Schlüssel beim Kontakt ein. Dieser Automatismus kann man in den Päferenzen abdrehen.

Übrigens habe ich diesen Beitrag in den drei Sprachen, die ich verstehe, Deutsch, Englisch, Französisch, Spanisch, angesehen, in jedem Artikel steht was anders, das ist in Wikipedia so,

sehr gut ist der englische, der aus dem Originalpapier der drei Mathematiker, wiedergibt, es war zu erst daran gedacht, den Decodierexponent aus d*e=(p-1)*(q-1) zu berechnen,

daraus, dann der Codierungsexponent e. Das ist die einzige Version des Artikels der mathematisch nach vollziehen lässt, sie enthält keine C-Programmierug,

ich würde diesen Artikel wortwörtlich unter Mitnahme der Gleichungen, übersetzen.

Darin wird auch die bekannte Geschichte von Alice und Bob erzählt, die kommt entweder von den Engländern Whitfield Diffie und Martin Hellman,

die ein Jahr vorher ein Verschlüsselung-System mit "Public Keys" Hellman  oder von den drei Entwickler.

Ich möchte gerne auf die mathematischen Grundlagen eingehen, den Sätzen von Euler und Fermat, Euler hat sein Satz auf Deutsch 1880 publiziert, aber nicht einmal unsere

Mathe-Fakultäten kriegen die Brücke zu Rivest, Shamir, Adleman geschlagen, einer hat in seiner Verzweiflung die Geschichte von Alice und Bob abgewandelt,

bei dem verschlüsselt Alice mit einem Exponent den ihr Bob vorgegeben hat, nach dessen "Secret Keys".

Euler ist zwar in St. Petersburg geboren und hat seinen Satz in Bern publiziert, aber ich habe gedanklich ihn für uns Deutschen "vereinnahmt",

das Deutsche Wikipedia hat sehr schöne Beiträge über Euler und dessen Satz, darauf kann man hier Bezug nehmen und ganz ohne Kongruenzen und Algebra geht der "Brückenschlag"

nicht, um darzustellen, wie Rives & Shamir, Adleman hatte nur zu einem geringen Teil zu der Entwicklung beigetragen, darauf kamen, daß ihre Lösung zu einem Verschlüsselung-

Algorythmus führt, der trotz "Public Keys" relativ unangreifbar ist, ich drücke mich hier als alter "Code Cracker" so vorsichtig aus, weil eine unangreifbare Verschlüsselungs-Methode, seit der

Vatikan nach Kolumbus

Entdeckungsreise die verschlüsselten Botschaften des Spanischen Königshaus  mitgelesen hat, das war äußerst brisant; denn die Spanier haben in Potosi, südwestlich der Hauptstadt

von Bolivien gewaltige Mengen Silber entdeckt, in Potosi wurde, in der Nähe von Potosi wurden die “Macuquinas” von 1575 - 1773 geprägt

(https://elpotosi.net/cultura/20160401_monedas-acunadas-en-potosi-y-la-ruta-que-tomaron-para-llegar-a-espana.html), wie hat der Vatikan die Botschaft des berühmten Karl V von

Deutschland und Carlos I von Spanien entschlüsselt, nun ja, die Spanische Krone verwendete die "monoalfabetische Substitution"

(https://de.wikipedia.org/wiki/Monoalphabetische_Substitution), d.h. jeder Buchstabe wird durch nur einen anderen ersetzt und durch Auszählen des Vorkommens der Buchstaben

läßt es sich schließen, welcher Buchstabe mit welchem ersetzt wurde, die Häufigkeit eines Buchstaben ist sprachabhängig, im Spanischen treten die Buchstaben A, O, E, S und R

am Häufigsten auf (https://www.abc.es/tecnologia/videojuegos/abci-letras-mas-probables-wordle-espanol-cada-posicion-202202111501_noticia.html), zum Entschlüsseln schreibt  man den

Geheimtext Buchstabe für Buchstabe, zählt sie durch die Anzahl schreibt man darunter und darüber den wahrscheinlichen Klartext-Buchstaben, die nicht entzifferten Buchstaben

kann man aus dem Kontext erraten, was dann übrig bleibt müssen unter den nicht zugewiesenen Buchstaben gesucht werden, Kryptologie kann in Kreuzworträtsel ausarten, daher

haben die Briten zur Entschlüsselung der deutschen ENIGMA-Nachrichten, Leute, die gut Kreuzworträtsel lösen konnten, in Blechley Park eingestellt.

, "monoalfabetische Substitution kommt häufiger vor, als man glauben mag, das berühmte Geheimdienstverfaren mit irgend einem Buch, in dem man die Buchstaben des Klartext gesucht

werden und durch gezählt, der wievielte es ist, dieser Buchstabe, die Zahl kommt in den Geheimtext,  RSA ist auch so ein "monoalfabetischer" Kandidat, von wegen mit riesigen

russischen in Assembler programmierten Rechner

den Decodierungexponent auszurechnen, na gut in Sibirien hat man genug Zeit und Strom dafür, aber die feine Rolex aus dem Internet-Versand ist mit dem "altvatikanischen" Verfahren

schneller am Handgelenk. --~~~~. --Lobito060454 (Diskussion) 19:25, 6. Apr. 2023 (CEST)Beantworten

Wie lautet der Änderungsvorschlag für den Artikel? --Matthäus Wander 21:04, 6. Apr. 2023 (CEST)Beantworten
Hallo Matthäus,
nicht so ungeduldig, lies erst einmal aufmerksam mein Post und die englische Version dieses Artikels, mach Dir aber keine Hoffnungen, ich werde beim Thema bleiben und nur auf den Einwand RSA sei unsicher weil buchstabenweise codiert wird, am Rande eingehen, Wikipedia ist kein "Programmierer-Forum", daher werden meinerseits hier keine "Code-Snipets" publiziert, ich bin in "Stackoverflow" und "Cuora" vertreten, wenn ich überhaupt irgendwo was über meine RSA-Android-App publizieren werden, dann da. ~~~~ --Lobito060454 (Diskussion) 09:54, 8. Apr. 2023 (CEST)Beantworten
Ich finde, es ist nicht zu viel verlangt, wenn man Aufmerksamkeit vom Leser fordert, erstmal die eigenen Gedanken zu sortieren, um verständlich zu formulieren: was ist die Kritik am Artikel und wie lautet der Verbesserungsvorschlag? Abschweifungen über Skype, das spanische Königshaus und die Enigma sind dazu nicht hilfreich. --Matthäus Wander 11:33, 8. Apr. 2023 (CEST)Beantworten

p,q und phi(N)

Bearbeiten

Die Zahlen p,q und phi(N) werden nicht mehr benötigt und können nach der Schlüsselerstellung gelöscht werden. Es ist jedoch relativ einfach, diese Werte aus e,d und N zu rekonstruieren. p,q und phi(N) müssen geheim gehalten werden.

Ab "Es ist jedoch ...." ist es sachlich falsch. Genau auf der "nicht-Einfachheit" beruht die Sicherheit des Verfahrens. Ich habe es daher gelöscht. https://de.wikipedia.org/w/index.php?title=RSA-Kryptosystem&diff=next&oldid=248115500

--Rat (Diskussion) 21:03, 10. Dez. 2024 (CET)Beantworten

(e,N) ist der öffentliche und (d,N) der private Schlüssel. Mit Kenntnis des öffentlichen und privaten Schlüssels bietet das Verfahren keine Sicherheitszusagen. Dass p, q, phi(N) und d geheim gehalten werden müssen, ist nicht sachlich falsch. --Matthäus Wander 20:05, 11. Dez. 2024 (CET)Beantworten
So ist es. Darum habe ich die Änderung von Rat zurückgenommen. --RokerHRO (Diskussion) 09:21, 12. Dez. 2024 (CET)Beantworten
Da hatte ich wohl etwas zu schnell gelesen, sorry. Wahrscheinlich, weil es auf den ersten (und zweiten) Blick abwegig erscheint, p, q und phi(N) berechnen zu wollen, wenn man bereits alle Informationen (insbesondere d) hat, die man aus p, q und phi(N) gewinnen könnte.
Für die Praxis ist interessant, dass man bei Kenntnis von p, q und phi(N) den Entschlüsselungsexponenten d aus e und N berechnen kann und deshalb diese drei Parameter am besten zu vernichten sind. Buchmann zeigt in seiner Einführung (4. Auflage, S141f), dass auch die Umkehrung gilt (aus d,e,N folgt p,q, phi(N)). Das ist eine mathematisch interessante Tatsache, hat aber nichts damit zu tun, dass man p, q und phi(N) nach der Schlüsselerzeugung wegwerfen oder geheimhalten sollte, wie man vielleicht durch das Wort "jedoch" annehmen könnte. Zumal danach noch einmal betont wird, dass p, q, phi(N) geheimzuhalten sind. Sollte man das "relativ einfache" Verfahren mit in den Artikel aufnehmen? Frohe Festtage allerseits! --Rat (Diskussion) 13:42, 24. Dez. 2024 (CET)Beantworten
  NODES
INTERN 1