Arsip GZIP (.gz)
IETF StandarGzip (GZ) adalah utilitas kompresi dan format file GNU standar, yang diterapkan secara universal di seluruh sistem operasi Unix dan server web HTTP untuk kompresi file dan aset web yang cepat.
Konversi TAR ke GZ
Pengonversi TAR ke GZ gratis di dalam peramban. Konversi berkas secara instan di perangkat Anda.
Periksa & Metadata
Sistem operasi dan penganalisis file mengidentifikasi file GZ dengan memeriksa urutan byte biner utama:
Tanda Tangan Header Tingkat-Byte (Magic Bytes)
Sistem operasi dan penganalisis file mengidentifikasi file GZ dengan memeriksa urutan byte biner utama:
SIGNATURE HEX (OFFSET 0):
1F 8B 08REPRESENTASI ASCII: ..\x08
Standardisasi: IETF RFC 1952
Spesifikasi Teknis
| Arsitektur Wadah | 10-byte header (magic 0x1F 0x8B, method 8, flags, mtime, OS) followed by DEFLATE stream and 8-byte footer |
| Kompresi | DEFLATE algorithm (LZ77 sliding window + Huffman coding) |
| Endianness Byte | Little-Endian header and footer integers |
| Ruang Warna | N/A (Archive Container) |
| Saluran & Struktur | Single-file compressed byte stream |
| Dimensi Maks | Uncompressed size recorded modulo 2^32 (supports unbounded stream lengths) |
| Transparansi | 100% bit-exact lossless data preservation |
| Streaming & Progresif | Sequential single-pass streaming playback over pipes and HTTP networks |
Matriks Perbandingan Teknis: GZ vs Pesaing
| Atribut Teknis | GZ (Saat Ini) | BZ2 | BROTLI | ZSTD |
|---|---|---|---|---|
| Kecepatan Dekompresi | Cepat (~300 MB/s) | Lambat (~40 MB/s) | Sangat Cepat (~400 MB/s) | Sangat Cepat (>1.5 GB/s) |
| Adopsi Web Universal | 100% dari semua browser & server | Nol dukungan browser web | Didukung melalui HTTPS di semua browser | Pertumbuhan dukungan browser & server |
| Pengemasan Multi-File | Memerlukan wadah TAR (.tar.gz) | Memerlukan wadah TAR (.tar.bz2) | Aliran mentah atau wadah kustom | Memerlukan wadah TAR (.tar.zst) |
| Verifikasi Checksum | CRC 32-bit (CRC-32) | CRC 32-bit per blok | Tidak ada yang dibangun ke dalam aliran | xxHash 64-bit |
Mode Kerusakan Umum & Panduan Pemulihan Hex
Kesalahan ekstraksi: 'gzip: stdin: unexpected end of file'.
Penyebab Utama: Penghentian transfer file prematur yang memotong aliran DEFLATE atau footer CRC32 8-byte.
Pemulihan: Ekstrak sebagian konten menggunakan 'gzip -d --keep broken.gz' atau Ekstraktor Gzip File2File.
Analisis Keamanan & Vektor Serangan Parser
Pengurai Gzip memproses header yang dikendalikan pengguna dan bitstream DEFLATE yang harus dilindungi terhadap bom dekompresi.
Vektor Serangan yang Diketahui
- Bom dekompresi (zip bomb) yang memperluas megabyte data Gzip menjadi ratusan gigabyte ruang disk.
- Buffer overflow saat membaca string nama file asli opsional dari header.
- Limpahan bilangan bulat (integer overflow) selama perbandingan pemeriksaan CRC 32-bit.
Praktik Terbaik Defensif:
Asal-Usul & Tonggak Sejarah
Keunggulan & Kelebihan Utama
- Patokan universal untuk kompresi HTTP internet ('Content-Encoding: gzip') yang didukung oleh 100% klien web.
- Mempertahankan waktu modifikasi file asli dan nama file asli opsional di dalam header 10-byte.
- Jejak CPU yang ringan selama dekompresi, berjalan lancar di perangkat seluler dan router berdaya rendah.
Keterbatasan Teknis & Kekurangan
- Kompresi file tunggal saja: tidak dapat mengompresi beberapa file atau direktori tanpa terlebih dahulu membungkusnya ke dalam wadah TAR.
- Rasio kompresi lebih rendah daripada algoritma modern seperti Brotli dan Zstandard pada teks web modern.
- Kolom ukuran tidak terkompresi di bagian footer adalah modulo 32-bit 2^32, yang menyebabkan bug tampilan rollover pada file yang lebih besar dari 4 GB.
Fakta Teknis Menarik
- Byte ajaib 0x1F 0x8B dipilih karena secara historis 0x1F adalah byte pertama dari file 'compress' Unix, sedangkan 0x8B mengidentifikasi Gzip.
- Lebih dari 80% dari semua situs web di internet menggunakan kompresi Gzip untuk mengirimkan halaman web ke browser.
- Jean-loup Gailly menulis kode kompresi sementara Mark Adler menulis kode dekompresi (inflate); keduanya menerima Penghargaan Sistem Perangkat Lunak ACM.
Pertanyaan Teknis yang Sering Diajukan
Mengapa saya tidak dapat mengompresi folder dengan Gzip?
Gzip dirancang untuk mengompresi satu aliran byte saja. Untuk mengompresi folder, sistem Unix terlebih dahulu menggabungkan folder tersebut menjadi satu file .tar, lalu mengompresinya dengan Gzip untuk membuat file .tar.gz.
Apa perbedaan antara .gz dan .zip?
.zip adalah format arsip yang mengemas beberapa file menjadi satu beserta indeks direktori. .gz hanya mengompresi satu file dan biasanya dipasangkan dengan tar pada sistem Unix.
Bagaimana cara mendekompresi file .gz di Windows atau Mac?
Gunakan File2File.app untuk langsung mendekompresi file .gz di peramban web Anda tanpa perlu menginstal perangkat lunak apa pun.
Pasangan Konversi GZ Terkait
Mengonversi arsip TAR ke arsip GZIP membungkus kumpulan file yang tidak dikompresi menjadi satu aliran terkompresi menggunakan algoritma DEFLATE tanpa kehilangan untuk secara dramatis mengurangi ukuran file.
Mengonversi file terkompresi GZIP ke arsip TAR menghapus lapisan kompresi untuk mengekspos kumpulan file dan folder mentah yang tidak dikompresi.