Конвертер сирого потоку DEFLATE у потік GZIP

Конвертація сирого потоку DEFLATE у потік GZIP загортає стиснене навантаження всередину стандартного контейнера із заголовками метаданих, щоб операційні системи та веб-інструменти могли його належним чином прочитати.

Виберіть або перетягніть файли

Виберіть або перетягніть файли сюди

100% приватна конвертація у браузері - файли ніколи не покидають ваш пристрій

або вставте Ctrl+V
Гарантія конфіденційності з нульовою передачею мережею: 0 байт завантажено на зовнішні сервери. Уся обробка виконується локально в пісочниці вашого браузера.

Порівняння форматів та технічні характеристики

СпецифікаціяDEFLATEGZIP
MIME-типapplication/zlibapplication/gzip
Типraw DEFLATE streamDEFLATE stream container
СтисненняLZ77 + Huffman codingDEFLATE (RFC 1951)
Стандартна специфікаціяIETF RFC 1950 / RFC 1951IETF RFC 1952
Заголовок Magic Bytes78 01 / 78 9C / 78 DA (zlib header bytes)1F 8B (gzip ID1/ID2)

Огляд формату та застосування

Потоки сирих даних DEFLATE містять стиснені байти без жодних заголовків файлів або кінцевих контрольних сум. Веббраузери та мережеві інструменти часто стикаються з труднощами під час обробки цих «голих» потоків, оскільки їм бракує метаданих, таких як оригінальні імена файлів, мітки часу модифікації чи ідентифікатори операційної системи. Загортання цих сирих даних у контейнер GZIP вирішує ці проблеми сумісності. Розробники стикаються з сирими потоками DEFLATE всередині мережевих протоколів, таких як HTTP-стиснення, фрагменти зображень PNG та архіви ZIP. Коли ці потоки потрібно зберегти як окремі файли для інструментів командного рядка або стандартних вебзавантажень, інженери конвертують їх у формат GZIP. Це гарантує, що утиліти декомпресії миттєво розпізнають тип файлу та витягують вміст без виведення помилок.

Технічні специфікації та розбір кодеків

Сирий DEFLATE (application/zlib або сирий потік) використовує комбінацію пошуку зі скомпонованим словником LZ77 та кодування Хаффмана для стиснення послідовностей байтів без будь-яких заголовків обрамлення. Контейнер GZIP (application/gzip) бере це точне корисне навантаження DEFLATE і загортає його суворим 10-байтовим заголовком, що містить двобайтовий підпис магічного числа (0x1F, 0x8B), прапорці методу стиснення, час модифікації та ідентифікатор операційної системи. Структура GZIP також додає 8-байтовий хвіст, що містить контрольну суму CRC32 для перевірки цілісності даних та розмір нестисненого файлу за модулем 2 у 32-му степені.

Сумісність з ОС та браузерами

Потоки GZIP можуть похвалитися універсальною сумісністю в сучасних операційних системах, включаючи Linux, macOS та Windows. Інструменти командного рядка, такі як gzip, gunzip та 7-Zip, нативно читають файли GZIP. Веббраузери автоматично обробляють декомпресію GZIP при отриманні HTTP-відповідей від серверів, хоча сирий DEFLATE часто вимагає спеціальної логіки синтаксичного аналізу всередині середовищ JavaScript або модулів WebAssembly.

💡 Корисна інформація

Завжди перевіряйте, чи ваш інструмент декомпресії правильно читає хвіст GZIP, оскільки пошкоджені кінцеві контрольні суми CRC32 змусять утиліти вилучення перервати роботу, навіть якщо базове корисне навантаження DEFLATE є цілим.

Порівняння форматів та технічні характеристики

Сирий потік DEFLATE розміром 10 МБ, конвертований у файл GZIP, додає крихітні 18 байтів накладних витрат на заголовки та хвости. Передача цього файлу займає близько 0.04 секунди через з'єднання 5G, приблизно 0.2 секунди в стандартній мережі 4G і менше ніж 0.01 секунди через волоконно-оптичне з'єднання Gigabit.

Поширені запитання

Як конвертувати сирий потік DEFLATE у потік GZIP без втрати якості?

Обидва формати використовують стиснення без втрат на основі абсолютно того ж алгоритму DEFLATE. Конвертація між ними просто додає заголовки контейнера та контрольні суми навколо існуючих стиснених байтів, що означає відсутність будь-яких втрат даних під час процесу загортання.

У чому різниця між сирим потоком DEFLATE та потоком GZIP?

Сирий DEFLATE містить лише стиснене навантаження без будь-яких ідентифікаційних заголовків чи нижніх колонтитулів. Потік GZIP - це стандартизований контейнер файлів, який додає 10-байтовий заголовок і 8-байтову контрольну суму в кінці до сирих даних DEFLATE для відстеження метаданих та виявлення помилок.