Links für alle, die kein Konto haben
Manchmal hat das Gegenüber kein Konto. Die Download- und Upload-Links von Sapherbox bleiben trotzdem Ende-zu-Ende-verschlüsselt. Der Schlüssel steht in der URL, der Server sieht ihn nie.
Auf einer Dokumentenplattform teilen meist Personen miteinander, die beide ein Konto haben. Schlüssel werden für Identitäten versiegelt, Freigaben werden signiert, und an beiden Enden gibt es jemanden, der ein Geheimnis verwahren kann. Dann bittet ein Mandant darum, ihm „einfach den Vertrag zu schicken“. Oder ein Geschäftspartner möchte Ihnen einen Ordner voller Scans zukommen lassen. Registrieren wird sich dafür keiner von beiden.
Für solche Fälle hat jede Plattform Links. Meist ist ein Link ein sogenanntes Bearer-Token. Wer die URL hat, fordert die Datei beim Server an. Der Server besitzt den Klartext oder den Schlüssel und gibt die Datei heraus. Das ist bequem. Es ist aber auch das Ende der Ende-zu-Ende-Verschlüsselung, denn der Server muss die Datei jetzt lesen können, um sie auszuliefern. Ein einziger Link, und schon hat das ganze Konzept eine Ausnahme.
Auch Sapherbox bietet Download-Links und Upload-Links. Dieser Artikel zeigt, wie sie ohne diese Ausnahme auskommen, was jeder der beiden Typen leistet und wo die Grenzen liegen.
Der Schlüssel steht in der URL, hinter der Raute
Ein Download-Link von Sapherbox sieht aus wie jeder andere Link. Erst am Ende folgt auf eine Raute eine Reihe zufälliger Zeichen. Alles hinter der Raute ist der Link-Schlüssel. Für die Person, die den Link nutzt, gehört der Schlüssel einfach zur URL. Sie kopiert den Link, fügt ihn ein, klickt darauf, und es funktioniert. Für den Server gehört er nicht dazu, denn Browser schicken das Fragment einer URL nicht mit der Anfrage mit. Der Server erhält den Pfad mit dem Token, das den Link kennzeichnet. Den Schlüssel erhält er nie.
Genau diese Eigenschaft von Browsern macht das Konzept möglich. Der Browser des Absenders erzeugt den Link-Schlüssel und verpackt damit die Dateischlüssel. Auf dem Server legt er nur die verpackten Schlüssel ab. Der Browser des Empfängers liest den Schlüssel aus dem Fragment. Er holt die verpackten Dateischlüssel und das Chiffrat vom Server, entpackt die Schlüssel und entschlüsselt die Datei lokal. Dazwischen hat der Server nur Bytes gespeichert und ausgeliefert, die er nicht lesen konnte. Für eine Datei, die jemand über einen Link erreicht, gilt also dasselbe wie für jede Datei im Vault. Im Klartext existiert sie nur in einem Browser.
Der Preis dafür ist, dass der Link selbst der Schlüssel ist. Darauf weisen wir beim Erstellen hin. Die URL mit dem Schlüssel wird ein einziges Mal angezeigt. Geht sie verloren, erstellen Sie einen neuen Link. Eine Funktion „Link erneut senden“ kann der Server nicht anbieten, denn ihm fehlt genau der Teil, auf den es ankommt.

Download-Links
Ein Download-Link gehört zu einem Ordner. Beim Erstellen geht Ihr Browser alle Dateien durch, die gerade in diesem Ordner liegen. Er entpackt jeden Dateischlüssel mit Ihrem privaten Schlüssel und verpackt ihn neu mit dem frisch erzeugten Link-Schlüssel. Diese neu verpackten Schlüssel gehen zusammen mit den Einstellungen des Links an den Server. Der Server speichert sie beim Link, öffnen kann er sie nicht.
Wer den Link öffnet, sieht die Liste der Dateien. Die Namen entschlüsselt dabei der Browser dieser Person. Dann lädt die Person herunter, was sie braucht. Jeder Download holt das Chiffrat und entschlüsselt es lokal, große Dateien Stück für Stück. So muss ein Scan mit mehreren Gigabyte nicht komplett im Arbeitsspeicher liegen. Ist im Tenant die Inhaltsbereinigung aktiviert, läuft dieselbe Bereinigung wie beim Hochladen auch beim Herunterladen. Sie läuft im Browser des Empfängers, bevor die Datei gespeichert wird.

