Primul release de test al browser-ului web FixBrowser

A fost publicat primul număr de test al browserului web FixBrowser, conceput pentru a consuma puține resurse și pentru a asigura confidențialitatea. Browserul se dezvoltă de la zero și nu suportă în mod fundamental execuția JavaScript, dar permite accesarea site-urilor care depind de JavaScript. Codul este scris în limbajele C și FixScript, și este distribuit sub licența ZLIB. Versiunile finale sunt disponibile pentru Linux (GTK2) și Windows. Există planuri de a crea versiuni pentru Haiku și macOS 10.6+, precum și pentru Linux, utilizând GTK3/4.

Pentru a lucra cu site-uri care depind de JavaScript, FixBrowser folosește un strat FixProxy, care transformă în timp real aceste site-uri într-o prezentare care poate fi utilizată fără JavaScript. Transformarea se face atât prin șabloane tipice, cât și prin fix-handleri, care țin cont de specificul site-urilor particulare (included sunt fix-handleri pentru mai mult de 1200 de site-uri). FixProxy se dezvoltă ca un proces proxy separat, fără legătură cu FixBrowser, fiind potrivit pentru utilizarea cu alte browsere.

Se constată că pentru a vizualiza majoritatea site-urilor fără JavaScript sunt necesare doar modificări minore. În plus, multe site-uri folosesc tehnologii similare pentru generarea dinamică de conținut, ceea ce permite aplicarea handlerilor fix tipici pentru a le reda. De exemplu, se pot utiliza handleri fix generali pentru site-uri bazate pe motorul WordPress și forumuri pe platforma Disqus. Este posibil să se creeze handleri și pentru site-uri care generează dinamic conținut — de exemplu, pentru a afișa o listă de comentarii, care sunt inițial încărcate dinamic prin JavaScript, handlerul fix încarcă direct datele în format JSON și formează HTML pe baza acestora.

Pentru a gestiona captcha și componentele JavaScript, cum ar fi verificările CloudFlare, fără de care accesul pe anumite site-uri nu este posibil, se plănuiește pregătirea unui strat bazat pe frameworkul CEF (Chromium Embedded Framework), care va putea executa selectiv doar codul JavaScript necesar. Strat pentru JavaScript va fi implementat ca un serviciu separat (poate fi lansat atât pe sistemul propriu, cât și utilizat un serviciu cloud accesibil publicului).

Pentru a bloca urmărirea activității utilizatorului, încărcarea resurselor de pe gazde externe este interzisă, iar pentru a permite încărcarea imaginilor prin rețele de livrare a conținutului se aplică liste albe. Suport pentru HTTPS este disponibil. Este posibilă conectarea extensiilor scrise în limbajul FixScript.

Proiectul este dezvoltat de Martin Dvorak din Cehia, care a creat limbajul de programare FixScript. Majoritatea codului FixBrowser este scris în limbajul FixScript, cu excepția operațiunilor critice pentru performanță și a structurii de bază. Codul în FixScript este integrat în codul C, iar pentru compilare se folosește un compilator furnizat într-un singur fișier, care include aproximativ 27 de mii de linii de cod în limbajul C (800 KB). Limbajul amintește de C, dar folosește tipizare dinamică, colector de gunoi și compilare JIT. FixBrowser asigură o utilizare sigură a memoriei și a firelor, având în plus o protecție încorporată împotriva depășirilor de întregi.

Implementarea motorului de browser a fost semnificativ simplificată, deoarece FixBrowser realizează doar randarea inițială și nu suportă actualizarea dinamică a conținutului. După ce pagina este afișată, aceasta nu se mai schimbă, prin urmare, se poate evita utilizarea unor abstracții precum DOM (Modelul de Obiect Document). În prezent, activitatea se concentrează pe crearea unui parser HTML care să suporte specificațiile HTML5. Implementarea propusă în prima versiune de test acoperă deocamdată doar 30% din testele HTML5. Suportul de bază pentru CSS a fost implementat.

Primul release de test al browser-ului web FixBrowser


Sursa: opennet.ro
Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster