RShare FAQ (English)
From Planet Peer Wiki
RShare FAQ
Please note that the english FAQ is brand new and most of the content in German language is missing at the time being, but it will be added asap.
--Markus 21:48, 10 August 2006 (CEST)
Is RShare really anonymous and secure? How does it work?
[...translation follows...]
Zum einem gibt es Verbindungen, Verbindungen bestehen zwischen jedem Mitglied im Netzwerk (RShare Clients, RShare
PeerCaches, eventuell auch angepassten RShare Clients). Diese Verbindungen sind mit AES (128 Bit, 192 Bit oder 256
Bit Verschlüsselungsstärke) verschlüsselt. Als erstes sendet bei dem Verbindungsaufbau der "Angerufene" seinen RSA
Public Key. Der "Anrufer" erzeugt nach seinen Vorgaben einen AES Key und verschlüsselt ihn mit dem bekannten RSA
Public Key des "Angerufenen". Der "Angerufene" entschlüsselt den AES Key mit seinem RSA Private Key und die
Verbindung ist hergestellt. Von nun an läuft alles AES verschlüsselt über die Leitung.
Dann gibt es das Netzwerkprotokoll. Die einzelnen Kommandos des Netzwerkprotokolls sind alle gleich aufgebaut:
Erstes Byte 0x52 ASCII-Code für 'R' (in Anlehnung für RShare), dann folgenden zwei Bytes, welche die Länge des
gesamten Kommandos angeben, anschließend ein Byte, welches den Typ des Kommandos angibt (Peer Details, Suche,
Download). Zum Schluss werden dann die eigentlichen Nutzdaten AES verschlüsselt abgelegt.
Jedes Mitglied im Netzwerk, das etwas senden oder Empfangen will, ist ein Peer. Jeder Peer hat einen SHA-384-Hash
als ID.
Daher erfolgt die Übertragung des Downloads über ID zu ID.
Bevor jetzt aber ein Download gestartet werden kann muss der jenige, der den Download haben möchte die Anforderung
dazu senden. Und dies machen sich alle Mitglieder des Netzwerks zu nutze, in dem sie sich "merken" von wo die
Anforderung herkam. Schickt nun der Peer, der die Datei hat, den ersten Sektor (63 KiBytes = 64512 Bytes) los,
wissen alle beteiligten Mitglieder des Netzwerks, wohin sie das Kommando weiterleiten müssen.
Sobald ein Mitglied des Netzwerks unterwegs ausfallen sollte, leitet das Mitglied, welches das letzte noch
funktionierende Wegstück kennt, das Kommando über alle Verbindungen, bis auf die, von der es herkam, weiter und
vielleicht finden sich die Peers anschließend über eine neue Route.
Dennoch kann jedes Mitglied des Netzwerks die empfangenen Kommandos unverschlüsselt lesen. Dies machen sich die
Peers zu nutze um weitere Downloadquellen, Kommentare zu Dateien, Peer Details oder andere Daten zu ergänzen.
Ein Download hat als ID seinen SHA-512-Hash und die einzelnen Sektoren des Downloads werden mit einem SHA-256-Hash
auf Fehler während der Übertragung getestet.
Ich hoffe ihr habt verstanden was ich meine.
Im Moment, brechen die Verbindungen ab und zu häufiger ab, aber das liegt an dem noch unfertigen Watchdog. Die
Routenfindung ist auch manchmal noch sehrlapidar. Aber niemand, sofern ich keine riesige Sicherheitslücke eingebaut
habe, kann die Daten von außen lesen. Wenn alles so funktioniert, wie ich es geplant habe, ist das Rshare Netzwerk
vom Rest des Internets abgeschirmt.
Daher die Übertragung ist verschlüsselt und durch die Routen ist Rshare anonym.
RShare starts and quits after a couple of seconds immediately. What´s wrong here?
[...translation follows...]
Wenn RShare nicht mehr startet kann man folgendes versuchen:
- RShare deinstallieren
- C:\Programme\Regensburger\RShare\preferences löschen
- C:\Dokumente und Einstellungen\__Benutzername__\Lokale
Einstellungen\Anwendungsdaten\Regensburger\RShare.exe_StrongName_kvqecwukk2r5ior11pbqxxh3g30kcj0n löschen
- RShare neu installieren
==Was will mir die Fehlermeldung "Schlüssel ist im angegebenen Status nicht gültig" sagen und wie kann ich sie
beseitigen?==
In der Klasse Regensburger.RShare.Command11 ist das Kommando 0x11 definiert, dies überträgt normalerweiße den RSA
verschlüsselten AES-Key, wenn dies fehlschlägt kann die Verbindung nicht aufgebaut werden, da sie dann nicht
verschlüsselt wäre.
Abhilfe:
- RShare beenden
- C:\Regensburger\Programme\RShare\preferences\privatekeys.bin löschen
- RShare starten
Why can´t I connect to the RShare network although RShare is up and running since a few minutes?
There are several reasons. The most frequently are
- If you are behind a router/firewall make sure that port 6097 (RShare default TCP port) is forwarded to your host running RShare
- You are the only active node actually
- You do not have the latest version of RShare (there are changes in the network protocol between RShare PR3 and PR4)
Why does RShare not quit immediately when I close the program?
That is because RShare does have to write back some data (preferences, for instance). So it might be a good idea to be patient and wait until RShare finishes smoothly.

