Synchronisieren mit Bittorrent

Neuigkeiten aus der Technikecke. (okay, so neu ist es nicht und auf Twitter hatte ich es auch schon mal verlinkt, aber egal)

Da eine für das iPad angepasste Version gerade herausgekommen ist, habe ich mir gedacht, ich schreibe mal über BitTorrent Sync (im Folgenden BTSync).

Was macht es??

BTSync kann Dateien über verschiedene Geräte synchronisieren. Die Datenübertragung findet dabei über das BitTorrent-Protokoll statt.

Wie bei BitTorrent üblich werden die Dateien Peer-to-Peer übertragen. Das bedeutet, dass mindestens ein anderes Gerät mit den zu übertragenden Dateien online sein muss. Es gibt also nicht, wie bei zum Beispiel DropBox, einen zentralen Server, der die Dateien für eineN verteilt. Das klingt zwar wie ein Nachteil, hat aber den Vorteil, dass die Kontrolle über die Daten erstmal bei mir und nicht bei z.B. Dropbox liegt.

Wie bei Dropbox kann ich mit BTSync ganze Ordner, mit mir oder mit anderen, teilen.

Nun funktioniert BitTorrent ja eigentlich so, dass ich Dateien und/oder Ordner habe und von diesen eine Torrent-Datei erstelle und mit Hilfe dieser Datei andere sich die Dateien von mir runterladen können. Für sich ändernde Ordner würde das bedeuten, dass jedes Mal, wenn ich was ändere, eine neue Torrent-Datei erstellen müsste. Damit das aber nicht passieren muss, setzt BTSync auf Secrets

Es geht um Geheimnisse

Jeder Ordner der in BTSync hinzugefügt wird bekommt mindestens zwei Secrets. Damit eine andere Person sich meine Daten herunterladen und sich mit mir synchronisieren kann, muss ich der Person ein Secret schicken, eine über 30 Zeichen lange Zeichenkette. Wenn ich das Full Access Secret weitergebe, dann kann die andere Person alle Dateien runterladen und auch verändern. Wenn ich nur das Read Only Secret verschicke, dann können die Daten zwar runtergeladen werden, aber veränderte Daten nicht zurücksynchronisiert werden.

Zusätzlich gibt es dazu ein One-Time Secret, welches nur für 24 Stunden gültig ist. Diese kann wiederum auch full access oder read only sein.

Jeder Ordner kommt dabei mit ein paar weiteren Optionen daher, zum Beispiel: soll ein Tracker-Server zum Auffinden von Peers benutzt werden??, soll im lokalen Netzwerk nach Peers gesucht werden oder sollen gelöschte Dateien im Sync-Archiv vorgehalten werden, damit sie nicht aus Versehen gelöscht werden??

Eine wichtige Entscheidung ist, ob ein Relay-Server benutzt werden soll, wenn eine Verbindung über BitTorrent nicht möglich ist. Die Idee ist dabei: Wenn ich mit meinem Computer in einem Netz, wie dem der Uni-Marburg, bin in dem BitTorrent Datenverkehr rausgefiltert wird, würde BTSync nicht funktionieren. In diesem Fall würden die Daten über einen Server des Unternehmens BitTorrent übertragen werden. In wieweit die Daten vor der Übertragung verschlüsselt werden kann ich nicht sagen, ich kann also auch nicht sagen, ob das Unternehmen BitTorrent dann nicht unter Umständen diese Daten mitlesen und speichern könnte. Ich persönlich wähle die Option immer ab.

Daten auch mobil

Was mir ein wenig gefehlt hat war die Möglichkeit Dateien, die in einem der geteilten Ordner liegen, auf dem iPhone oder iPad zu öffnen. Und siehe da, mit der iOS App ist die erste BitTorrent App im App Store erschienen, die nicht gleich wieder von Apple rausgeworfen wurde. Apple hat damit das Protokoll BitTorrent zumindest implizit als legitime Übertragungsmöglichkeit anerkannt.

Damit lässt sich also auch von unterwegs auf alle Dateien in den geteilten Ordnern zugreifen. Damit aber nicht immer alle Dateien, sondern nur die übertragen werden, die ich wirklich öffnen will, ist per Default die automatische Synchronisation ausgestellt und ich muss die Dateien die ich haben will anwählen. Dieses Verhalten lässt sich aber für jeden Ordner ändern.

Das ist aber auch die einzige Einstellungsmöglichkeit. Das bedeutet auch, dass sich die Option, Dateien eines Ordners möglicherweise über einen Server des Unternehmens BitTorrent zu übertragen, nicht ausschalten lässt.

Für die gesamte App lassen sich noch ein paar Einstellungen machen, wie zum Beispiel, ob über das mobile Datennetz oder nur im wLAN die Daten übertragen werden sollen.

Lange secrets sind lang

Wie bereits erwähnt sind die secrets ziemlich lang. Es wäre ziemlich umständlich diese langen secrets immer auf das Smart-Device abzutippen, wenn ein neuer Ordner hinzugefügt werden soll. Aber für das Problem gibt es eine Lösung: QR-Codes.

Ja, richtig gelesenes gibt tatsächlich einen Anwedungsfall für QR-Codes!!

So lassen sich die secret schnell von einem auf das andere Gerät übertragen.

Fazit

Für die, die keine Lust auf zentralisierte kommerzielle Syncservices wie Dropbox oder auf das aufwendige Installieren von Owncloud haben ist BitTorrent Sync eine gute Alternative. Leider ist es soweit ich sehen kann nicht Open Source und hat noch einige unschöne Ecken. Aber das kann ja noch werden