Brotli tok (.brotli)

IETF Standardno

Brotli je algoritam za kompresiju podataka bez gubitaka otvorenog koda koji je razvio Google, specijalno optimizovan za veb tipografiju (WOFF2) i kodiranje HTTP sadržaja (Content-Encoding: br) radi ubrzanja isporuke internet stranica.

Конвертујте BROTLI у GZIP

Бесплатан BROTLI у GZIP конвертор у прегледачу. Конвертујте фајлове тренутно без слања на сервер уз 100% приватност.

Pregledaj i metapodaci

Operativni sistemi i analizatori datoteka identifikuju Brotli datoteke proverom početnog binarnog niza bajtova:

Изаберите или превуците датотеке овде

100% приватна конверзија у прегледачу – датотеке никада не напуштају ваш уређај

или налепите Ctrl+V
100% Локална обрада у прегледачу 0 бајтова послато спољним серверима. Сва обрада је извршена локално у безбедном окружењу вашег прегледача.

Potpis zaglavlja na nivou bajtova (Magic Bytes)

Operativni sistemi i analizatori datoteka identifikuju Brotli datoteke proverom početnog binarnog niza bajtova:

HEX POTPIS (OFFSET 0):

CE B2 CF 81

ASCII REPREZENTACIJA: βÏ\x81

Standardizacija: IETF RFC 7932

Tehničke specifikacije

Arhitektura kontejneraRaw bitstream framing with optional window size declaration and meta-blocks
KompresijaLZ77 sliding dictionary (up to 16 MB), second-order context modeling, and static 120 KB dictionary
Bajtni redosled (Endianness)Little-Endian bit-packing
Prostori bojaN/A (Data Compression Stream)
Kanali i strukturaGeneral-purpose byte stream compression
Maksimalne dimenzijeArbitrary byte stream length (supports unbounded streaming)
TransparentnostLossless byte-for-byte exact roundtrip data preservation
Strimovanje i progresivno učitavanjeMeta-block chunking allows continuous HTTP chunked transfer streaming

Tehnička matrica poređenja: Brotli vs Konkurenti

Tehnički atributBrotli (Trenutno)GZZSTDDEFLATE
Ugrađeni statički rečnikUključen veb rečnik od 120 KBNema (samo dinamički)Rečnici koje korisnik može da obučavaNema (samo dinamički)
Veb kompresija (u odnosu na Gzip)15% - 25% manji od Gzip-aOsnovni standard (Gzip)10% - 20% manji od Gzip-aOsnovni Deflate
HTTP kodiranje sadržaja'Content-Encoding: br''Content-Encoding: gzip''Content-Encoding: zstd''Content-Encoding: deflate'
Primarni cilj dizajnaPrenos veb teksta i veb fontovaOpšta kompresija Unix datotekaBaza podataka u realnom vremenu i unos podatakaTemeljni algoritam kompresije

Uobičajeni režimi oštećenja i vodič za heksadecimalni oporavak

Pretraživač ne uspeva da učita resurs uz poruku 'ERR_CONTENT_DECODING_FAILED'.

Osnovni uzrok: Proksi ili server je skratio Brotli tok pre nego što je prenesen konačni meta-blok.

Oporavak: Obrišite keš memoriju pretraživača, proverite podešavanja kompresije na serveru ili lokalno dekompresujte preko File2File-a.

Bezbednosna analiza i vektori napada parsera

Brotlijin statički rečnik i modeliranje konteksta zahtevaju rigorozne provere granica memorije protiv loše formiranih unazad usmerenih referenci (back-references).

Poznati vektori napada

  • Čitanje pokazivača van granica pri upućivanju na pomeraje statičkog rečnika koji prevazilaze veličinu tabele.
  • Dekompresiona bomba (ekvivalent zip bombe) koja iscrpljuje memoriju klijenta iz malih korisnih opterećenja.
  • Prekoračenje bafera tokom promene veličine prstenastog bafera klizećeg prozora (sliding window ring buffer).

Defanzivne najbolje prakse:

Istorijat i prekretnice

2016IETF objavljuje Brotli kao RFC 7932, što dovodi do univerzalnog usvajanja u HTTP veb pretraživačima.
2015Google prenamenjuje Brotli kao opštu alternativu za HTTP veb kompresiju umesto Gzip-a.
2013Google inženjeri Jyrki Alakuijala i Zoltán Szabadka predstavljaju Brotli za kompresiju WOFF2 veb fontova.

Ključne prednosti

  • 15% do 25% bolji odnos kompresije od Gzip-a na HTML, CSS i JavaScript veb resursima.
  • Uključuje unapred definisani statički rečnik od 120 KB uobičajenih veb reči, HTML tagova i fraza.
  • Izuzetno velika brzina dekompresije, koja obezbeđuje skoro trenutno renderovanje stranice na strani klijenta.

Tehnička ograničenja i nedostaci

  • Kompresija na nivou 11 je računski zahtevna (najpogodnija za prethodnu kompresiju statičkih resursa).
  • Zahteva HTTPS u svim veb pretraživačima kako bi se sprečilo korumpiranje od strane transparentnih proksi servera.
  • Sirove .br datoteke nemaju ugrađeno ime datoteke ili zaglavlja dozvola bez spoljne kontejnerizacije.

Zanimljivosti

  • Brotli je dobio ime po 'Brötli', što na švajcarskom nemačkom znači 'hlebčić' (mali hleb).
  • Statički rečnik od 120 KB unutar Brotlija sadrži hiljade uobičajenih engleskih, španskih, nemačkih, kineskih i HTML isečaka.
  • Preko 95% modernog internet saobraćaja preko Cloudflare-a, Fastly-ja i Google-a se isporučuje korišćenjem Brotli kompresije.

Često postavljana tehnička pitanja

Zašto je Brotli brži od Gzip-a za veb-sajtove?

Brotli kompresuje HTML, CSS i JS datoteke 20% efikasnije od Gzip-a dok ih dekompresuje sličnim brzinama, smanjujući broj zahteva i odgovora (roundtrips) potrebnih preko mobilnih mreža.

Zašto Brotli zahteva HTTPS?

Veb pretraživači podržavaju Brotli samo preko bezbednih HTTPS veza jer bi stari transparentni proksiji na internetu pogrešno protumačili ili oštetili novu 'br' enkodiranje.

Kako mogu da dekompresujem .br datoteku?

Možete trenutno dekompresovati .br ili .brotli datoteke u običan tekst ili originalne datoteke pomoću aplikacije File2File.app direktno u Vašem veb pretraživaču.