Proud Brotli (.br)

IETF Standardní

Brotli je open-source bezztrátový kompresní algoritmus vyvinutý společností Google, speciálně optimalizovaný pro webovou typografii (WOFF2) a kódování obsahu HTTP (Content-Encoding: br) za účelem zrychlení načítání internetových stránek.

Převést BROTLI na GZIP

Bezplatný konvertor z BROTLI do GZIP v prohlížeči. Převeďte soubory okamžitě ve svém zařízení.

Kontrola a metadata

Operační systémy a analyzátory souborů identifikují soubory Brotli kontrolou počáteční binární sekvence bajtů:

Vyberte nebo přetáhněte soubory sem

Soukromě - soubory nikdy neopustí vaše zařízení

nebo vložte Ctrl+V
Záruka ochrany soukromí s nulovým přenosem po síti: 0 bajtů odesláno na externí servery. Veškeré zpracování probíhalo lokálně v sandboxu vašeho prohlížeče.

Podpis hlavičky na úrovni bajtů (Magic Bytes)

Operační systémy a analyzátory souborů identifikují soubory Brotli kontrolou počáteční binární sekvence bajtů:

HEXADECIMÁLNÍ PODPIS (POSUN 0):

CE B2 CF 81

ASCII REPREZENTACE: βÏ\x81

Standardizace: IETF RFC 7932

Technické specifikace

Architektura kontejneruRámování surového bitového proudu s volitelným údajem o velikosti okna a metabloky
KompresePosuvný slovník LZ77 (až 16 MB), modelování kontextu druhého řádu a statický slovník o velikosti 120 KB
Pořadí bajtůLittle-endian pořadí bitů
Barevné prostoryNevztahuje se (proud komprimovaných dat)
Kanály a strukturaUniverzální komprese bajtového proudu
Max. rozměryLibovolná délka bajtového proudu (podporuje neomezené streamování)
PrůhlednostBezztrátové zachování dat při přesné obnově bajt po bajtu
Streamování a progresivní načítáníDělení na metabloky umožňuje průběžné streamování HTTP po blocích

Technická srovnávací matice: Brotli vs konkurence

Technický atributBrotli (Aktuální)GZZSTDDEFLATE
Vestavěný statický slovníkZahrnut webový slovník o velikosti 120 KBŽádný (pouze dynamický)Uživatelsky trénovatelné slovníkyŽádný (pouze dynamický)
Webová komprese (vs Gzip)O 15 % až 25 % menší než u GzipuZákladní standard (Gzip)O 10 % až 20 % menší než u GzipuZákladní Deflate
Kódování obsahu HTTP„Content-Encoding: br“„Content-Encoding: gzip“„Content-Encoding: zstd“„Content-Encoding: deflate“
Hlavní cíl návrhuPřenos webových textů a webových písemBěžná komprese souborů v systému UnixDatabáze v reálném čase a příjem datZákladní kompresní algoritmus

Běžné režimy poškození a příručka pro obnovení v hex

Prohlížeč nedokáže načíst zdroj a zobrazí chybu „ERR_CONTENT_DECODING_FAILED“.

Hlavní příčina: Proxy server nebo server zkrátil proud Brotli před odesláním posledního metabloku.

Obnovení: Vymažte mezipaměť prohlížeče, zkontrolujte nastavení komprese serveru nebo dekomprimujte lokálně pomocí File2File.app.

Bezpečnostní analýza a vektory útoků na parser

Statický slovník a kontextové modelování Brotli vyžadují důsledné kontroly mezí paměti proti chybně formátovaným zpětným odkazům.

Známé vektory útoků

  • Čtení ukazatele mimo vyhrazený prostor při odkazování na offsety statického slovníku nad rámec velikosti tabulky.
  • Dekompresní bomba (obdoba „zip bomb“), která vyčerpá paměť klienta při rozbalení malého souboru.
  • Přetečení vyrovnávací paměti během změny velikosti kruhové vyrovnávací paměti klouzavého okna.

Doporučené bezpečnostní postupy: Vynutit maximální velikosti výstupní vyrovnávací paměti během dekomprese nedůvěryhodných proudů Brotli.

Historický vývoj a milníky

2016IETF publikuje Brotli jako RFC 7932.
2015Google přetváří Brotli jako alternativu pro obecnou kompresi webu HTTP namísto Gzipu.
2013Inženýři Googlu Jyrki Alakuijala a Zoltán Szabadka představují Brotli pro kompresi webových písem WOFF2.

Klíčové výhody a přednosti

  • Kompresní poměr je u webových souborů HTML, CSS a JavaScriptu o 15 % až 25 % lepší než u Gzipu.
  • Obsahuje předdefinovaný statický slovník o velikosti 120 KB obsahující běžná webová slova, značky HTML a fráze.
  • Extrémně vysoká rychlost dekomprese zajišťující téměř okamžité vykreslení stránky na straně klienta.

Technická omezení a nevýhody

  • Komprese na úrovni 11 je výpočetně náročná (nejlépe se hodí pro předběžnou kompresi statických prostředků).
  • Vyžaduje HTTPS ve všech webových prohlížečích, aby se zabránilo poškození transparentním proxy serverem.
  • Čisté soubory .br postrádají vestavěné hlavičky názvů souborů nebo oprávnění bez externího kontejneru.

Zajímavé technické drobnosti

  • Brotli je pojmenováno po „Brötli", což v švýcarské němčině znamená „chlebíček" nebo „malý chléb".
  • Statický 120 KB slovník uvnitř Brotli obsahuje tisíce běžných anglických, španělských, německých, čínských a HTML útržků.
  • Brotli podporují hlavní webové servery a prohlížeče, jeho podíl na provozu se však liší podle služby a typu odpovědi.

Často kladené technické otázky

Proč je Brotli pro weby rychlejší než Gzip?

Brotli může v některých případech vytvářet menší textové soubory pro web než Gzip, rozdíl však závisí na obsahu, nastavení komprese a implementaci.

Proč Brotli vyžaduje HTTPS?

Webové prohlížeče podporují Brotli pouze přes zabezpečená připojení HTTPS, protože starší transparentní proxy servery na internetu by nové kódování „br“ špatně interpretovaly nebo poškodily.

Jak mohu dekomprimovat soubor .br?

Soubory .br nebo .brotli můžete okamžitě dekomprimovat do prostého textu nebo původních souborů pomocí aplikace File2File.app přímo ve vašem webovém prohlížeči.