Flux Brotli (.br)

IETF Standard

Brotli este un algoritm de compresie a datelor fără pierderi cu sursă deschisă dezvoltat de Google, optimizat în mod specific pentru tipografia web (WOFF2) și codificarea conținutului HTTP (Content-Encoding: br) pentru a accelera livrarea paginilor pe internet.

Convertește din BROTLI în GZIP

Convertor gratuit din BROTLI în GZIP direct în browser. Convertește fișiere instantaneu pe dispozitivul tău.

Inspectare și metadate

Sistemele de operare și analizatoarele de fișiere identifică fișierele Brotli prin inspectarea secvenței binare inițiale:

Selectează sau plasează fișierele aici

Privat - fișierele nu părăsesc niciodată dispozitivul tău

sau lipește Ctrl+V
Garanție de confidențialitate: nicio transmisie prin rețea: 0 octeți încărcați pe servere externe. Toată procesarea a avut loc local în sandbox-ul browserului tău.

Semnătura antetului la nivel de octet (octeți magici)

Sistemele de operare și analizatoarele de fișiere identifică fișierele Brotli prin inspectarea secvenței binare inițiale:

SEMNĂTURĂ HEXAZECIMALĂ (DECALAJ 0):

CE B2 CF 81

REPREZENTARE ASCII: βÏ\x81

Standardizare: IETF RFC 7932

Specificații tehnice

Arhitectură containerÎncadrare în flux de biți brut, cu declararea opțională a dimensiunii ferestrei și metablocuri
CompresieDicționar LZ77 cu fereastră glisantă (până la 16 MB), modelare de context de ordinul doi și dicționar static de 120 KB
Ordinea octețilorÎmpachetare Little-Endian a biților
Spații de culoareNu se aplică (flux de compresie a datelor)
Canale și structurăCompresia generală a fluxurilor de octeți
Dimensiuni maximeLungime arbitrară a fluxului de octeți (acceptă transmitere în flux fără limită)
TransparențăPăstrarea fără pierderi, bit cu bit, a datelor la conversia dus-întors
Streaming și progresivÎmpărțirea în metablocuri permite transmiterea continuă prin transfer HTTP segmentat

Matrice de comparație tehnică: Brotli vs. concurenți

Atribut tehnicBrotli (Curent)GZZSTDDEFLATE
Dicționar static încorporatDicționar web de 120 KB inclusNiciunul (doar dinamic)Dicționare care pot fi antrenate de utilizatorNiciunul (doar dinamic)
Compresie Web (vs Gzip)cu 15% - 25% mai mică decât GzipStandard de bază (Gzip)cu 10% - 20% mai mică decât GzipDeflate de bază
Content-Encoding HTTP„Content-Encoding: br”„Content-Encoding: gzip”„Content-Encoding: zstd”„Content-Encoding: deflate”
Obiectiv principal de proiectareTransmisie de text web și fonturi webCompresie generală de fișiere UnixBaze de date în timp real și preluarea datelorAlgoritm de compresie fundamental

Moduri comune de corupție și ghid de recuperare hexazecimală

Browserul nu reușește să încarce resursa cu „ERR_CONTENT_DECODING_FAILED”.

Cauză principală: Proxy-ul sau serverul a trunchiat fluxul Brotli înainte ca ultimul metabloc să fie transmis.

Recuperare: Golește memoria cache a browserului, verifică setările de compresie ale serverului sau decomprimă fișierul local cu File2File.app.

Analiză de securitate și vectori de atac asupra parserului

Dicționarul static și modelarea contextului din Brotli necesită verificări riguroase ale limitelor memoriei împotriva referințelor inverse malformate.

Vectori de atac cunoscuți

  • Citirea unui pointer în afara limitelor la accesarea unor poziții din dicționarul static aflate dincolo de dimensiunea tabelului.
  • Bombă de decomprimare (echivalentă cu o bombă zip) care epuizează memoria clientului pornind de la payloaduri minuscule.
  • Depășire de buffer în timpul redimensionării bufferului inelar cu fereastră glisantă.

Cele mai bune practici de securitate: Impune o dimensiune maximă pentru memoria tampon de ieșire când decomprimi fluxuri Brotli care nu sunt de încredere.

Origini istorice și repere

2016IETF publică Brotli ca RFC 7932.
2015Google reutilizează Brotli ca o alternativă generală de compresie web HTTP la Gzip.
2013Inginerii Google Jyrki Alakuijala și Zoltán Szabadka introduc Brotli pentru compresia fonturilor web WOFF2.

Avantaje cheie și beneficii

  • Rată de compresie cu 15% până la 25% mai bună decât Gzip pentru resurse web HTML, CSS și JavaScript.
  • Încorporează un dicționar static predefinit de 120 KB cu cuvinte web comune, etichete HTML și fraze.
  • Viteză de decomprimare extrem de mare, asigurând o afișare a paginii în browserul clientului aproape instantanee.

Limitări tehnice și dezavantaje

  • Compresia la nivelul 11 consumă multe resurse de calcul (este potrivită mai ales pentru precompresia resurselor statice).
  • Necesită HTTPS în toate browserele web pentru a preveni coruperea de către un proxy transparent.
  • Fișierele .br brute nu au antete integrate pentru numele fișierelor sau permisiuni fără o containerizare externă.

Curiozități tehnice interesante

  • Brotli este numit după „Brötli", care înseamnă „pâinică" în germana elvețiană.
  • Dicționarul static de 120 KB din interiorul Brotli conține mii de fragmente comune în engleză, spaniolă, germană și chineză, precum și fragmente HTML.
  • Brotli este acceptat de servere web și browsere importante, dar ponderea traficului variază în funcție de serviciu și de tipul răspunsului.

Întrebări tehnice frecvente

De ce este Brotli mai rapid decât Gzip pentru site-urile web?

În unele cazuri, Brotli poate produce fișiere text web mai mici decât Gzip, dar diferența depinde de conținut, setările de compresie și implementare.

De ce necesită Brotli protocolul HTTPS?

Browserele web acceptă Brotli doar prin conexiuni HTTPS sigure, deoarece proxy-urile transparente vechi de pe internet ar interpreta greșit sau ar corupe noua codificare „br”.

Cum pot decomprima un fișier .br?

Poți decomprima fișiere .br sau .brotli în text simplu ori în fișierele originale, direct și rapid în browser, cu File2File.app.