-
Notifications
You must be signed in to change notification settings - Fork 2
Description
Die große Problematik liegt darin, dass es nie Bestätigungen für Nachrichten geben kann, da Circuits nicht fütterbar sein können, andere werden probiert etc. Das Frage-Antwort-Spiel mit wechselnden Identifiern funktionier nur so lange, wie es auf jede Frage nur eine Antwort gibt. Verschickt allerdings A an B eine Nachricht und A muss nochmal eine Nachricht schicken (z.B. "ich hab alle Circuits verloren und hab lauter neue"), bevor B antworten kann, gibts ein echtes Problem. Welchen Identifier benutzt man? Dadurch, dass man mehrere Circuits parallel benutzt, und durch die Geschwindigkeitsunterschiede gibt es auch keine Garantie für die Reihenfolge. Hört man auf mehr als eine Nachricht von ein- und demselben Identifier, öffnet man Replay-Attacken Tür und Tor.
Eine Möglichkeit wäre, davon auszugehen, dass zwischen zwei Nachrichten Circuitänderungen maximal n mal vorkommen, und man schickt mit jeder Nachricht eine Liste an n zufälligen Identifiern, die benutzt werden können, um Änderungen an den Circuits zu kommunizieren. Ändern sich alle Circuits von einem Node, schickt er die Änderungsnachricht durch alle Circuits, in der Hoffnung, dass die andere Seite die Nachricht erhält.