Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#7

Re: Brauche Hilfe dringend... Verschlüsselungsproggi mit RSA

  Alt 20. Apr 2006, 23:03
Du verchlüsselst "packete" mit RSA, das ist grundsätzlich falsch.

Mit RSA sollte man niemals eine Nachricht verschlüsseln, sondern nur ein Zufallsschlüssel. Dieser Schlüssel ist wie gesagt zufälig, ca. 128 Bit groß und dient als Schlüssel einer asymmetrischen Verschlüsselung der Nachricht.

Dies nennt sich Hybride, denn man benutzt aus beiden Welten -> symmetrische und asymmetrische Verschlüsselungen eine Kombiation aus beiden.

Das hat gleich mehrere Vorteile und erhöht auch noch die Sicherheit:

1.) asymmetrisches RSA ermöglicht es einen sicheren Schlüsselaustausch durchzuführen
2.) es wird ein zufälliger und großer Sessionkey intern benutzt -> ca. 128 Bit groß und zufällig. Das
ist besser als die meisten menschlichen Passwörter.
3.) zur Verschlüsselung der Nachricht wird nun ein sym. Verfahren wie AES Rijndael/Blowfish etc.pp. benutzt. Diese sind sicherer als asym. Verfahren im Besonderen bei speziellen Angriffen.
4.) RSA ist sehr empfindlich gegen Angriffe die auf bekannten Nachrichten-inhalten beruhen. Wenn du also mit RSA eine Nachricht verschlüsselt die entweder einen festen, immer wiederkehrenden Header enthält oder mit dem gleichen RSA verschiedene bekannte Nachtichten oder ein und die selbe Nachricht mit verschiedenen RSA Schlüsseln verschlüsselst, so sind in all diesen Fällen spezielle Angriffe möglich die zum Teil sogar den privaten Schlüssel restaurieren oder zumindestens simulieren können.

Man sollte mit RSA selber nur Zufallsdaten verschlüsseln.

Du benutzt die Primzahlen 5*7 um das public Modul N = 5*7 = 35 zu erzeugen. 35 ist ca. 2^5 ~32. Das bedeutet 5 Bits groß ist 35. Wenn du eine Nachticht damit direkt verschlüsseln möchtest so musst du sie also in Blöcke zerlegen die jeweils 5 Bit groß sind. Nur dann geht das auch wieder zu entschlüsseln. Aber wie ich oben schon andeutete solltest du einen zufälligen Sessionley benutzten. Der kann und darf dann natürlich nicht, bei 128 Bit Größe, ind 5 Bit Blöcke zerlegt werden und mit 5*7 RSA verschlüsselt werden. Das macht nämlich keinen sinn da die effektive Sicherheit maximal nur 5 Bit ist (was eher sehr optimistisch ist).

Nein. Damit RSA sicher ist musst du mit Primzahlen arbeiten die ca. 512 Bit große Zahlen darstellen, dh. die primzahlen sollten im Bereich > 2^512 liegen. Das ergäbe dann ein public Modul N mit 1024 Bit Größe, also ein Zahl um ca. 2^1024. Mit so einem RSA kann man auch mit nur einer einzigsten RSA Operation bis zu 1024 Bit an Daten verschlüsseln.


Gruß Hagen
  Mit Zitat antworten Zitat