GZIP आर्काइव (.gz)

IETF मानक

Gzip (GZ) मानक GNU संपीड़न यूटिलिटी और फ़ाइल प्रारूप है, जिसे तेजी से फ़ाइल और वेब संपत्ति संपीड़न के लिए यूनिक्स ऑपरेटिंग सिस्टम और इंटरनेट HTTP सर्वर पर रूप से तैनात किया गया है।.

TAR को GZ में कन्वर्ट करें

मुफ्त इन-ब्राउज़र TAR से GZ कन्वर्टर। अपने डिवाइस पर तुरंत फ़ाइलें कन्वर्ट करें।

निरीक्षण और मेटाडेटा

ऑपरेटिंग सिस्टम और फ़ाइल विश्लेषक शुरुआती बाइनरी बाइट अनुक्रम का निरीक्षण करके GZ फ़ाइलों की पहचान करते हैं:

फ़ाइलें यहाँ चुनें या छोड़ें

निजी - फ़ाइलें कभी आपके डिवाइस से बाहर नहीं जातीं

या पेस्ट करें Ctrl+V
नेटवर्क पर कोई डेटा भेजे बिना गोपनीयता की गारंटी: बाहरी सर्वर पर 0 बाइट अपलोड किए गए। सारी प्रोसेसिंग आपके ब्राउज़र सैन्डबॉक्स में स्थानीय रूप से हुई।

बाइट-स्तरीय हेडर हस्ताक्षर (मैजिक बाइट्स)

ऑपरेटिंग सिस्टम और फ़ाइल विश्लेषक शुरुआती बाइनरी बाइट अनुक्रम का निरीक्षण करके GZ फ़ाइलों की पहचान करते हैं:

HEX हस्ताक्षर (ऑफ़सेट 0):

1F 8B 08

ASCII निरूपण: ..\x08

मानकीकरण: IETF RFC 1952

तकनीकी विनिर्देश

कंटेनर आर्किटेक्चर10-byte हेडर (मैजिक 0x1F 0x8B, विधि 8, फ़्लैग, mtime, OS), जिसके बाद DEFLATE स्ट्रीम और 8-byte फ़ुटर आता है
कंप्रेशनDEFLATE एल्गोरिदम (LZ77 स्लाइडिंग विंडो + Huffman कोडिंग)
बाइट एंडियानेसलिटिल-एंडियन हेडर और फ़ुटर पूर्णांक
कलर स्पेसलागू नहीं (आर्काइव कंटेनर)
चैनल और संरचनाएकल-फ़ाइल संपीड़ित बाइट स्ट्रीम
अधिकतम आयामअसंपीड़ित आकार modulo 2^32 के रूप में दर्ज होता है (असीमित स्ट्रीम लंबाइयों का समर्थन)
पारदर्शिता100% बिट-स्तर पर सटीक, डेटा का बिना हानि संरक्षण
स्ट्रीमिंग और प्रोग्रेसिवपाइप और HTTP नेटवर्क पर क्रमिक, एक-पास स्ट्रीमिंग प्लेबैक

तकनीकी तुलना मैट्रिक्स: GZ बनाम प्रतियोगी

तकनीकी विशेषताGZ (वर्तमान)BZ2BROTLIZSTD
डीकंप्रेसन गतितेज़ (~300 MB/s)धीमी (~40 MB/s)बहुत तेज़ (~400 MB/s)अति-तेज़ (>1.5 GB/s)
वेब पर व्यापक उपयोगसभी ब्राउज़रों और सर्वरों का 100%शून्य वेब ब्राउज़र समर्थनसभी ब्राउज़रों में HTTPS पर समर्थितबढ़ता हुआ ब्राउज़र और सर्वर समर्थन
बहु-फ़ाइल पैकेजिंगTAR कंटेनर की आवश्यकता है (.tar.gz)TAR कंटेनर की आवश्यकता है (.tar.bz2)कच्चा स्ट्रीम या कस्टम कंटेनरTAR कंटेनर की आवश्यकता है (.tar.zst)
चेकसम सत्यापन32-बिट CRC (CRC-32)प्रति-ब्लॉक 32-बिट CRCस्ट्रीम में कोई अंतर्निहित चेकसम नहीं64-बिट xxHash

सामान्य करप्शन मोड और हेक्स रिकवरी गाइड

निष्कर्षण त्रुटि: 'gzip: stdin: unexpected end of file'।

मूल कारण: DEFLATE स्ट्रीम या 8-बाइट CRC32 फुटर को काटने वाला समय से पहले फ़ाइल स्थानांतरण समापन।

रिकवरी: 'gzip -d --keep broken.gz' या File2File.app Gzip Extractor का उपयोग करके आंशिक सामग्री निकालें।

सुरक्षा विश्लेषण और पार्सर अटैक वेक्टर्स

Gzip पार्सर उपयोगकर्ता-नियंत्रित हेडर और DEFLATE बिटस्ट्रीम को संसाधित करते हैं जिन्हें डिकंप्रेसन बॉम के खिलाफ सुरक्षित किया जाना चाहिए।

