GZIP-arkiv (.gz)

IETF Standard

Gzip (GZ) är GNU:s standardverktyg för komprimering och filformat, med spridning i Unix-operativsystem och på HTTP-servrar på internet för snabb komprimering av filer och webbmaterial.

Konvertera TAR till GZ

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

Granska och metadata

Operativsystem och filanalysverktyg identifierar GZ-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 GZ-filer genom att granska den inledande sekvensen av binära byte:

HEX-SIGNATUR (OFFSET 0):

1F 8B 08

ASCII-REPRESENTATION: ..\x08

Standardisering: IETF RFC 1952

Tekniska specifikationer

Containerarkitektur10 byte långt huvud (signatur 0x1F 0x8B, metod 8, flaggor, mtime, OS), följt av DEFLATE-ström och 8 byte lång sidfot
KomprimeringDEFLATE-algoritm (LZ77-glidfönster och Huffman-kodning)
ByteordningLittle-endian-heltal i huvudet och avslutet
FärgrymderEj tillämpligt (arkivbehållare)
Kanaler och strukturKomprimerad byteström för en enda fil
Maximala dimensionerOkomprimerad storlek lagras modulo 2^32 (strömmen kan ha obegränsad längd)
Transparens100 % bitexakt, förlustfri bevaring av data
Strömning och progressiv visningSekventiell strömning i ett genomlopp via pipes och HTTP-nätverk

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

Tekniskt attributGZ (Aktuell)BZ2BROTLIZSTD
DekomprimeringshastighetSnabb (~300 MB/s)Långsam (~40 MB/s)Mycket snabb (~400 MB/s)Ultrasnabb (>1,5 GB/s)
Utbredd användning på webbenBrett stöd i webbläsare och servrar; innehållskodning förhandlas för varje begäranInget stöd i webbläsareStöds av många webbläsare via HTTPS; versionsstödet varierarVäxande stöd i webbläsare och servrar
Paketering av flera filerKräver TAR-behållare (.tar.gz)Kräver TAR-behållare (.tar.bz2)Rå ström eller anpassad behållareKräver TAR-behållare (.tar.zst)
Kontrollsummeverifiering32-bitars CRC (CRC-32)32-bitars CRC per blockIngen inbyggd i strömmen64-bitars xxHash

Vanliga skadeorsaker och hex-återställningsguide

Extraktionsfel: 'gzip: stdin: unexpected end of file'.

Grundorsak: Filöverföringen avbröts i förtid, vilket kapade DEFLATE-strömmen eller den 8 byte långa CRC32-sidfoten.

Återställning: Extrahera delar av innehållet med 'gzip -d --keep broken.gz' eller File2File.app Gzip Extractor.

Säkerhetsanalys och attackvektorer för tolkar

Gzip-parsare bearbetar användarkontrollerade huvuden och DEFLATE-bitströmmar som måste skyddas mot dekomprimeringsbomber.

Kända attackvektorer

  • Dekomprimeringsbomb (zip-bomb) som expanderar megabyte Gzip-data till hundratals gigabyte hårddiskutrymme.
  • Buffertspill vid läsning av strängen med det eventuella ursprungliga filnamnet i huvudet.
  • Heltalsspill vid jämförelse av 32-bitars CRC-kontroll.

Rekommenderade skyddsåtgärder: Tillämpa strikta gränser för dekomprimering och minnesåtgång i automatiserade tjänster för dataimport.

Historiskt ursprung och milstolpar

1996IETF formaliserar specifikationen för Gzip-filformatet som RFC 1952.
1993Antogs av GNU-projektet för att ersätta Unix proprietära 'compress'-verktyg (.Z-filer).
1992Jean-loup Gailly och Mark Adler skapar Gzip som ett patentfritt komprimeringsverktyg för rörelsen för fri programvara.

Viktiga fördelar

  • En vanligt förekommande HTTP-innehållskodning, men klienter och servrar kan förhandla fram andra kodningar eller ingen komprimering alls.
  • Bevarar ursprungliga tidsstämplar för filändringar och eventuella ursprungliga filnamn i det 10 byte långa huvudet.
  • Låg CPU-belastning vid dekomprimering, som körs smidigt på strömsnåla mobila enheter och routrar.

Tekniska begränsningar

  • Komprimerar endast en fil åt gången: flera filer eller kataloger måste först paketeras i ett TAR-arkiv.
  • Komprimeringsgraden är lägre än med moderna algoritmer som Brotli och Zstandard för modern webbtext.
  • Fältet i sidfoten för okomprimerad storlek är 32-bitars och lagrar värdet modulo 2^32, så visningen kan slå runt för filer över 4 GB.

Intressant teknisk kuriosa

  • De magiska bytena 0x1F 0x8B valdes eftersom 0x1F historiskt sett var den första byten i Unix 'compress'-filer, medan 0x8B identifierade Gzip.
  • Gzip är fortfarande ett vanligt val för att komprimera webbsvar; användningen varierar mellan webbplatser och svar.
  • Jean-loup Gailly skrev komprimeringskoden medan Mark Adler skrev dekomprimeringskoden (inflate); båda tilldelades ACM Software System Award.

Vanliga tekniska frågor

Varför kan jag inte komprimera en mapp med Gzip?

Gzip utformades för att komprimera en enda byteström. För att komprimera en mapp paketerar Unix-system först mappen i en enda .tar-fil och komprimerar den sedan med Gzip för att skapa en .tar.gz-fil.

Vad är skillnaden mellan .gz och .zip?

.zip är ett arkivformat som paketerar flera filer tillsammans med ett katalogindex. .gz komprimerar endast en enskild fil och kombineras vanligen med tar på Unix-system.

Hur kan jag dekomprimera en .gz-fil på Windows eller Mac?

Använd File2File.app för att omedelbart dekomprimera .gz-filer direkt i din webbläsare helt utan programvaruinstallation.