Konwerter surowego strumienia DEFLATE na GZIP

Konwersja surowego strumienia DEFLATE na strumień GZIP pakuje skompresowany ładunek w standardowy kontener z nagłówkami metadanych, dzięki czemu systemy operacyjne i narzędzia sieciowe mogą go poprawnie odczytać.

Wybierz lub przeciągnij pliki

Wybierz lub upuść pliki tutaj

Konwersja w 100% prywatna w przeglądarce - pliki nigdy nie opuszczają Twojego urządzenia

lub wklej Ctrl+V
Gwarancja prywatności bez przesyłania danych do sieci: 0 bajtów przesłanych na zewnętrzne serwery. Całe przetwarzanie odbyło się lokalnie w piaskownicy przeglądarki.

Porównanie formatów i specyfikacja techniczna

SpecyfikacjaDEFLATEGZIP
Typ MIMEapplication/zlibapplication/gzip
Typraw DEFLATE streamDEFLATE stream container
KompresjaLZ77 + Huffman codingDEFLATE (RFC 1951)
Standardowa specyfikacjaIETF RFC 1950 / RFC 1951IETF RFC 1952
Nagłówek magic bytes78 01 / 78 9C / 78 DA (zlib header bytes)1F 8B (gzip ID1/ID2)

Przegląd formatu i zastosowania

Surowe strumienie danych DEFLATE zawierają skompresowane bajty bez żadnych nagłówków plików ani sum kontrolnych. Przeglądarki internetowe i narzędzia sieciowe często mają problem z przetwarzaniem tych nagich strumieni, ponieważ brakuje im metadanych, takich jak oryginalne nazwy plików, znaczniki czasu modyfikacji czy identyfikatory systemów operacyjnych. Umieszczenie tych surowych danych w kontenerze GZIP rozwiązuje te problemy z kompatybilnością. Programiści napotykają surowe strumienie DEFLATE w protokołach sieciowych, takich jak kompresja HTTP, fragmenty obrazów PNG i archiwa ZIP. Kiedy te strumienie muszą zostać zapisane jako samodzielne pliki dla narzędzi wiersza poleceń lub standardowych pobrań z internetu, inżynierowie konwertują je do formatu GZIP. Zapewnia to, że narzędzia dekompresyjne natychmiast rozpoznają typ pliku i rozpakują zawartość bez zgłaszania błędów.

Specyfikacja techniczna i analiza kodeków

Surowy format DEFLATE (application/zlib lub strumień surowy) wykorzystuje kombinację dopasowywania przesuwnych słowników LZ77 i kodowania Huffmana do kompresowania sekwencji bajtów bez żadnych nagłówków ramkowania. Kontener GZIP (application/gzip) pobiera ten dokładny ładunek DEFLATE i owija go ścisłym 10-bajtowym nagłówkiem zawierającym dwubajtową sygnaturę liczby magicznej (0x1F, 0x8B), flagi metody kompresji, czas modyfikacji oraz identyfikator systemu operacyjnego. Struktura GZIP dołącza również 8-bajtowy zwiastun zawierający sumę kontrolną CRC32 do weryfikacji integralności danych oraz rozmiar nieskompresowanego pliku modulo 2 do potęgi 32.

Zgodność z systemami operacyjnymi i przeglądarkami

Strumienie GZIP mogą pochwalić się uniwersalną kompatybilnością w nowoczesnych systemach operacyjnych, w tym Linux, macOS i Windows. Narzędzia wiersza poleceń, takie jak gzip, gunzip i 7-Zip, natywnie odczytują pliki GZIP. Przeglądarki internetowe automatycznie obsługują dekompresję GZIP po otrzymaniu odpowiedzi HTTP od serwerów, chociaż surowy DEFLATE często wymaga niestandardowej logiki analizatora w środowiskach JavaScript lub modułach WebAssembly.

💡 Przydatne informacje

Zawsze upewnij się, że narzędzie dekompresyjne poprawnie odczytuje zwiastun GZIP, ponieważ uszkodzone końcowe sumy kontrolne CRC32 spowodują przerwanie działania narzędzi wyodrębniających, nawet jeśli leżący u ich podstaw ładunek DEFLATE jest nienaruszony.

Porównanie formatów i specyfikacja techniczna

Surowy strumień DEFLATE o rozmiarze 10 MB przekonwertowany do pliku GZIP dodaje zaledwie 18 bajtów narzutu na nagłówki i zwiastuny. Przesłanie tego pliku zajmuje około 0,04 sekundy w połączeniu 5G, mniej więcej 0,2 sekundy w standardowej sieci 4G i poniżej 0,01 sekundy w gigabitowej sieci światłowodowej.

Często zadawane pytania

Jak przekonwertować surowy strumień DEFLATE na strumień GZIP bez utraty jakości?

Oba formaty wykorzystują kompresję bezstratną opartą na dokładnie tym samym algorytmie DEFLATE. Konwersja między nimi polega po prostu na dodaniu nagłówków kontenera i sum kontrolnych wokół istniejących skompresowanych bajtów, co oznacza, że podczas procesu pakowania nie dochodzi do żadnej utraty danych.

Czym różni się surowy strumień DEFLATE od strumienia GZIP?

Surowy DEFLATE zawiera tylko skompresowany ładunek bez żadnych nagłówków lubzy stopki identyfikacyjnych. Strumień GZIP to zstandardowany kontener plików, który dodaje 10-bajtowy nagłówek i 8-bajtowy zwiastun z sumą kontrolną do surowych danych DEFLATE w celu śledzenia metadanych i wykrywania błędów.