Dopo un anno di sviluppo, è stato pubblicato il rilascio del browser web mobile CENO 2.1.0, progettato per organizzare l'accesso alle informazioni in condizioni in cui l'accesso diretto alle informazioni non è possibile, ad esempio quando segmenti di internet sono scollegati dalla rete globale a causa di guasti o azioni dannose. Il browser è basato sul motore GeckoView (utilizzato in Firefox per Android), ampliato con la possibilità di scambiare dati tramite una rete P2P decentralizzata, in cui gli utenti partecipano al reindirizzamento del traffico verso gateway esterni che forniscono accesso alle informazioni. I risultati del progetto sono distribuiti con licenza MIT. Le versioni pronte sono disponibili su Google Play.
La funzionalità P2P è stata trasferita in una libreria separata, Ouinet, che può essere utilizzata in applicazioni varie. Il browser CENO e la libreria Ouinet consentono di accedere alle informazioni anche in situazioni di completa mancanza di internet, ad esempio, a causa di guasti globali. In questo caso, il contenuto può essere distribuito dalla cache o da dispositivi locali.
Il progetto utilizza la memorizzazione nella cache dei contenuti sul lato di ogni utente mantenendo una cache decentralizzata di contenuti popolari. Quando un utente apre un sito, il contenuto caricato viene memorizzato nella cache del sistema locale e diventa accessibile ai partecipanti della rete P2P che non possono ottenere accesso diretto alla risorsa o ai gateway. Su ogni dispositivo vengono memorizzati solo i dati richiesti direttamente da quel dispositivo. L'identificazione delle pagine nella cache avviene utilizzando l'hash dell'URL. Tutti i dati aggiuntivi collegati alla pagina, come immagini, script e stili, vengono raggruppati e restituiti insieme a un unico identificatore.
Per accedere a nuovi contenuti, il cui accesso diretto è impossibile, vengono utilizzati proxy speciali (injector), collocati in parti esterne della rete rimaste intatte, dove è ancora possibile stabilire una connessione. Le informazioni tra il client e il proxy vengono criptate utilizzando la crittografia a chiave pubblica. Per identificare i proxy e prevenire l'inserimento di proxy malevoli vengono utilizzate firme digitali, e le chiavi dei proxy accompagnati dal progetto sono incluse nella fornitura del browser.
Per accedere al proxy in caso di sua diretta inaccessibilità, è supportata la connessione tramite una catena attraverso altri utenti, che fungono da proxy per instradare il traffico verso il proxy (i dati vengono criptati con la chiave del proxy, il che non permette agli utenti di transito, attraverso i cui sistemi viene inviata la richiesta, di inserirsi nel traffico o di determinare il contenuto). I sistemi client non inviano richieste esterne per conto di altri utenti, ma restituiscono i dati dalla cache o vengono utilizzati come anello per stabilire un tunnel verso il proxy.
Le richieste normali vengono inizialmente tentate per essere consegnate direttamente, e se la richiesta diretta non va a buon fine, viene eseguita una ricerca nella cache distribuita. In assenza di URL nella cache, le informazioni vengono richieste tramite connessione al proxy gateway o contattando il gateway tramite un altro utente. I dati confidenziali, come i cookie, non vengono memorizzati nella cache.

Ogni sistema nella rete P2P è dotato di un identificatore interno, utilizzato durante il routing nella rete P2P, ma non è legato alla posizione fisica dell'utente. L'integrità delle informazioni trasmesse e memorizzate nella cache è garantita dall'uso di firme digitali (Ed25519). Il traffico trasmesso è crittografato tramite TLS. Per accedere alle informazioni sulla struttura della rete, sui partecipanti e sui contenuti memorizzati nella cache si utilizza una tabella hash distribuita (DHT). Se necessario, oltre a HTTP, possono essere utilizzati anche µTP o Tor come trasporto.
In questo caso, CENO non garantisce l'anonimato e le informazioni sulle richieste inviate sono disponibili per l'analisi sui dispositivi degli utenti (ad esempio, attraverso l'hash è possibile determinare che un utente si è collegato a un certo sito). Per richieste riservate, come quelle che richiedono l'accesso al proprio account di posta elettronica e ai social network, si consiglia di utilizzare una scheda privata separata, dove i dati vengono richiesti solo direttamente o tramite un proxy, ma senza accedere alla cache e senza rimanere nella cache.
Tra le novità del nuovo rilascio:
- Il motore del browser è sincronizzato con i componenti di Firefox 123.1.0.
- Migliorata l'indicazione delle fonti di caricamento dei contenuti.
- La modalità scura è attivata per impostazione predefinita.
- Aggiunta un'impostazione per esportare i log completi delle operazioni dell'applicazione.
- Aggiunta una pagina di attesa per la connessione durante l'avvio.
- Aggiunta un'impostazione per gestire l'attivazione della modalità bridge.
- Aggiornato l'elenco dei siti raccomandati per impostazione predefinita.
Fonte: opennet.ru
