Das Unternehmen eQualite hat die Version 2.0.0 des mobilen Webbrowsers CENO (CEnsorship.NO) veröffentlicht, der dazu dient, den Zugang zu Informationen unter Zensurbedingungen, bei Trafficfilterung oder bei Abschaltung von Internetsegmenten vom globalen Netzwerk zu organisieren. Der Browser basiert auf der GeckoView-Engine (die in Firefox für Android verwendet wird) und bietet die Möglichkeit, Daten über ein dezentrales P2P-Netzwerk auszutauschen, in dem Nutzer am Umleiten von Traffic zu externen Gateways teilnehmen, die den Zugang zu Informationen jenseits von Filtern ermöglichen. Die Entwicklungen des Projekts werden unter der MIT-Lizenz veröffentlicht. Fertige Builds sind im Google Play Store verfügbar.
Die P2P-Funktionalität wurde in eine separate Bibliothek namens Ouinet ausgelagert, die verwendet werden kann, um Zensurumgehungsmaßnahmen in beliebige Anwendungen zu integrieren. Der CENO-Browser und die Ouinet-Bibliothek ermöglichen den Zugang zu Informationen unter aktiver Sperrung von Proxy-Servern, VPN, Gateways und anderen zentralisierten Mechanismen zur Umgehung von Trafficfilterungen, bis hin zur vollständigen Abschaltung des Internets in zensierten Regionen (bei vollständiger Blockierung kann der Inhalt aus dem Cache oder von lokalen Speichern bereitgestellt werden).
Das Projekt nutzt das Caching von Inhalten auf der Seite jedes Nutzers und unterstützt einen dezentralen Cache für beliebte Inhalte. Wenn ein Nutzer eine Website öffnet, wird der heruntergeladene Inhalt im lokalen System zwischengespeichert und wird Teilnehmern des P2P-Netzwerks zugänglich, die keinen direkten Zugang zur Ressource oder zu Gateways zur Umgehung der Sperrung haben. Auf jedem Gerät werden nur die Daten gespeichert, die direkt von diesem Gerät angefordert wurden. Die Identifizierung der im Cache befindlichen Seiten erfolgt mit Hilfe eines Hashes von der URL. Alle zusätzlichen mit der Seite verbundenen Daten, wie Bilder, Skripte und Styles, werden gruppiert und zusammen mit einer einzigen ID bereitgestellt.
Um Zugang zu neuen Inhalten zu erhalten, die direkt blockiert sind, werden spezielle Proxy-Gateways (Injector) verwendet, die in externen, zensurfreien Bereichen des Netzwerks platziert sind. Die Informationen zwischen dem Client und dem Gateway werden mit einer Verschlüsselung auf Basis öffentlicher Schlüssel verschlüsselt. Zur Identifizierung der Gateways und zur Verhinderung der Implementierung schädlicher Gateways werden digitale Signaturen eingesetzt, und die Schlüssel der unterstützten Gateways sind in der Lieferung des Browsers enthalten.
Um auf das Gateway zuzugreifen, während es blockiert ist, wird eine Kette über andere Benutzer unterstützt, die als Proxys fungieren, um den Verkehr zum Gateway weiterzuleiten (die Daten werden mit dem Schlüssel des Gateways verschlüsselt, was Transitbenutzern, über deren Systeme die Anfrage geleitet wird, nicht erlaubt, sich in den Verkehr einzuklinken oder den Inhalt zu bestimmen). Client-Systeme senden externe Anfragen nicht im Namen anderer Benutzer, sondern liefern entweder Daten aus dem Cache oder dienen als Verbindung zur Einrichtung eines Tunnels zum Proxy-Gateway.

Normale Anfragen versucht der Browser zunächst direkt zu liefern; und wenn die direkte Anfrage nicht funktioniert, wird eine Suche im verteilten Cache durchgeführt. Bei fehlender URL im Cache wird die Information über eine Verbindung zum Proxy-Gateway oder über einen anderen Benutzer abgerufen. Vertrauliche Daten wie Cookies werden nicht im Cache gespeichert.

Jedes System im P2P-Netzwerk wird mit einer internen Kennung ausgestattet, die bei der Routenführung im P2P-Netzwerk verwendet wird, jedoch nicht an den physischen Standort des Benutzers gebunden ist. Die Authentizität der übermittelten und im Cache gespeicherten Informationen wird durch digitale Signaturen (Ed25519) gewährleistet. Der übertragene Verkehr wird durch TLS verschlüsselt. Für den Zugang zu Informationen über die Netzwerkstruktur, die Teilnehmer und den zwischengespeicherten Inhalt wird eine verteilte Hash-Tabelle (DHT) verwendet. Bei Bedarf können neben HTTP auch µTP oder Tor als Transportprotokoll verwendet werden.
Dabei bietet CENO keine Anonymität, und die Informationen über die gesendeten Anfragen sind für die Analyse auf den Geräten der Teilnehmer verfügbar (zum Beispiel kann man anhand des Hashs feststellen, dass der Benutzer auf eine bestimmte Website zugegriffen hat). Für vertrauliche Anfragen, wie zum Beispiel solche, die eine Anmeldung bei einem E-Mail- oder Social-Media-Konto erfordern, wird empfohlen, einen separaten privaten Tab zu verwenden, bei dem die Daten nur direkt oder über ein Proxy-Gateway angefordert werden, jedoch ohne auf den Cache zuzugreifen und ohne im Cache gespeichert zu werden.
Zu den Änderungen in der neuen Version gehören:
- Das Layout der Leiste wurde geändert und die Benutzeroberfläche des Konfigurators überarbeitet.
- Es wurde die Möglichkeit hinzugefügt, das Standardverhalten der Schaltfläche 'Clear' zu definieren und diese Schaltfläche sowohl aus der Leiste als auch aus dem Menü zu entfernen.
- Im Konfigurator gibt es jetzt die Möglichkeit, Browserdaten zu löschen, einschließlich der selektiven Löschung aus einer Liste.
- Die Optionen im Menü wurden neu gruppiert.
- Optionen zur Anpassung der Benutzeroberfläche wurden in ein separates Untermenü verschoben.
- Die Version der Ouinet-Bibliothek (0.21.5) und der Ceno Extension (1.6.1) wurde aktualisiert, die GeckoView-Engine und die Mozilla-Bibliotheken wurden mit Firefox für Android 108 synchronisiert.
- Die Lokalisierung für die russische Sprache wurde hinzugefügt.
- Einstellungen zum Steuern der Themenparameter und der Suchmaschinen wurden hinzugefügt.
Quelle: opennet.ru
