Brotli prúd (.brotli)

IETF Štandard

Brotli je open-source algoritmus bezstratovej kompresie dát vyvinutý spoločnosťou Google. Je špeciálne optimalizovaný pre webovú typografiu (WOFF2) a kódovanie obsahu HTTP (Content-Encoding: br) s cieľom urýchliť doručovanie internetových stránok.

Konvertovať BROTLI do GZIP

Bezplatný konvertor z BROTLI do GZIP priamo v prehliadači. Konvertujte súbory okamžite vo svojom zariadení.

Preskúmať a metadáta

Operačné systémy a analyzátory súborov identifikujú súbory Brotli kontrolou počiatočnej binárnej bajtovej sekvencie:

Vyberte alebo presuňte súbory sem

100 % súkromná konverzia v prehliadači - súbory nikdy neopustia vaše zariadenie

alebo prilepiť Ctrl+V
Záruka súkromia s nulovým prenosom do siete: 0 bajtov odovzdaných na externé servery. Všetko spracovanie prebehlo lokálne v pieskovisku vášho prehliadača.

Podpis hlavičky na úrovni bajtov (Magic Bytes)

Operačné systémy a analyzátory súborov identifikujú súbory Brotli kontrolou počiatočnej binárnej bajtovej sekvencie:

HEXADECIMÁLNY PODPIS (OFFSET 0):

CE B2 CF 81

ASCII REPREZENTÁCIA: βÏ\x81

Štandardizácia: IETF RFC 7932

Technické špecifikácie

Architektúra kontajneraRaw bitstream framing with optional window size declaration and meta-blocks
KompresiaLZ77 sliding dictionary (up to 16 MB), second-order context modeling, and static 120 KB dictionary
Poradie bajtov (Endianness)Little-Endian bit-packing
Farebné priestoryN/A (Data Compression Stream)
Kanály a štruktúraGeneral-purpose byte stream compression
Max. rozmeryArbitrary byte stream length (supports unbounded streaming)
PriehľadnosťLossless byte-for-byte exact roundtrip data preservation
Streamovanie a postupné načítavanieMeta-block chunking allows continuous HTTP chunked transfer streaming

Technická porovnávacia matica: Brotli vs konkurenti

Technický atribútBrotli (Aktuálne)GZZSTDDEFLATE
Vstavaný statický slovníkZahrnutý 120 KB webový slovníkŽiadny (iba dynamický)Slovníky s možnosťou trénovania používateľomŽiadny (iba dynamický)
Webová kompresia (vs Gzip)O 15 % - 25 % menší ako GzipZákladný štandard (Gzip)O 10 % - 20 % menší ako GzipZákladný Deflate
HTTP kódovanie obsahu (Content-Encoding)'Content-Encoding: br''Content-Encoding: gzip''Content-Encoding: zstd''Content-Encoding: deflate'
Primárny cieľ návrhuPrenos webového textu a webových fontovVšeobecná kompresia súborov UnixPrijímanie údajov a databázy v reálnom časeZákladný kompresný algoritmus

Bežné režimy poškodenia a príručka na obnovu v hexadecimálnom kóde

Prehliadač nedokáže načítať zdroj s chybou 'ERR_CONTENT_DECODING_FAILED'.

Hlavná príčina: Proxy server alebo server skátil prúd Brotli predtým, než bol prenesený finálny metablok.

Obnova: Vymažte vyrovnávaciu pamäť prehliadača, skontrolujte nastavenia kompresie servera alebo lokálne dekomprimujte cez File2File.

Bezpečnostná analýza a vektory útokov na parser

Statický slovník a modelovanie kontextu v Brotli vyžadujú prísne kontroly hraníc pamäte voči chybne formátovaným spätným odkazom.

Známe vektory útokov

  • Čítanie ukazovateľa mimo vyhradený rozsah pri odkazovaní na offsety statického slovníka presahujúce veľkosť tabuľky.
  • Dekompresná bomba (ekvivalent zip bomb), ktorá vyčerpáva pamäť klienta z malých dátových payloadov.
  • Pretečenie vyrovnávacej pamäte počas zmeny veľkosti kruhovej vyrovnávacej pamäte s posuvným oknom.

Najlepšie obranné postupy:

Historický pôvod a míľniky

2016IETF publikuje Brotli ako RFC 7932, čo vedie k univerzálnemu prijatiu v HTTP webových prehliadačoch.
2015Google prispôsobuje Brotli ako alternatívu pre všeobecnú HTTP webovú kompresiu namiesto Gzip.
2013Inžinieri spoločnosti Google Jyrki Alakuijala a Zoltán Szabadka predstavujú Brotli na kompresiu webových fontov WOFF2.

Kľúčové výhody a prednosti

  • O 15 % až 25 % lepší kompresný pomer ako Gzip pre webové prostriedky HTML, CSS a JavaScript.
  • Obsahuje vopred definovaný statický slovník s veľkosťou 120 KB obsahujúci bežné webové slová, značky HTML a frázy.
  • Extrémne rýchla rýchlosť dekompresie, ktorá zabezpečuje takmer okamžité vykreslenie stránky na strane klienta.

Technické obmedzenia a nevýhody

  • Kompresia na úrovni 11 je výpočtovo náročná (najlepšie sa hodí na predbežnú kompresiu statických prostriedkov).
  • Vyžaduje HTTPS vo všetkých webových prehliadačoch, aby sa predišlo poškodeniu transparentným proxy serverom.
  • Surové súbory .br nemajú vstavaný názov súboru ani hlavičky oprávnení bez externého zabalenia do kontajnera.

Zaujímavé technické drobnosti

  • Brotli je pomenovaný po 'Brötli', čo v švajčiarskej nemčine znamená 'malý chlieb'.
  • Statický 120 KB slovník vo vnútri Brotli obsahuje tisíce bežných anglických, španielskych, nemeckých, čínskych a HTML úryvkov.
  • Viac ako 95 % modernej internetovej premávky cez Cloudflare, Fastly a Google je doručovaných pomocou kompresie Brotli.

Často kladené technické otázky

Prečo je Brotli pre webové stránky rýchlejší ako Gzip?

Brotli komprimuje súbory HTML, CSS a JS o 20 % menšie ako Gzip a zároveň ich dekomprimuje podobnou rýchlosťou, čím znižuje počet sieťových požiadaviek (roundtrips) vyžadovaných cez mobilné siete.

Prečo Brotli vyžaduje HTTPS?

Webové prehliadače podporujú Brotli iba cez zabezpečené pripojenie HTTPS, pretože staršie transparentné proxy servery na internete by nesprávne interpretovali alebo poškodili nové kódovanie „br“.

Ako môžem dekomprimovať súbor .br?

Súbory .br alebo .brotli môžete okamžite dekomprimovať do obyčajného textu alebo pôvodných súborov pomocou aplikácie File2File.app priamo vo webovom prehliadači.