Zwei Einstellungen bestimmen den Link. Die erste ist ein Ablaufdatum, nach dem der Server auf den Link nicht mehr antwortet. Die zweite ist ein Download-Limit. Der Server zählt sie und setzt die Grenze atomar durch. Wollen zwei Personen gleichzeitig den letzten Download, bekommt ihn nur eine. Beide Einstellungen sind optional. Ein Link ohne sie bleibt offen, bis Sie ihn löschen.
Wenn Sie einen Link löschen, geschieht genau das, was Sie erwarten. Das Token funktioniert nicht mehr, und die dazu gespeicherten verpackten Schlüssel werden entfernt. Wer die URL aufgehoben hat, besitzt dann einen Schlüssel zu Boxen, die es nicht mehr gibt. Die Dateien selbst bleiben unberührt. Der Link enthielt immer nur Kopien ihrer Schlüssel, nie die Dateien.
Der Link ist eine Momentaufnahme des Ordners zum Zeitpunkt seiner Erstellung. Eine Datei, die Sie später hinzufügen, ist nicht enthalten, denn ihr Schlüssel wurde für diesen Link nie verpackt. Das ist kein Versehen, sondern Absicht. Ein Link kann nicht nachträglich wachsen und Dateien umfassen, die Sie nie über ihn teilen wollten.
Upload-Links
Ein Upload-Link funktioniert in die andere Richtung. Über ihn kann jemand ohne Konto Dateien in einen Ihrer Ordner legen. Dabei ist ein anderes Problem zu lösen. Die hochladende Person hat keine Identität, für die man Schlüssel versiegeln könnte. Und Sie sollten nicht dabei sein müssen, damit der Upload sicher ist.
Hier übernimmt das Schlüsselpaar des Ordners die Arbeit. Jeder Ordner in Sapherbox hat ein eigenes Schlüsselpaar, hybrid aus klassischem und Post-Quanten-Verfahren. Darauf beruht schon das gewöhnliche Teilen eines Ordners mit einer Person oder Gruppe. Die Upload-Seite holt die öffentlichen Schlüssel des Ordners vom Server. Der Browser der hochladenden Person erzeugt einen neuen Schlüssel für die Datei. Mit diesem Schlüssel verschlüsselt er die Datei sowie Dateinamen und Dateityp. Den Dateischlüssel versiegelt er für die öffentlichen Schlüssel des Ordners. Dann lädt er das Chiffrat und den versiegelten Schlüssel hoch.
Das Ergebnis sieht genauso aus wie bei einer Datei, die ein Mitglied in einen geteilten Ordner legt. Es gibt einen versiegelten Schlüssel, den jeder lesen kann, der den Ordner öffnen kann. Das sind Sie und alle, mit denen Sie den Ordner geteilt haben, sonst niemand. Die hochladende Person kann die Datei nach dem Hochladen selbst nicht mehr lesen, denn den privaten Schlüssel des Ordners hatte sie nie. Sie hatte den Klartext, und der gehörte ohnehin ihr.
Auch hier läuft die Inhaltsbereinigung, und zwar vor der Verschlüsselung im Browser der hochladenden Person. Die Einstellungen des Tenants bringt der Link mit. Über einen Upload-Link schicken Ihnen typischerweise Unbekannte ein Dokument. Gerade dann sollen Makros und eingebettete Objekte verschwinden. Der Upload löst außerdem Ihre Workflows aus. Ein Ordner mit Upload-Link kann eine Regel bekommen, die Sie benachrichtigt, und das Audit-Log vermerkt, dass eine Datei über den Link eingegangen ist.
Upload-Links kennen dieselben zwei Einstellungen, ein Ablaufdatum und ein Upload-Limit. Im Fragment eines Upload-Links steht kein Schlüssel, denn die hochladende Person muss nichts entschlüsseln. Die öffentlichen Schlüssel, die sie braucht, sind eben öffentlich.

