Raw DEFLATE (.deflate)

IETF Standardní

DEFLATE je nejrozšířenějším algoritmem bezztrátové komprese dat v historii výpočetní techniky, který již více než tři desetiletí pohání archivy ZIP, proudy GZIP, obrázky PNG a webovou kompresi HTTP.

Převést GZIP do DEFLATE

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

Zkontrolovat a metadata

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

Vyberte nebo přetáhněte soubory sem

100% soukromá konverze v prohlížeči - 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 DEFLATE kontrolou počáteční binární sekvence bajtů:

HEXADECIMÁLNÍ PODPIS (OFFSET 0):

78 9C / 78 01 / 78 DA

ASCII REPREZENTACE: xœ / x. / xÚ

Standardizace: IETF RFC 1951 / RFC 1950 (zlib)

Technické specifikace

Architektura kontejneruRaw RFC 1951 bitstream or RFC 1950 zlib-wrapped stream with 2-byte header and Adler-32 checksum
KompreseLZ77 sliding dictionary (up to 32 KB window) combined with dynamic/static Huffman entropy coding
Endiantita bajtůLittle-Endian bit-packing order
Barevné prostoryN/A (Data Compression Stream)
Kanály a strukturaRaw binary or text data stream
Max. rozměryUnbounded stream length
Průhlednost100% bit-exact lossless data reproduction
Streamování a progresivní načítáníBlock-based bitstream supports arbitrary continuous byte streaming

Technická srovnávací matice: DEFLATE vs konkurence

Technický atributDEFLATE (Aktuální)GZBROTLIZSTD
StandardizaceIETF RFC 1951 (Raw) / RFC 1950 (zlib)IETF RFC 1952 (Gzip)IETF RFC 7932 (Brotli)IETF RFC 8878 (Zstandard)
Klouzavé oknoMax. 32 kilobajtůMax. 32 kilobajtůAž 16 megabajtůAž 2 gigabajty
Režim kontrolního součtuAdler-32 (v obalu zlib)CRC-32 (v obalu gzip)Žádný vestavěný v prouduxxHash64 (64bitový rychlý hash)
Každodenní použitíObrázky PNG, proudy PDF, ZIPUnixové .tar.gz, HTTP gzipWebové fonty (WOFF2), HTTP brJádro Linuxu, databáze, hry

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

Dekomprese selže s hlášením „Z_DATA_ERROR: incorrect data check".

Hlavní příčina: Nesoulad v 4bajtovém kontrolním součtu Adler-32 na konci proudu zabaleného v zlib.

Obnovení: Obejděte ověření Adler-32 pomocí surového (raw) inflate nebo proveďte opravu pomocí nástroje File2File Deflate Recovery.

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

Analyzátory DEFLATE musí přísně ověřovat kódy konstrukce Huffmanova stromu, aby se předešlo zápisům ukazatelů mimo vyhrazenou paměť.

Známé vektory útoků

  • Neúplné nebo nadměrně obsazené tabulky délky bitů dynamického Huffmanova stromu vedoucí k neplatným čtením z paměti.
  • Dekompresní bomba (zip bomb), která rozbalí drobná data na stovky gigabajtů v paměti RAM.
  • Čtení za hranicemi vyrovnávací paměti v neověřených kódech vzdáleností klouzavého okna.

Doporučené bezpečnostní postupy:

Historický vývoj a milníky

1996Peter Deutsch formalizuje DEFLATE jako IETF RFC 1951 a zlib jako RFC 1950.
1995Jean-loup Gailly a Mark Adler vydávají zlib, univerzální referenční knihovnu v jazyce C pro DEFLATE.
1991Phil Katz vynalézá DEFLATE pro PKZIP 2.0 jako náhradu starších algoritmů Implode a Reduce.

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

  • Nezpochybnitelný globální standard: implementovaný v hardwaru, operačních systémech a každém programovacím prostředí.
  • Návrh bez patentů a licenčních poplatků zaručuje otevřený přístup v celém odvětví výpočetní techniky.
  • Rychlá dekomprese s minimální paměťovou náročností (vyžaduje pouze 32 KB paměti klouzavého okna).

Technická omezení a nevýhody

  • Klouzavé okno je omezeno na 32 KB, což snižuje kompresní účinnost u velkých souborů s vzdálenými redundancemi.
  • Nižší kompresní poměry u moderních webových dat ve srovnání s novějšími algoritmy, jako jsou Brotli a Zstandard.
  • Nezabalené proudy DEFLATE postrádají metadatské popisy nebo kontejnerové rámování bez obalů zlib nebo gzip.

Zajímavé technické drobnosti

  • Phil Katz vynalezl DEFLATE poté, co jej společnost Unisys zažalovala kvůli patentovanému algoritmu LZW používanému v raných utilitách PKARC.
  • Standardní hlavičkové bajty zlib „78 9C" označují výchozí kompresi, „78 01" nízkou kompresi a „78 DA" maximální kompresi.
  • Každý obrázek PNG na Zemi používá k dekompresi svých pixelových bloků IDAT algoritmus DEFLATE.

Často kladené technické otázky

Jaký je rozdíl mezi DEFLATE, zlib a gzip?

DEFLATE je surový kompresní algoritmus (RFC 1951). Zlib obaluje DEFLATE 2bajtovou hlavičkou a kontrolním součtem Adler-32 (RFC 1950). Gzip obaluje DEFLATE metadaty souboru a kontrolním součtem CRC-32 (RFC 1952).

Proč formát PNG používá DEFLATE?

Formát PNG byl vytvořen v roce 1995 jako náhrada za GIF bez použití patentovaných algoritmů LZW a pro kompresi zvolil otevřený a licenčně volný formát DEFLATE.

Jak mohu dekomprimovat surový soubor .deflate?

Surové datové proudy DEFLATE nebo zlib můžete dekomprimovat do původních nekomprimovaných souborů pomocí aplikace File2File.app přímo ve vašem webovém prohlížeči.