Spotlight: Jelly Reader. Nachrichten folgen, ohne verfolgt zu werden
Wie Jelly Reader deine Feeds abruft, ohne dass unser Server je erfährt, wer gefragt hat.
Das jellysuite-Team · · 5 Min. Lesezeit
Was du liest, verrät viel über dich, und wie du es liest, genauso. Vielleicht sogar mehr als deine Mails. Zwanzig Blogs, ein paar Zeitungen, einige YouTube-Kanäle und drei Newsletter reichen, um ziemlich gut zu raten, was du beruflich machst, wie du politisch tickst, welche Gesundheitssorgen du hast und wo du wohnst. Aus dem, was du liest, lässt sich ganz leicht ein Profil bauen, das ohne dein Wissen genutzt und verkauft werden kann.
Feedreader funktionieren seit jeher auf eine von zwei Arten. Entweder ruft dein Gerät jeden Feed selbst ab, und jede Seite, der du folgst, sieht ein paar Mal am Tag deine IP-Adresse. Oder ein Server holt sie für dich und speichert deine Feedliste an einem zentralen Ort, verknüpft mit deinem Konto und mit dem Risiko, dass sie ausgewertet, verkauft oder herausgegeben wird. Beides wollten wir für jellysuite nicht, also geht Jelly Reader einen kreativeren, dritten Weg.
Das ist der erste Beitrag einer Reihe, in der ich mir jede App einzeln vornehme und zeige, was sie kann und was unter der Haube passiert. Reader macht den Anfang, weil er die überraschendste Geschichte hat.
Was Reader kann
- Feeds und YouTube. Füg die Adresse einer Seite oder eines YouTube-Kanals ein, und Reader findet den Feed. Mastodon, Bluesky, Reddit, GitHub, Substack und alles andere, was einen Feed hat, funktioniert genauso. Du kommst von einem anderen Reader? Importier einfach deine OPML-Datei.
- Leseansicht. Artikel öffnen sich aufgeräumt: der Text, die Bilder und wer ihn geschrieben hat, ohne Werbung und Skripte. Lässt sich eine Seite nicht aufräumen, öffnet sie sich auf ihrer eigenen Website, und für einzelne Feeds kannst du das auch immer so einstellen.
- Lesezeichen. Speicher Links aus jedem Tab mit dem „Save to jellysuite"-Link in deiner Lesezeichenleiste, schreib eine Notiz dazu und behalt auf Wunsch eine lesbare Kopie. Die Kopie enthält die Bilder des Artikels, damit sie auch dann noch funktioniert, wenn die Seite verschwindet.
- Newsletter. Mach einen deiner Mail-Aliase zu deinem Newsletter-Alias und meld dich damit an. Die Mails landen dann in Reader neben deinen Feeds statt in deinem Posteingang.
- Team-Ordner. Teil einen Ordner mit Feeds und Lesezeichen mit deinem Team. Was du gelesen hast, bleibt für alle anderen neu, und du entscheidest selbst, welchen geteilten Ordnern du folgst.
Reader ist in jedem Tarif enthalten, im Web und in den Apps für Mac, Linux und iPhone.
Wie wir deine Feeds abrufen, ohne zu wissen, dass du es bist
Die Regel, die wir uns für Reader gesetzt haben: Unser Server darf wissen, dass ein Feed abgerufen wird, aber nie, für wen.
Stell dir unseren Fetcher-Dienst wie einen Mixer vor. Oben kommen die Anfragen von allen rein: deine, die deiner Kollegin und die von Tausenden Leuten, die du nie treffen wirst. Unten kommen die Feeds und Artikel raus. Was nicht rauskommt, ist irgendein Hinweis darauf, wessen Anfrage welche war, denn den bekommt der Fetcher gar nicht erst. Er sieht „jemand will diesen Feed", gibt ihn zurück, und mehr weiß er nie.
Damit so ein Mixer funktioniert, darf an deiner Anfrage auf dem Weg hinein nichts kleben bleiben. Deshalb ist unser Fetcher ein eigener kleiner Dienst, getrennt von allem anderen, was wir betreiben. Er kann nicht in unsere Kontenliste schauen, bekommt keine Cookies und keine Anmeldung, und unser Webserver entfernt deine IP-Adresse von jeder Anfrage, bevor er sie weiterreicht. Er schreibt auch nicht mit, wer vorbeigekommen ist.
Tickets, mit geschlossenen Augen gestempelt
Einen Haken gibt es. Wenn der Fetcher nicht weiß, wer du bist, woher weiß er dann, dass du jellysuite nutzt und nicht irgendwer, der ihn gratis mitbenutzt?
Die Antwort ist ein Ticket. Während du angemeldet bist, holt sich deine App einen Stapel Tickets bei uns ab und gibt für jeden Feed, den sie abruft, eins davon ab. Ein Ticket sagt „diese Person hat ein Konto" und sonst nichts. Und jetzt der Clou: Deine App steckt jedes Ticket in einen verschlossenen Umschlag, bevor wir es stempeln, und wir stempeln durch den Umschlag hindurch, ohne das Ticket je zu sehen. Danach öffnet deine App den Umschlag, und der Stempel ist auf dem Ticket.
Wir wissen also, dass wir dir heute Morgen hundert Tickets gestempelt haben. Aber wenn später ein Ticket beim Fetcher auftaucht, haben wir es noch nie gesehen, und niemand kann sagen, dass es von dir kommt. Jedes Ticket gilt genau einmal. Außerdem prüft deine App, dass ihre Tickets mit demselben Stempel gestempelt wurden wie die aller anderen, damit wir dir nicht heimlich einen eigenen Stempel geben können, an dem wir dich wiedererkennen.
In der Menge verschwinden
Ein Mixer versteckt dich nur, wenn du aussiehst wie alle anderen. Ein paar Kleinigkeiten sorgen dafür:
- Ein Feed nach dem anderen. Deine App fragt jeden Feed einzeln an, jeweils mit einem neuen Ticket, in zufälliger Reihenfolge und mit kurzen zufälligen Pausen dazwischen. Deine Feedliste ist genau der Fingerabdruck, den wir verstecken wollen, also ist sie nie am Stück unterwegs.
- Ein gemeinsamer Cache. Wenn Tausende derselben Zeitung folgen, holt der Fetcher sie einmal und gibt allen dieselbe Kopie. Deine Anfrage nach einem beliebten Feed ist eine von vielen gleichen. (Das schont nebenbei auch die Websites, die die Feeds veröffentlichen.)
- Auch Bilder. Bilder aus Feeds und Artikeln kommen ebenfalls über den Fetcher, damit auch die Seiten, die du liest, deine IP-Adresse nicht sehen. YouTube-Videos laden erst, wenn du auf Play drückst. Ab dann sieht YouTube deine IP-Adresse, wie bei jedem Video im Netz.
Warum das so wichtig ist
Die meisten Datenschutzversprechen drehen sich darum, dein Zeug zu schützen. "Wir haben deine Daten, aber wir passen gut darauf auf". Bei Reader gibt es keine Daten, die man schützen müsste. Nirgends auf unseren Servern steht „diese Person liest diese Feeds". Es gibt also nichts, was bei einem Datenleck rausgehen, verkauft oder herausgegeben werden könnte, wenn jemand danach fragt. Selbst wenn wir wollten, könnten wir kein Profil davon erstellen, was du liest. Und deshalb musst du uns auch nicht vertrauen, dass wir gut auf deine Daten aufpassen. Wir hatten sie nie.
Alles, was du in Reader selbst aufbewahrst, also deine Feeds, Ordner, Lesezeichen, und was du gelesen hast, wird auf deinem Gerät verschlüsselt, bevor es bei uns ankommt, wie alles andere in jellysuite. Wir sind da ziemlich weit gegangen: Sogar das Datum, an dem ein Artikel erschienen ist, ist weggeschlossen, denn schon eine Liste von Datumsangaben kann reichen, um herauszufinden, aus welchem Blog er stammt.
Was wir trotzdem sehen
Ganz transparent: Ein paar Metadaten bleiben übrig, die wir sehen können (oder sogar müssen). Aber es ist wirklich wenig. Das bleibt übrig:
- Welche Feeds und Artikel abgerufen werden und wie beliebt sie sind. Aber nicht, von wem.
- Wie viele Tickets du pro Tag abholst. Nicht, wofür du sie ausgibst.
- Wie viel du speicherst und wann. Deine gespeicherten Einträge sind verschlossen, aber wir sehen, wie groß sie sind und wann sie ankommen, für alle deine Feeds zusammen.
- Deinen Newsletter-Alias, weil wir Mails an ihn zustellen.
- Zeitpunkte, theoretisch. Wer unsere Server heimlich verändert und live beobachtet, könnte versuchen, den Moment, in dem ein Feed abgerufen wird, mit dem Moment abzugleichen, in dem deine App etwas speichert. Deine App wartet vor dem Speichern eine zufällige Zeit, um das schwer zu machen, und nichts, was wir aufzeichnen, verbindet dich mit einem Feed. #tinfoilhats
Wenn du die technischen Details willst: Die stehen im Reader-Teil unserer Sicherheitsseite.
Wie es mit Reader weitergeht
Wir wollen eine Browser-Erweiterung bauen, mit der du Seiten noch einfacher als Lesezeichen speichern kannst. Dazu ein natives Teilen-Menü auf iPhone und Mac und einen Podcast-Player, der weiterspielt, während du dich durch die App bewegst. Wenn dir etwas anderes fehlt oder du über irgendwas hier diskutieren willst, schreib mir an ben@jellysuite.com.
Ben