Ham DEFLATE (.deflate)
IETF StandartDEFLATE, otuz yılı aşkın süredir ZIP arşivlerini, GZIP akışlarını, PNG görüntülerini ve HTTP web sıkıştırmasını destekleyen, bilgi işlem tarihinin en yaygın kayıpsız veri sıkıştırma algoritmasıdır.
GZIP formatını DEFLATE formatına dönüştür
Ücretsiz tarayıcı içi GZIP - DEFLATE dönüştürücü. Dosyalarınızı cihazınızda anında dönüştürün.
İncele & Meta Veriler
İşletim sistemleri ve dosya çözümleyicileri, DEFLATE dosyalarını başlangıçtaki ikili bayt dizisini inceleyerek tanımlar:
Bayt Düzeyinde Başlık İmzası (Magic Bytes)
İşletim sistemleri ve dosya çözümleyicileri, DEFLATE dosyalarını başlangıçtaki ikili bayt dizisini inceleyerek tanımlar:
HEX İMZASI (OFSET 0):
78 9C / 78 01 / 78 DAASCII GÖSTERİMİ: xœ / x. / xÚ
Standardizasyon: IETF RFC 1951 / RFC 1950 (zlib)
Teknik Özellikler
| Konteyner Mimarisi | Raw RFC 1951 bitstream or RFC 1950 zlib-wrapped stream with 2-byte header and Adler-32 checksum |
| Sıkıştırma | LZ77 sliding dictionary (up to 32 KB window) combined with dynamic/static Huffman entropy coding |
| Bayt Düzeni (Endianness) | Little-Endian bit-packing order |
| Renk Uzayları | N/A (Data Compression Stream) |
| Kanallar ve Yapı | Raw binary or text data stream |
| Maksimum Boyutlar | Unbounded stream length |
| Şeffaflık | 100% bit-exact lossless data reproduction |
| Akış ve Aşamalı (Streaming & Progressive) | Block-based bitstream supports arbitrary continuous byte streaming |
Teknik Karşılaştırma Matrisi: DEFLATE ve Rakipleri
| Teknik Nitelik | DEFLATE (Güncel) | GZ | BROTLI | ZSTD |
|---|---|---|---|---|
| Standardizasyon | IETF RFC 1951 (Ham) / RFC 1950 (zlib) | IETF RFC 1952 (Gzip) | IETF RFC 7932 (Brotli) | IETF RFC 8878 (Zstandard) |
| Kayan Pencere (Sliding Window) | Maksimum 32 Kilobayt | Maksimum 32 Kilobayt | 16 Megabayt'a kadar | 2 Gigabayt'a kadar |
| Sağlama Toplamı Modu | Adler-32 (zlib sarmalayıcısında) | CRC-32 (gzip sarmalayıcısında) | Dahili akış yok | xxHash64 (64-bit hızlı hash) |
| Günlük Kullanım | PNG görselleri, PDF akışları, ZIP | Unix .tar.gz, HTTP gzip | Web fontları (WOFF2), HTTP br | Linux çekirdeği, veritabanları, oyun |
Yaygın Bozulma Modları ve Hex Kurtarma Kılavuzu
Dosya açma 'Z_DATA_ERROR: incorrect data check' hatasıyla başarısız oluyor.
Kök Neden: zlib sarmalayıcılı akışın sonundaki 4 baytlık Adler-32 sağlama toplamında uyuşmazlık.
Kurtarma: Ham inflate kullanarak Adler-32 doğrulamasını atlayın veya File2File Deflate Recovery ile onarın.
Güvenlik Analizi ve Ayrıştırıcı Saldırı Vektörleri
DEFLATE ayrıştırıcıları, sınır dışı işaretçi yazmalarını önlemek için Huffman ağacı oluşturma kodlarını kesinlikle doğrulamalıdır.
Bilinen Saldırı Vektörleri
- Geçersiz bellek okumalarına neden olan eksik veya aşırı rezerve edilmiş dinamik Huffman ağacı bit-uzunluk tabloları.
- Küçük yükleri yüzlerce gigabayt RAM'e genişleten sıkıştırma bombası (zip bombası).
- Doğrulanmamış kayan pencere mesafe kodları sırasında arabellek aşırı okuması (buffer over-read).
Savunmacı En İyi Uygulamalar:
Tarihsel Kökenler ve Kilometre Taşları
Temel Avantajlar ve Artılar
- Tartışmasız küresel standart: donanımda, işletim sistemlerinde ve her programlama çalışma zamanında uygulanmıştır.
- Patent ve telif ücreti içermeyen tasarımı, tüm bilgi işlem endüstrisinde açık erişimi garanti eder.
- Minimum bellek kaplama alanı ile hızlı dosya açma (yalnızca 32 KB kayan pencere belleği gerektirir).
Teknik Kısıtlamalar ve Eksiler
- Kayan pencere 32 KB ile sınırlıdır, bu da uzak tekrarları olan büyük dosyalarda sıkıştırma etkinliğini azaltır.
- Brotli ve Zstandard gibi yeni algoritmalara kıyasla modern web varlıklarında daha düşük sıkıştırma oranları.
- Ham DEFLATE akışları, zlib veya gzip sarmalayıcıları (wrapper) olmadan kendi kendini açıklayan meta verilerden veya kapsayıcı çerçevelerinden yoksundur.
İlginç Teknik Bilgiler
- Phil Katz, erken dönem PKARC yardımcı programlarında kullanılan patentli LZW algoritması nedeniyle Unisys tarafından dava edildikten sonra DEFLATE'i icat etti.
- Standart zlib başlık baytları '78 9C' varsayılan sıkıştırmayı, '78 01' düşük sıkıştırmayı ve '78 DA' maksimum sıkıştırmayı gösterir.
- Dünyadaki her PNG görüntüsü, IDAT piksel öbeklerini sıkıştırmak için DEFLATE kullanır.
Sıkça Sorulan Teknik Sorular
DEFLATE, zlib ve gzip arasındaki fark nedir?
DEFLATE ham sıkıştırma algoritmasıdır (RFC 1951). Zlib, DEFLATE'i 2 baytlık bir başlık ve Adler-32 sağlama toplamıyla sarmalar (RFC 1950). Gzip ise DEFLATE'i dosya meta verileri ve CRC-32 sağlama toplamıyla sarmalar (RFC 1952).
PNG neden DEFLATE kullanır?
PNG formatı, patentli LZW algoritmalarını kullanmadan GIF'in yerini almak üzere 1995 yılında oluşturulmuş ve sıkıştırma için açık, telifsiz DEFLATE'i seçmiştir.
Ham bir .deflate dosyasını nasıl açabilirim?
Doğrudan web tarayıcınızda File2File.app kullanarak ham DEFLATE veya zlib bayt akışlarını orijinal sıkıştırılmamış dosyalarına dönüştürebilirsiniz.
İlgili DEFLATE Dönüşüm Çiftleri
Bir GZIP akışını ham DEFLATE'e dönüştürmek, dış dosya başlığını ve sağlama toplamı izini soyarak geriye yalnızca düşük seviyeli web protokollerinin gerektirdiği sıkıştırılmış yükü bırakır.
Ham DEFLATE'i GZIP Akışına dönüştürmek, işletim sistemlerinin ve web araçlarının düzgün bir şekilde okuyabilmesi için sıkıştırılmış yükü meta veri başlıklarına sahip standart bir kapsayıcı içine sarar.