drasyl: Sichere Transport Middleware für die vertrauliche Kommunikation von P2P-Anwendungen im Internet

28. February 2021


Das SANE-Netz ist darauf angewiesen, dass die einzelnen SANE-Knoten (stellvertretend für ihre Besitzer) auf einen verlässlichen, sicheren und möglichst direkten Kanal miteinander kommunizieren können. Obwohl alle SANE-Knoten mit dem Internet verbunden sind, ist eine direkte Kommunikation zwischen den Knoten nicht immer gegeben bzw. mit einigen Hindernissen verbunden: Bei einer Entwicklung eines dezentrales Netzwerkes – wie dem SANE-Netz – ist es notwendig, diese Hindernisse zu berücksichtigen und durch entsprechende Maßnahmen zu umgehen. All dies erfordert verschiedene Software-Routinen, welche die Entwicklung des SANE-Prototypen erschweren.

Daher entstand schon früh die Idee, diese Komplextität in eine separate Middleware zu kapseln. Diese Middleware soll dabei unter dem SANE-Netz angesiedelt sein. Während die Transport-Middleware sich um die Discovery und das Routing von anderen (SANE-)Knoten kümmert, kann sich das SANE-Netz auf die Konstruktion eines Smart-City-Datenraums fokussieren. In einer Lehrveranstaltung von vor zwei Jahren wurden, zusammen mit zwei Studenten (ein besonderer Dank gilt Kevin!), die Grundsteine für eine Transport-Middleware konzipiert sowie prototypisch implementiert. Seitdem wurde diese Middleware stetig erweitert und verbessert.

Das Ergebnis ist drasyl, eine sichere und verteilte Transport-Middleware für das Internet. Dabei konstruiert drasyl ein Overlay-Netzwerk, welches das Routing von Nachrichten zu anderen Knoten übernimmt. Im Gegensatz zu bestehenden Ansätzen müssen sich die Knoten im Overlay-Netzwerk von drasyl nicht zwingend vertrauen. Diese Eigenschaft ist sehr wichtig für SANE, da ein stadtweites Netzwerk aus Bürgern konstruiert werden soll und hierbei gegenseitiges Vertrauen nicht immer gegeben ist. Darüber hinaus unternimmt drasyl verschiedene Maßnahmen, um die Kommunikation zwischen Knoten sowie die bloße Existenz von Knoten im Overlay vor Dritten zu verbergen. Beides ist aus Sicht der Privatsphäre der Bürger wichtig, da sich bereits aus Kommunikationsmetadaten weitreichende Benutzerprofile anfertigen lassen.

drasyl ist dabei nicht auf das SANE-Einsatzszenario beschränkt, sondern lässt sich einfach in andere P2P-Anwendungen einbinden und erweitern. Die gesamte Implementation haben wir auf GitHub unter der MIT-Lizenz als Open-Source-Projekt veröffentlicht.