Archivio GZIP (.gz)

IETF Standard

Gzip (GZ) è l'utilità e il formato di file di compressione GNU standard, distribuito universalmente su sistemi operativi Unix e server web HTTP per la compressione rapida di file e risorse web.

Converti da TAR a GZ

Convertitore gratuito da TAR a GZ nel browser. Converti i file istantaneamente sul tuo dispositivo.

Ispeziona e metadati

I sistemi operativi e gli analizzatori di file identificano i file GZ ispezionando la sequenza di byte binari iniziale:

Seleziona o rilascia i file qui

Conversione 100% privata nel browser: i file non lasciano mai il tuo dispositivo

o incolla Ctrl+V
Garanzia di privacy con zero trasmissioni di rete: 0 byte caricati su server esterni. Tutta l'elaborazione è avvenuta localmente nella sandbox del tuo browser.

Firma dell'intestazione a livello di byte (Magic Bytes)

I sistemi operativi e gli analizzatori di file identificano i file GZ ispezionando la sequenza di byte binari iniziale:

FIRMA ESADECIMALE (OFFSET 0):

1F 8B 08

RAPPRESENTAZIONE ASCII: ..\x08

Standardizzazione: IETF RFC 1952

Specifiche tecniche

Architettura del containerIntestazione di 10 byte (magic 0x1F 0x8B, metodo 8, flag, mtime, OS) seguita dallo stream DEFLATE e da un piè di pagina di 8 byte
CompressioneAlgoritmo DEFLATE (finestra scorrevole LZ77 + codifica di Huffman)
Endianness dei byteIntestazione e piè di pagina interi in formato Little-Endian
Spazi coloreN/A (Contenitore di Archiviazione)
Canali e strutturaFlusso di byte compressi a file singolo
Dimensioni massimeDimensione non compressa registrata modulo 2^32 (supporta lunghezze di stream illimitate)
TrasparenzaConservazione dei dati lossless al 100% bit-esatta
Streaming e progressivoRiproduzione in streaming sequenziale a passaggio singolo su pipe e reti HTTP

Matrice di confronto tecnico: GZ vs Concorrenti

Attributo tecnicoGZ (Corrente)BZ2BROTLIZSTD
Velocità di DecompressioneVeloce (~300 MB/s)Lenta (~40 MB/s)Molto veloce (~400 MB/s)Ultra-veloce (>1.5 GB/s)
Adozione Web Universale100% di tutti i browser e serverNessun supporto nei browser webSupportato tramite HTTPS in tutti i browserSupporto crescente su browser e server
Packaging Multi-FileRichiede un contenitore TAR (.tar.gz)Richiede un contenitore TAR (.tar.bz2)Stream grezzo o contenitore personalizzatoRichiede un contenitore TAR (.tar.zst)
Verifica del ChecksumCRC a 32-bit (CRC-32)CRC a 32-bit per bloccoNessuno integrato nello streamxxHash a 64-bit

Modalità di corruzione comuni e guida al recupero Hex

Errore di estrazione: 'gzip: stdin: unexpected end of file'.

Causa principale: Terminazione prematura del trasferimento del file che interrompe lo stream DEFLATE o il piè di pagina CRC32 di 8 byte.

Ripristino: Estrarre i contenuti parziali utilizzando 'gzip -d --keep broken.gz' o File2File Gzip Extractor.

Analisi di sicurezza e vettori di attacco del parser

I parser Gzip elaborano intestazioni controllate dall'utente e flussi di bit DEFLATE che devono essere protetti contro le bombe di decompressione.

Vettori di attacco noti

  • Bomba di decompressione (zip bomb) che espande megabyte di dati Gzip in centinaia di gigabyte di spazio su disco.
  • Buffer overflow durante la lettura della stringa opzionale del nome file originale dall'intestazione.
  • Overflow di interi durante il confronto del controllo CRC a 32-bit.

Migliori pratiche difensive: Applicare quote di decompressione rigorose e limiti di soglia della memoria nei servizi di inserimento automatici.

Origini storiche e tappe fondamentali

1996L'IETF formalizza la specifica del formato di file Gzip come RFC 1952.
1993Adottato dal Progetto GNU per sostituire l'utilità proprietaria Unix 'compress' (file .Z).
1992Jean-loup Gailly e Mark Adler creano Gzip come strumento di compressione privo di brevetti per il movimento del software libero.

Vantaggi principali e pro

  • Il punto di riferimento universale per la compressione HTTP sul web ('Content-Encoding: gzip') supportato dal 100% dei client web.
  • Conserva i timestamp di modifica originali del file e i nomi file originali opzionali all'interno dell'intestazione di 10 byte.
  • Impatto ridotto sulla CPU durante la decompressione, eseguendosi fluidamente su dispositivi mobili a basso consumo e router.

Limiti tecnici e svantaggi

  • Compressione a file singolo: non è possibile comprimere più file o directory senza prima raggrupparli in un contenitore TAR.
  • Il rapporto di compressione è inferiore rispetto agli algoritmi moderni come Brotli e Zstandard sui testi web moderni.
  • Il campo della dimensione non compressa nel piè di pagina è a 32-bit modulo 2^32, causando bug di rollover della visualizzazione su file di dimensioni superiori a 4 GB.

Curiosità tecniche interessanti

  • I byte magici 0x1F 0x8B sono stati scelti perché 0x1F era storicamente il primo byte dei file 'compress' di Unix, mentre 0x8B identificava Gzip.
  • Oltre l'80% di tutti i siti web su Internet utilizza la compressione Gzip per consegnare le pagine web ai browser.
  • Jean-loup Gailly ha scritto il codice di compressione mentre Mark Adler ha scritto il codice di decompressione (inflate); entrambi hanno ricevuto il premio ACM Software System Award.

Domande tecniche frequenti

Perché non posso comprimere una cartella con Gzip?

Gzip è stato progettato per comprimere un singolo flusso di byte. Per comprimere una cartella, i sistemi Unix prima raggruppano la cartella in un singolo file .tar, quindi la comprimono con Gzip per creare un file .tar.gz.

Qual è la differenza tra .gz e .zip?

.zip è un formato di archivio che pacchettizza più file insieme a un indice di directory. .gz comprime solo un singolo file ed è comunemente associato a tar sui sistemi Unix.

Come posso decomprimere un file .gz su Windows o Mac?

Usa File2File.app per decomprimere istantaneamente i file .gz direttamente nel tuo browser web senza alcuna installazione di software.