ज्ञात अटैक वेक्टर्स

  • डिकंप्रेसन बॉम (ZIP बॉम) जो Gzip डेटा के मेगाबाइट को डिस्क स्थान के सैकड़ों गीगाबाइट में विस्तारित करता है।
  • हेडर से वैकल्पिक मूल फ़ाइल नाम स्ट्रिंग पढ़ते समय बफर ओवरफ़्लो।
  • 32-बिट CRC चेक तुलना के दौरान पूर्णांक अतिप्रवाह।

सुरक्षात्मक सर्वोत्तम प्रथाएँ: स्वचालित इनजेस्ट सेवाओं में सख्त डीकंप्रेशन कोटा और मेमोरी सीमा लागू करें।

ऐतिहासिक मूल और मील के पत्थर

1996IETF ने Gzip फ़ाइल प्रारूप विनिर्देश को RFC 1952 के रूप में औपचारिक रूप दिया।
1993स्वामित्व वाली यूनिक्स 'compress' यूटिलिटी (.Z फ़ाइलों) को बदलने के लिए GNU प्रोजेक्ट ने इसे अपनाया।
1992जीन-लूप गैली और मार्क एडलर ने मुफ्त सॉफ्टवेयर आंदोलन के लिए एक पेटेंट-मुक्त संपीड़न उपकरण के रूप में Gzip बनाया।

मुख्य लाभ और खूबियाँ

  • इंटरनेट HTTP संपीड़न के लिए सार्वभौमिक बेंचमार्क ('Content-Encoding: gzip') जिसे 100% वेब क्लाइंट द्वारा समर्थित किया जाता है।
  • 10-बाइट हेडर के भीतर मूल फ़ाइल संशोधन टाइमस्टैम्प और वैकल्पिक मूल फ़ाइल नाम सुरक्षित रखता है।
  • डिकंप्रेसन के दौरान हल्का CPU पदचिह्न, कम शक्ति वाले मोबाइल उपकरणों और राउटर पर सुचारू रूप से चलता है।

तकनीकी सीमाएँ और कमियाँ

  • केवल एकल-फ़ाइल संपीड़न: पहले उन्हें TAR कंटेनर में बंडल किए बिना एकाधिक फ़ाइलों या निर्देशिकाओं को संपीड़ित नहीं कर सकता है।
  • आधुनिक वेब टेक्स्ट पर Brotli और Zstandard जैसे आधुनिक एल्गोरिदम की तुलना में संपीड़न अनुपात कम है।
  • फ़ुटर का असम्पीडित आकार वाला फ़ील्ड 32-बिट मॉड्यूलो 2^32 का होता है, जिससे 4 GB से बड़ी फ़ाइलों पर रोलओवर डिस्प्ले बग होते हैं।

रोचक तकनीकी जानकारी

  • मैजिक बाइट्स 0x1F 0x8B इसलिए चुने गए क्योंकि 0x1F ऐतिहासिक रूप से यूनिक्स 'compress' फ़ाइलों का पहला बाइट था, जबकि 0x8B ने Gzip की पहचान की थी।
  • इंटरनेट पर 80% से अधिक वेबसाइटें ब्राउज़र तक वेब पेज पहुँचाने के लिए Gzip संपीड़न का उपयोग करती हैं।
  • जीन-लूप गैली ने संपीड़न कोड लिखा जबकि मार्क एडलर ने डीकंप्रेसन (इन्फ्लेट) कोड लिखा; दोनों को ACM सॉफ्टवेयर सिस्टम पुरस्कार मिला।

अक्सर पूछे जाने वाले तकनीकी प्रश्न

मैं Gzip से किसी फ़ोल्डर को कंप्रेस क्यों नहीं कर सकता?

Gzip को बाइट्स की एक सिंगल स्ट्रीम को कंप्रेस करने के लिए डिज़ाइन किया गया था। किसी फ़ोल्डर को कंप्रेस करने के लिए, यूनिक्स सिस्टम पहले फ़ोल्डर को एक सिंगल .tar फ़ाइल में बंडल करते हैं, फिर .tar.gz फ़ाइल बनाने के लिए इसे Gzip से कंप्रेस करते हैं।

.gz और .zip में क्या अंतर है?

.zip एक आर्काइव फ़ॉर्मेट है जो डायरेक्टरी इंडेक्स के साथ कई फ़ाइलों को एक साथ पैक करता है। .gz केवल एक सिंगल फ़ाइल को कंप्रेस करता है और आमतौर पर यूनिक्स सिस्टम पर tar के साथ जोड़ा जाता है।

मैं Windows या Mac पर .gz फ़ाइल को कैसे डीकंप्रेस कर सकता हूँ?

बिना किसी सॉफ़्टवेयर इंस्टॉलेशन के सीधे अपने वेब ब्राउज़र में .gz फ़ाइलों को तुरंत डीकंप्रेस करने के लिए File2File.app का उपयोग करें।