Czym jest dekompresja GZIP?
GZIP to bezstratny format kompresji zdefiniowany przez RFC 1952. Dekompresja odwraca algorytm DEFLATE (RFC 1951) — odczytuje wstecznie odwołania LZ77 oraz symbole zakodowane Huffmanem, aby dokładnie odtworzyć oryginalne bajty.
Jak działa dekompresja GZIP?
Twoje dane są przetwarzane w całości w przeglądarce za pomocą natywnego API DecompressionStream('gzip'). Główne kroki to:
- Narzędzie interpretuje wejście jako Base64 lub hex (dla tekstu) albo odczytuje surowe bajty wgranego pliku .gz.
- 10-bajtowy nagłówek gzip jest walidowany, identyfikowana jest sekcja DEFLATE, a 8-bajtowa stopka (CRC32 + oryginalna długość modulo 2^32) jest odłożona do weryfikacji.
- Bajty są przekazywane przez
DecompressionStreamskonfigurowany dla formatugzip. - Przeglądarka odwraca DEFLATE: kody Huffmana są dekodowane z powrotem do symboli, a odwołania wsteczne LZ77 są rozwijane w oryginalny strumień bajtów.
- Strumień weryfikuje CRC32 i stopkę długości względem odzyskanych bajtów, a następnie wysyła je jako tekst UTF-8 w formularzu tekstowym lub jako plik do pobrania w formularzu przesyłania.
Dlaczego dekompresować tym narzędziem?
- Inspekcja odpowiedzi: czytaj ciała HTTP zakodowane w GZIP i ładunki CDN, które inne narzędzia pokazałyby jako szum binarny.
- Odzyskiwanie archiwów: wypakuj pliki dziennika .gz, zrzuty konfiguracji i elementy tarballa bez instalowania dodatkowego oprogramowania.
- Prywatność: dekompresja odbywa się w całości w Twojej przeglądarce. Dane nigdy nie trafiają na nasze serwery.
- Zgodność ze standardami: akceptuje dowolny strumień RFC 1952 wytworzony przez CLI
gzip, serwery HTTP lub standardowe biblioteki Pythona, Node.js, Go, Javy lub Rusta.
Jakie są typowe zastosowania dekompresji GZIP?
Dekompresja GZIP pojawia się w wielu zadaniach webowych i narzędziach:
- Debugowanie API: wklej surowe ciało odpowiedzi
Content-Encoding: gzip, aby zobaczyć leżący pod spodem JSON lub HTML. - Analiza dzienników: otwieraj rotowane pliki
.log.gz, aby przeszukiwać zdarzenia narzędziem grep bez pełnego potoku ekstrakcji. - Weryfikacja kopii zapasowych: zanim zaczniesz polegać na archiwum .gz utworzonym przez inne narzędzie, upewnij się, że dekompresuje się bezbłędnie.
Jak wygląda przykład dekompresji GZIP?
Łańcuch Base64 o długości 200 bajtów zaczynający się od H4sI to charakterystyczny znak nagłówka gzip — magiczne bajty 1f 8b kodują się właśnie do tych znaków. Wklejenie tego łańcucha i naciśnięcie DEKOMPRESUJ odtwarza oryginalny tekst bajt po bajcie, łącznie z białymi znakami i końcowymi przejściami do nowej linii.
Ten dekompresor GZIP przyjmuje dowolne wejście RFC 1952 i produkuje oryginalne bajty bezpośrednio w przeglądarce. Połącz go z Kompresorem GZIP, aby wykonać podróż tam i z powrotem na tekstach lub plikach bez opuszczania strony.