DEFLATE Mentah (.deflate)
IETF StandarDEFLATE adalah algoritma kompresi data lossless yang banyak digunakan dalam sejarah komputasi, mendukung arsip ZIP, aliran GZIP, gambar PNG, dan kompresi web HTTP selama lebih dari tiga dekade.
Konversi GZIP ke DEFLATE
Konverter GZIP ke DEFLATE gratis yang berjalan di peramban. Konversikan berkas secara instan di perangkat Anda.
Pemeriksaan & Metadata
Sistem operasi dan penganalisis file mengenali file DEFLATE dengan memeriksa urutan byte biner di bagian awal:
Tanda Tangan Header per Byte (Byte Penanda)
Sistem operasi dan penganalisis file mengenali file DEFLATE dengan memeriksa urutan byte biner di bagian awal:
TANDA TANGAN HEX (OFFSET 0):
DEFLATE mentah tidak memiliki tanda tangan tetap; aliran berbungkus zlib dimulai dengan byte CMF/FLG yang bervariasiREPRESENTASI ASCII: Tidak memiliki tanda tangan tetap
Standardisasi: IETF RFC 1951 / RFC 1950 (zlib)
Spesifikasi Teknis
| Arsitektur Kontainer | Bitstream mentah RFC 1951 atau aliran berbungkus zlib RFC 1950 dengan header 2 byte dan checksum Adler-32 |
| Kompresi | Kamus LZ77 jendela geser (hingga 32 KB) yang dipadukan dengan pengodean entropi Huffman dinamis/statis |
| Urutan Byte | Urutan pengemasan bit Little-Endian |
| Ruang Warna | Tidak berlaku (aliran kompresi data) |
| Saluran & Struktur | Aliran data biner mentah atau teks |
| Dimensi Maksimum | Panjang aliran tanpa batas |
| Transparansi | Reproduksi data lossless yang persis bit demi bit 100% |
| Streaming & Progresif | Bitstream berbasis blok yang mendukung streaming byte berkelanjutan secara arbitrer |
Perbandingan Teknis DEFLATE dengan Pesaing
| Atribut Teknis | DEFLATE (Saat Ini) | GZ | BROTLI | ZSTD |
|---|---|---|---|---|
| Standardisasi | IETF RFC 1951 (Mentah) / RFC 1950 (zlib) | IETF RFC 1952 (Gzip) | IETF RFC 7932 (Brotli) | IETF RFC 8878 (Zstandard) |
| Jendela Geser | Maksimal 32 Kilobyte | Maksimal 32 Kilobyte | Hingga 16 Megabyte | Hingga 2 Gigabyte |
| Mode Checksum | Adler-32 (dalam pembungkus zlib) | CRC-32 (dalam pembungkus gzip) | Tidak ada checksum bawaan dalam aliran | xxHash64 (hash cepat 64-bit) |
| Penggunaan sehari-hari | Gambar PNG, aliran PDF, berkas ZIP | Unix .tar.gz, HTTP gzip | Font web (WOFF2), HTTP br | Kernel Linux, database, game |
Pola Kerusakan Umum dan Panduan Pemulihan Hex
Dekompresi gagal dengan pesan 'Z_DATA_ERROR: incorrect data check'.
Penyebab Utama: Ketidakcocokan pada checksum Adler-32 berukuran 4 byte di bagian akhir aliran yang dibungkus zlib.
Pemulihan: Lewati verifikasi Adler-32 menggunakan inflate mentah atau perbaiki dengan Pemulihan DEFLATE File2File.app.
Analisis Keamanan & Vektor Serangan Parser
Pengurai DEFLATE harus secara ketat memvalidasi kode konstruksi pohon Huffman untuk mencegah penulisan pointer di luar batas.
Vektor Serangan yang Diketahui
- Tabel panjang bit pohon Huffman dinamis yang tidak lengkap atau memiliki kode panjang bit berlebih yang menyebabkan pembacaan memori yang tidak valid.
- Bom dekompresi (bom ZIP) yang mengembangkan payload kecil hingga menghabiskan RAM ratusan gigabita.
- Pembacaan berlebih buffer (buffer over-read) dalam kode jarak jendela geser yang tidak valid.
Praktik Terbaik Defensif: Batasi alokasi memori maksimum dan rasio ekspansi selama dekompresi.
Asal-Usul & Tonggak Sejarah
Keunggulan & Kelebihan Utama
- Standar global yang tak terbantahkan: diimplementasikan dalam perangkat keras, sistem operasi, dan setiap lingkungan runtime bahasa pemrograman.
- Desain bebas paten dan bebas royalti yang menjamin akses terbuka di seluruh industri komputasi.
- Dekompresi cepat dengan jejak memori minimal (hanya membutuhkan memori jendela geser 32 KB).
Keterbatasan Teknis & Kekurangan
- Jendela geser terbatas pada 32 KB, mengurangi efektivitas kompresi pada file besar dengan redundansi yang berjauhan.
- Rasio kompresi yang lebih rendah pada aset web modern dibandingkan dengan algoritma yang lebih baru seperti Brotli dan Zstandard.
- Aliran DEFLATE mentah tidak memiliki metadata deskriptif mandiri atau pembingkaian kontainer tanpa pembungkus zlib atau gzip.
Fakta Teknis Menarik
- Phil Katz menemukan DEFLATE setelah digugat oleh Unisys atas algoritma LZW yang dipatenkan yang digunakan pada utilitas PKARC awal.
- Byte header standar zlib '78 9C' menunjukkan kompresi default, '78 01' kompresi rendah, dan '78 DA' kompresi maksimum.
- Setiap gambar PNG di bumi menggunakan DEFLATE untuk mengompresi blok piksel IDAT miliknya.
Pertanyaan Teknis yang Sering Diajukan
Apa perbedaan antara DEFLATE, zlib, dan gzip?
DEFLATE adalah algoritma kompresi mentah (RFC 1951). Zlib membungkus DEFLATE dengan header 2 byte dan checksum Adler-32 (RFC 1950). Gzip membungkus DEFLATE dengan metadata file dan checksum CRC-32 (RFC 1952).
Mengapa PNG menggunakan DEFLATE?
Format PNG dibuat pada tahun 1995 untuk menggantikan GIF tanpa menggunakan algoritma LZW yang dipatenkan, dengan memilih DEFLATE yang terbuka dan bebas royalti untuk kompresinya.
Bagaimana cara mendekompresi file .deflate mentah?
Anda dapat mendekompresi aliran byte DEFLATE mentah atau zlib menjadi file asli tanpa kompresi menggunakan File2File.app langsung di peramban web.
Pasangan Konversi DEFLATE Terkait
Mengubah Aliran GZIP menjadi Raw DEFLATE menghapus pembungkus berkas luar dan metadata tajuk, menyisakan hanya muatan terkompresi untuk protokol jaringan khusus dan arsip tingkat rendah.
Mengonversi DEFLATE mentah ke aliran GZIP membungkus muatan terkompresi di dalam wadah standar dengan tajuk metadata sehingga sistem operasi dan alat web dapat membacanya dengan benar.