Brotli-ström (.br)

IETF:s Standard

Brotli är en öppen källkodsbaserad förlustfri datakomprimeringsalgoritm utvecklad av Google, särskilt optimerad för webbtypografi (WOFF2) och HTTP-innehållskodning (Content-Encoding: br) för att snabba upp sidvisningar på internet.

Konvertera BROTLI till GZIP

Gratis konverterare från BROTLI till GZIP i webbläsaren. Konvertera filer direkt på din enhet.

Granska och metadata

Operativsystem och filanalysverktyg identifierar Brotli-filer genom att granska den inledande sekvensen av binära byte:

Välj eller släpp filer här

Privat - filer lämnar aldrig din enhet

eller klistra in Ctrl+V
Integritetsgaranti utan nätverksöverföring: 0 byte laddades upp till externa servrar. All bearbetning skedde lokalt i webbläsarens sandlåda.

Signatur i filhuvudet på bytenivå (magiska byte)

Operativsystem och filanalysverktyg identifierar Brotli-filer genom att granska den inledande sekvensen av binära byte:

HEX-SIGNATUR (OFFSET 0):

CE B2 CF 81

ASCII-REPRESENTATION: βÏ\x81

Standardisering: IETF:s RFC 7932

Tekniska specifikationer

ContainerarkitekturRå bitström med valfri deklaration av fönsterstorlek och metablock
KomprimeringLZ77-glidande ordbok (upp till 16 MB), andra ordningens kontextmodellering och en statisk ordbok på 120 KB
ByteordningLittle-endian-bitpackning
FärgrymderInte tillämpligt (datakomprimeringsström)
Kanaler och strukturKomprimering av generella byteflöden
Maximala dimensionerGodtycklig längd på byteströmmen (stöder obegränsad strömning)
TransparensFörlustfri och exakt återställning av data byte för byte
Strömning och progressiv visningMetablock möjliggör kontinuerlig strömning med HTTP-chunkad överföring

Teknisk jämförelsematris: Brotli jämfört med konkurrenter

Tekniskt attributBrotli (Aktuell)GZZSTDDEFLATE
Inbyggd statisk ordbok120 KB webbordbok inkluderadIngen (endast dynamisk)Ordböcker som användaren kan tränaIngen (endast dynamisk)
Webbkomprimering (jämfört med Gzip)15-25 % mindre än med GzipBaslinjestandard (Gzip)10-20 % mindre än med GzipReferensvärde: Deflate
HTTP Content-Encoding'Content-Encoding: br''Content-Encoding: gzip''Content-Encoding: zstd''Content-Encoding: deflate'
Primärt designmålÖverföring av webbtext och webbteckensnittAllmän filkomprimering i UnixRealtidsdatabas och datainmatningGrundläggande komprimeringsalgoritm

Vanliga skadeorsaker och hex-återställningsguide

Webbläsaren misslyckas med att läsa in resursen med 'ERR_CONTENT_DECODING_FAILED'.

Grundorsak: Proxy eller server trunkerade Brotli-strömmen innan det sista metablocket överfördes.

Återställning: Rensa webbläsarens cache, kontrollera serverns komprimeringsinställningar eller dekomprimera lokalt via File2File.app.

Säkerhetsanalys och attackvektorer för tolkar

Brotlis statiska ordbok och kontextmodellering kräver rigorösa minnesgränskontroller mot felaktigt formaterade bakåtreferenser.

Kända attackvektorer

  • Pekaravläsning utanför gränserna vid referens till statiska ordboksoffset som överskrider tabellstorleken.
  • Dekomprimeringsbomb (motsvarar en zip-bomb) som kan tömma klientminnet trots en liten nyttolast.
  • Buffertspill vid storleksändring av ringbuffert för glidande fönster.

Rekommenderade skyddsåtgärder: Begränsa utdatabuffertens maximala storlek när du dekomprimerar opålitliga Brotli-strömmar.

Historiskt ursprung och milstolpar

2016IETF publicerar Brotli som RFC 7932.
2015Google återanvänder Brotli som ett allmänt HTTP-webbkomprimeringsalternativ till Gzip.
2013Google-ingenjörerna Jyrki Alakuijala och Zoltán Szabadka introducerar Brotli för komprimering av WOFF2-webbteckensnitt.

Viktiga fördelar

  • 15 % till 25 % bättre komprimeringsgrad än Gzip för HTML-, CSS- och JavaScript-tillgångar på webben.
  • Innehåller en fördefinierad statisk ordbok på 120 KB med vanliga webbord, HTML-taggar och fraser.
  • Extremt snabb dekomprimeringshastighet, vilket säkerställer nästan omedelbar rendering av sidor på klientsidan.

Tekniska begränsningar

  • Komprimering på nivå 11 är beräkningsmässigt krävande (lämpar sig bäst för förkomprimering av statiska resurser).
  • Kräver HTTPS i alla webbläsare för att förhindra skador orsakade av transparenta proxyservrar.
  • Råa .br-filer saknar inbäddade filnamn eller behörighetsuppgifter om de inte omsluts av ett externt behållarformat.

Intressant teknisk kuriosa

  • Brotli är uppkallad efter 'Brötli', vilket betyder 'litet bröd' på schweizisk tyska.
  • Den statiska ordboken på 120 KB i Brotli innehåller tusentals vanliga engelska, spanska, tyska, kinesiska och HTML-snuttar.
  • Brotli stöds av stora webbservrar och webbläsare, men trafikandelen varierar beroende på tjänst och svarstyp.

Vanliga tekniska frågor

Varför är Brotli snabbare än Gzip för webbplatser?

Brotli kan i vissa fall ge mindre textfiler för webben än Gzip, men skillnaden beror på innehållet, komprimeringsinställningarna och implementationen.

Varför kräver Brotli HTTPS?

Webbläsare stöder endast Brotli över säkra HTTPS-anslutningar eftersom äldre transparenta proxyservrar på internet annars skulle misstolka eller skada den nya 'br'-kodningen.

Hur kan jag dekomprimera en .br-fil?

Du kan dekomprimera .br- eller .brotli-filer till ren text eller originalfiler omedelbart med File2File.app direkt i din webbläsare.