Rå DEFLATE (.deflate)

IETF Standard

DEFLATE er den utbredt tapsfrie datakomprimeringsalgoritmen i datateknologiens historie, og driver ZIP-arkiver, GZIP-strømmer, PNG-bilder og HTTP-nettkomprimering i over tre tiår.

Konverter GZIP til DEFLATE

Gratis GZIP til DEFLATE-konverterer i nettleseren. Konverter filer umiddelbart på enheten din.

Inspeksjon og metadata

Operativsystemer og filanalysatorer identifiserer DEFLATE-filer ved å undersøke den innledende binære bytesekvensen:

Velg eller slipp filer her

Privat - filer forlater aldri enheten din

eller lim inn Ctrl+V
Personverngaranti uten nettverksoverføring: 0 byte ble lastet opp til eksterne servere. All behandling foregikk lokalt i det isolerte nettlesermiljøet ditt.

Filsignatur på bytenivå (magiske byte)

Operativsystemer og filanalysatorer identifiserer DEFLATE-filer ved å undersøke den innledende binære bytesekvensen:

HEX-SIGNATUR (OFFSET 0):

Rå DEFLATE har ingen fast signatur; zlib-innpakkede strømmer begynner med variable CMF/FLG-byte

ASCII-REPRESENTASJON: Ingen fast signatur

Standardisering: IETF RFC 1951 / RFC 1950 (zlib)

Tekniske spesifikasjoner

BeholderarkitekturRå RFC 1951-bitstrøm eller strøm pakket inn i zlib-format (RFC 1950) med et 2-byte-hode og Adler-32-sjekksum
KomprimeringLZ77-glidende ordbok (vindu på opptil 32 KB) kombinert med dynamisk eller statisk Huffman-entropikoding
BytterekkefølgeLittle-endian-bitpakking
FargeromIkke relevant (datakomprimeringsstrøm)
Kanaler og strukturRå binær- eller tekststrøm
Maks. dimensjonerUbegrenset strømlengde
GjennomsiktighetTapsfri gjengivelse med nøyaktig samsvar på bitnivå
Strømming og progressiv visningBlokkbasert bitstrøm støtter kontinuerlig strømming av byte i vilkårlig lengde

Teknisk sammenligningsmatrise: DEFLATE sammenlignet med konkurrenter

Teknisk attributtDEFLATE (Gjeldende)GZBROTLIZSTD
StandardiseringIETF RFC 1951 (rå) / RFC 1950 (zlib)IETF RFC 1952 (Gzip)IETF RFC 7932 (Brotli)IETF RFC 8878 (Zstandard)
SkyvevinduMaks. 32 kilobyteMaks. 32 kilobyteOpptil 16 megabyteOpptil 2 gigabyte
SjekksummodusAdler-32 (i zlib-omslag)CRC-32 (i gzip-omslag)Ingen innebygd i strømmenxxHash64 (64-bits rask hashfunksjon)
HverdagsbrukPNG-bilder, PDF-strømmer, ZIPUnix .tar.gz, HTTP gzipWebfonter (WOFF2), HTTP brLinux-kjerne, databaser, spill

Vanlige korrupsjonsmoduser og heksadesimal gjenopprettingsveiledning

Dekompresjonen mislykkes med 'Z_DATA_ERROR: incorrect data check'.

Underliggende årsak: Avvik i den 4 byte lange Adler-32-sjekksummen på slutten av den zlib-innpakkede strømmen.

Utbedring: Omgå Adler-32-verifiseringen ved å bruke rå inflate, eller reparer med File2File.app Deflate Recovery.

Sikkerhetsanalyse og angrepsvektorer mot parsere

DEFLATE-tolkere må validere Huffman-trekonstruksjonskodene grundig for å hindre skriving via pekere utenfor gyldige minneområder.

Kjente angrepsvektorer

  • Ufullstendige eller overfylte dynamiske bitlengdetabeller for Huffman-trær som fører til ugyldige minneavlesninger.
  • Dekompresjonsbombe (zip-bombe) som utvider små datamengder til hundrevis av gigabyte RAM.
  • Buffer-overlesing i ugyldige avstandskoder for skyvevinduet.

Anbefalte sikkerhetstiltak: Håndhev begrenset maksimal minneallokering og ekspansjonsforholdstak under dekomprimering.

Historisk opprinnelse og milepæler

1996Peter Deutsch formaliserer DEFLATE som IETF RFC 1951 og zlib som RFC 1950.
1995Jean-loup Gailly og Mark Adler gir ut zlib.
1991Phil Katz finner opp DEFLATE for PKZIP 2.0 for å erstatte eldre Implode- og Reduce-algoritmer.

Viktige fordeler

  • DEFLATE er implementert i mange programvarebiblioteker og filformater, men tilgjengelig støtte avhenger av kjøremiljøet og programmet.
  • DEFLATE-spesifikasjonen kan implementeres fritt; lisensiering og støtte avhenger av den enkelte programvareimplementasjonen.
  • Rask dekomprimering med minimalt minneavtrykk (krever bare 32 KB minne til skyvevinduet).

Tekniske begrensninger og ulemper

  • Skyvevinduet er begrenset til 32 KB, noe som reduserer komprimeringseffektiviteten for store filer med redundans langt fra hverandre.
  • Lavere komprimeringsgrad for moderne nettinnhold sammenlignet med nyere algoritmer som Brotli og Zstandard.
  • Rå DEFLATE-strømmer mangler selvbeskrivende metadata eller innramming uten zlib- eller gzip-innpakning.

Interessante tekniske fakta

  • Phil Katz fant opp DEFLATE etter å ha blitt saksøkt av Unisys for den patenterte LZW-algoritmen som ble brukt i tidlige PKARC-verktøy.
  • Standardbytefølgen i zlib-toppteksten «78 9C» indikerer standard komprimering, «78 01» lav komprimering og «78 DA» maksimal komprimering.
  • Hvert eneste PNG-bilde på jorden bruker DEFLATE til å komprimere pikseldataene i IDAT-delene.

Ofte stilte tekniske spørsmål

Hva er forskjellen mellom DEFLATE, zlib og gzip?

DEFLATE er den rå komprimeringsalgoritmen (RFC 1951). Zlib pakker inn DEFLATE med et 2-byte-hode og en Adler-32-sjekksum (RFC 1950). Gzip pakker inn DEFLATE med filmetadata og en CRC-32-sjekksum (RFC 1952).

Hvorfor bruker PNG DEFLATE?

PNG-formatet ble opprettet i 1995 for å erstatte GIF uten å bruke patenterte LZW-algoritmer, og valgte DEFLATE som en åpen og royaltyfri komprimeringsmetode.

Hvordan kan jeg dekomprimere en rå .deflate-fil?

Du kan bruke File2File.app direkte i nettleseren til å dekomprimere rå DEFLATE- eller zlib-byte­strømmer til de opprinnelige, ukomprimerte filene.