Was der Server sieht
Zu einer ehrlichen Beschreibung von Links gehört die Sicht des Servers. Das gilt bei Sapherbox für alles andere genauso.
Bei einem Download-Link weiß der Server, dass es an einem Ordner einen Link gibt. Er kennt die Person, die ihn erstellt hat, und das Ablaufdatum. Er weiß, wie viele Downloads erlaubt sind und wie viele schon stattgefunden haben. Außerdem kennt er die Liste der enthaltenen Dateien mit ihren verpackten Schlüsseln. Wird der Link genutzt, schreibt der Server ein anonymes Audit-Ereignis. Darin steht, dass der Link aufgerufen und eine Datei heruntergeladen wurde. Wer das war, steht nicht darin, denn der Server weiß es nicht. Eine IP-Adresse speichert er bei anonymen Ereignissen nie, ganz gleich, wie der Tenant die IP-Protokollierung eingestellt hat.
Bei einem Upload-Link sieht der Server zusätzlich das hochgeladene Chiffrat und seine Größe. Für den Audit-Eintrag erhält er eine maskierte Form des Dateinamens, wie bei jedem anderen Upload. Name, Typ und Inhalt bleiben versiegelt.
In keinem der beiden Fälle sieht der Server den Link-Schlüssel, die Dateischlüssel, die Dateinamen im Klartext oder den Inhalt.
Was Links nicht leisten
Ein Link funktioniert wie ein Inhaberpapier. Wer ihn besitzt, kann ihn einlösen. Das Konzept macht keinen Hehl daraus, was das bedeutet.
Jede Person mit der vollständigen URL eines Download-Links kann ihn nutzen, im Rahmen der Grenzen, die Sie gesetzt haben. Der Link weiß nicht, wer ihn gerade in der Hand hat. Leitet ein Empfänger ihn weiter, funktioniert auch die weitergeleitete Kopie. Ablaufdatum und Download-Limit begrenzen das, und das Löschen beendet den Link. Eine Identitätsprüfung gibt es nicht, weil es keine Identität gibt.
Das Fragment geht nicht an den Server. Es steht aber im Browserverlauf des Empfängers, in der Chatnachricht, in die Sie den Link eingefügt haben, und in der E-Mail, mit der er weitergeleitet wurde. Behandeln Sie die URL als das Geheimnis, das sie ist. Verschicken Sie sie nur über einen Kanal, dem Sie auch die Datei selbst anvertrauen würden, und setzen Sie ein Ablaufdatum.
Dateien, die über einen Upload-Link eingehen, landen erst in Ihrem Suchindex, wenn Sie sie öffnen. Suchtokens werden mit einem Schlüssel berechnet, den nur Sie besitzen, und die anonyme hochladende Person hat ihn nicht. Die Datei ist vorhanden, verschlüsselt und für Sie lesbar. Über ihren Inhalt finden Sie sie aber erst, nachdem Sie sie einmal angesehen haben.
Und ein Link öffnet nichts außer dem, wofür er erstellt wurde. Ein Download-Link umfasst die Dateien, die beim Erstellen im Ordner lagen. Ein Upload-Link legt Dateien in genau einen Ordner. Keiner von beiden reicht in den übrigen Vault, und keiner lässt sich zu einem Konto aufwerten.
Welcher Link wann
Nehmen Sie einen Download-Link, wenn Ihr Gegenüber etwas erhalten soll und kein Konto hat. Das kann ein unterschriebener Vertrag für einen Mandanten sein, ein Bericht für einen Prüfer oder ein Ordner mit Arbeitsergebnissen. Wählen Sie ein Ablaufdatum, das zum Anlass passt, und ein Download-Limit, wenn eine einzige Kopie genügt.
Nehmen Sie einen Upload-Link, wenn Ihr Gegenüber etwas schicken soll. Das können Scans eines Mandanten sein, Unterlagen für eine Due-Diligence-Prüfung oder Einreichungen zu einer Ausschreibung. Kombinieren Sie den Link mit der Inhaltsbereinigung und einem Workflow, der Sie benachrichtigt. Dann wird der Ordner zum Briefkasten, der alles Eingehende bereinigt und Ihnen Bescheid gibt.
Und wenn Ihr Gegenüber länger als für einen einzelnen Austausch dabei ist, laden Sie die Person lieber ein. Ein Gastkonto kostet sie eine Minute. Danach ist jede Freigabe für eine Person versiegelt, statt in einer URL zu stecken.
Fragen?
Sie möchten wissen, wie Links zu einem bestimmten Austausch mit Mandanten oder Geschäftspartnern passen? Oder Ihr Sicherheitsteam möchte den Umgang mit den Schlüsseln genau beschrieben haben? Schreiben Sie uns an hello@sapherbox.com.