Primo rilascio di prova del browser web FixBrowser

È stato pubblicato il primo rilascio di prova del browser web FixBrowser, progettato per un basso consumo di risorse e per garantire la privacy. Il browser è sviluppato da zero e non supporta l'esecuzione di JavaScript, ma consente di utilizzare siti che dipendono da JavaScript. Il codice è scritto in C e FixScript, ed è distribuito con licenza ZLIB. Sono disponibili versioni pronte per Linux (GTK2) e Windows. È previsto lo sviluppo di versioni per Haiku e macOS 10.6+, oltre alla creazione di versioni per Linux che utilizzano GTK3/4.

Per lavorare con siti che utilizzano JavaScript, FixBrowser utilizza uno strato di FixProxy, che trasforma al volo tali siti in un formato utilizzabile senza JavaScript. La sostituzione avviene sia tramite modelli standard che tramite fix-handler che considerano la specificità di determinati siti (sono inclusi fix-handler per oltre 1200 siti). FixProxy si sviluppa come un processo proxy separato, non legato a FixBrowser e utilizzabile con altri browser.

Si osserva che per visualizzare la maggioranza dei siti senza JavaScript sono necessari solo lievi modifiche. Inoltre, molti siti utilizzano tecnologie simili per la generazione dinamica dei contenuti, il che consente di applicare fix-handler standard per la loro resa. Ad esempio, è possibile utilizzare fix-handler universali per i siti basati sul motore WordPress e per i forum sulla piattaforma Disqus. Possono essere creati handler anche per siti che generano dinamicamente contenuti: ad esempio, per visualizzare una lista di commenti inizialmente caricati dinamicamente tramite JavaScript, un fix-handler carica direttamente i dati in formato JSON e genera autonomamente l'HTML sulla loro base.

Per gestire CAPTCHA e componenti JavaScript, come i controlli di CloudFlare, senza i quali non è possibile accedere a determinati siti, si prevede di preparare uno strato basato sul framework CEF (Chromium Embedded Framework), che potrà eseguire selettivamente solo il codice JavaScript necessario. Lo strato per JavaScript sarà implementato come un servizio separato (può essere eseguito sia sul proprio sistema che attraverso un servizio cloud pubblico).

Per bloccare il tracciamento dell'attività dell'utente, il caricamento delle risorse da host esterni è vietato, mentre per consentire il caricamento delle immagini tramite reti di distribuzione dei contenuti vengono applicate liste bianche. È supportato HTTPS. È possibile collegare estensioni scritte in FixScript.

Il progetto è sviluppato da Martin Dvorak dalla Repubblica Ceca, che ha creato il linguaggio di programmazione FixScript. La maggior parte del codice di FixBrowser è scritta in FixScript, ad eccezione delle operazioni critiche per le prestazioni e del framework di base. Il codice in FixScript si integra nel codice C, e per la compilazione viene utilizzato un compilatore fornito in un unico file, che include circa 27 mila righe di codice in linguaggio C (800 Kb). Il linguaggio è simile a C, ma utilizza tipizzazione dinamica, garbage collection e compilazione JIT. FixBrowser garantisce un uso sicuro della memoria e dei thread, ed è dotato di una protezione integrata contro gli overflow interi.

La realizzazione del motore del browser è stata notevolmente semplificata, poiché FixBrowser esegue solo il rendering primario e non supporta l'aggiornamento dinamico del contenuto. Dopo che la pagina è stata visualizzata, non cambia più, pertanto è possibile fare a meno di astrazioni come il DOM (Document Object Model). Attualmente il lavoro è incentrato sulla creazione di un parser HTML che supporti le specifiche HTML5. L'implementazione proposta nella prima versione di prova copre solo il 30% dei test HTML5. È stata implementata una base di supporto per CSS.

Primo rilascio di prova del browser web FixBrowser


Fonte: opennet.ru
Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster