SYNCING.NET ist ein sehr sicheres Peer-to-Peer-System. Nur Sie und die eingeladenen Teilnehmer haben Einsicht und Zugriff auf die Daten in Ihrem "Sync-Ordner" oder Ihrer "Outlook-Gruppe" . SYNCING.NET verschlüsselt alle Dateien und Nachrichten, die in einem Sync-Ordner bzw. in einer Outlook-Gruppe ausgetauscht werden, und schützt somit Ihre Daten und Ihre Privatsphäre im höchsten Maße. Die P2P-Kommunikation wird mittels RSA authentifiziert und zusätzlich durch AES verschlüsselt.
So funktionieren im Detail Authentifizierung und Verschlüsselung bei SYNCING.NET:
Am Anfang einer Übertragung signiert der sendende PC (Peer A) den Header eines speziellen Authentifizierungs-Datenpakets mit seinem privaten 1024-Bit-RSA-Schlüssel und verschlüsselt diesen schließlich mit dem öffentlichen Schlüssel des adressierten Empfängers. Das Datenpaket wird dann an den Kommunikationspartner – einen anderen Computer (Peer B) oder den Server – gesendet. Peer B kann den Header mit dem eigenen privaten RSA-Schlüssel entschlüsseln und mithilfe des öffentlichen Schlüssels von Peer A die Echtheit des signierten Headers überprüfen (z. B. auf evtl. Manipulationen während der Übertragung). Die öffentlichen Schlüssel befinden sich auf dem Server und können von allen Mitgliedern/Peers des selben Netzwerks abgerufen werden.
Nachdem überprüft wurde, dass die Verbindung tatsächlich von einem berechtigten Computer kommt (Nachrichten unbekannten Ursprungs werden einfach verworfen), sendet Peer B einen 256-Bit-AES-Sitzungsschlüssel an Peer A. Der Sitzungsschlüssel wird ebenfalls RSA-verschlüsselt übertragen, wobei der öffentliche Schlüssel von Peer A für die Verschlüsselung verwendet wird. Sollte zufällig ein unberechtigter Computer diese Daten abfangen wollen (eine sog. Man-in-the-middle-Attacke), kann dieser ohne den privaten Schlüssel des echten Empfängers die RSA-verschlüsselten Daten nicht entschlüsseln und damit an den Sitzungsschlüssel gelangen.
Dies ist deshalb wichtig, da alle Daten, die während der folgenden Sitzung zw. beiden Computern übertragen werden, mit diesem 256-Bit-AES-Sitzungsschlüssel ver- und entschlüsselt werden (eine sogenannte End-to-End-Verschlüsselung). Der Schlüssel ist nur bis zum Ende der jeweiligen Übertragungs-Sitzung gültig. Jede weitere Sitzung verwendet einen anderen Schlüssel, der wie oben beschrieben ausgehandelt wird.
Weder die Entwickler der Software noch andere Computer, die keine Mitglieder des jeweiligen Netzwerks sind, sind in der Lage die Daten zu entschlüsseln, da sie den geheimen Sitzungsschlüssel nicht kennen!
Der Grund für die Verwendung der Doppel-Verschlüsselung (AES + RSA) ist relativ einfach. Die symmetrische AES-Verschlüsselung und -Entschlüsselung ist schnell, so dass diese für die Sicherung des gesamten Datenverkehrs genutzt werden kann. Allerdings verwendet diese Verschlüsselungsmethode den gleichen (symmetrischen) Schlüssel, der beiden Kommunikationspartnern bekannt sein muss. Der RSA-Algorithmus basiert auf die Verwendung eines Schlüssel-Paares bestehend aus einem privaten und einem öffentlichen Schlüssel. Die 1024-Bit-RSA-Verschlüsselungsmethode gilt als sehr sicher, ist aber relativ langsam und erfordert eine schnelle CPU. SYNCING.NET verwendet sie deshalb nur für die Übertragung des AES-Sitzungsschlüssels sowie der eindeutigen Identifikationsnummer des jeweiligen Peers. Da diese Datenmenge sehr klein ist – 32 Byte für den AES-Sitzungsschlüssel (32 Bytes = 256 Bits) plus einige Bytes für die Peer-ID – erfolgt die RSA-Verschlüsselung und -Entschlüsselung trotzdem sehr schnell.