GZIP डीकम्प्रेशन क्या है?
GZIP RFC 1952 द्वारा परिभाषित एक लॉसलेस संपीड़न फ़ाइल प्रारूप है। डीकंप्रेशन DEFLATE एल्गोरिथम (RFC 1951) को उलट देता है — LZ77 संदर्भों और Huffman-कोडित प्रतीकों को वापस पढ़कर मूल बाइट्स को सटीक रूप से पुनर्निर्मित करता है।
GZIP डीकम्प्रेशन कैसे काम करता है?
आपका इनपुट पूरी तरह से आपके ब्राउज़र में नेटिव DecompressionStream('gzip') API का उपयोग करके संसाधित किया जाता है। उच्च-स्तरीय चरण इस प्रकार हैं:
- टूल आपके इनपुट को Base64 या hex के रूप में पार्स करता है (टेक्स्ट के लिए) या आप जो .gz फ़ाइल अपलोड करते हैं उसके कच्चे बाइट्स पढ़ता है।
- 10-बाइट gzip हेडर मान्य किया जाता है, DEFLATE पेलोड की पहचान की जाती है, और 8-बाइट फ़ुटर (CRC32 + मूल लंबाई 2^32 के संदर्भ में) सत्यापन के लिए अलग रखा जाता है।
- बाइट्स को
gzipप्रारूप के लिए कॉन्फ़िगर किए गएDecompressionStreamके माध्यम से भेजा जाता है। - ब्राउज़र DEFLATE को उलटता है: Huffman कोड वापस प्रतीकों में डिकोड किए जाते हैं और LZ77 बैक-रेफरेंस मूल बाइट स्ट्रीम में विस्तारित किए जाते हैं।
- स्ट्रीम पुनर्प्राप्त बाइट्स के विरुद्ध CRC32 और लंबाई फ़ुटर की पुष्टि करता है, फिर उन्हें टेक्स्ट फ़ॉर्म में UTF-8 टेक्स्ट के रूप में या अपलोड फ़ॉर्म में डाउनलोड करने योग्य फ़ाइल के रूप में उत्सर्जित करता है।
इस टूल से डीकम्प्रेस क्यों करें?
- प्रतिक्रियाओं का निरीक्षण करें: GZIP-एन्कोडेड HTTP बॉडी और CDN पेलोड पढ़ें जिन्हें अन्य टूल बाइनरी शोर के रूप में प्रदर्शित करते।
- संग्रह पुनर्प्राप्त करें: अतिरिक्त सॉफ़्टवेयर स्थापित किए बिना .gz लॉग फ़ाइलें, कॉन्फ़िगरेशन डंप और टारबॉल घटक निकालें।
- गोपनीयता: डीकंप्रेशन पूरी तरह से आपके ब्राउज़र में होता है। इनपुट कभी भी हमारे सर्वर तक नहीं पहुँचता।
- मानक-अनुरूप:
gzipCLI द्वारा, HTTP सर्वरों द्वारा, या Python, Node.js, Go, Java, या Rust की मानक लाइब्रेरीज़ द्वारा निर्मित किसी भी RFC 1952 स्ट्रीम को स्वीकार करता है।
GZIP डीकम्प्रेशन के सामान्य अनुप्रयोग क्या हैं?
GZIP डीकंप्रेस करना वेब काम और टूलिंग में बहुत दिखता है:
- API डिबगिंग: अंतर्निहित JSON या HTML देखने के लिए कच्चा
Content-Encoding: gzipरिस्पॉन्स बॉडी पेस्ट करें। - लॉग फ़ोरेंसिक: पूर्ण निष्कर्षण पाइपलाइन के बिना घटनाओं के लिए grep करने हेतु रोटेट किए गए
.log.gzफ़ाइलें खोलें। - बैकअप सत्यापित करना: किसी अन्य टूल द्वारा बनाए गए .gz संग्रह पर भरोसा करने से पहले पुष्टि करें कि वह साफ़-साफ़ डीकंप्रेस होता है।
GZIP डीकम्प्रेशन का उदाहरण कैसा दिखता है?
H4sI से शुरू होने वाली 200 बाइट की Base64 स्ट्रिंग gzip हेडर का विशिष्ट संकेत है — मैजिक बाइट्स 1f 8b इन्हीं वर्णों में एन्कोड होते हैं। उस स्ट्रिंग को पेस्ट करके डीकंप्रेस दबाने पर मूल टेक्स्ट बाइट-दर-बाइट सटीक रूप से पुनः प्रस्तुत होता है, जिसमें व्हाइटस्पेस और अंतिम लाइन ब्रेक भी शामिल हैं।
यह GZIP डीकंप्रेसर किसी भी RFC 1952 इनपुट को स्वीकार करता है और मूल बाइट्स सीधे आपके ब्राउज़र में उत्पन्न करता है। पेज छोड़े बिना टेक्स्ट या फ़ाइलों को राउंड-ट्रिप करने के लिए इसे GZIP कंप्रेसर के साथ जोड़ें।