ما هو فك ضغط GZIP؟
GZIP هو تنسيق ضغط بدون فقدان مُعرَّف بـ RFC 1952. عملية فك الضغط تعكس خوارزمية DEFLATE (RFC 1951) — حيث تقرأ مراجع LZ77 ورموز Huffman لإعادة بناء البايتات الأصلية بدقة.
كيف يعمل فك ضغط GZIP؟
يُعالَج إدخالك بالكامل داخل متصفحك بواسطة واجهة DecompressionStream('gzip') الأصلية. الخطوات الرئيسية هي:
- تقرأ الأداة إدخالك بصيغة Base64 أو ست عشري (للنص) أو تقرأ البايتات الخام لملف .gz الذي ترفعه.
- يُتحقَّق من ترويسة gzip البالغة 10 بايت، ويُحدَّد جزء DEFLATE، ويُحفظ ذيل بطول 8 بايت (CRC32 + الطول الأصلي بفائض 2^32) للتحقق.
- تُمرَّر البايتات عبر
DecompressionStreamمضبوط لصيغةgzip. - يعكس المتصفح خوارزمية DEFLATE: تُفكّ شفرات Huffman إلى رموز وتُوسَّع مراجع LZ77 الخلفية إلى تيار البايتات الأصلي.
- يتحقق التيار من CRC32 وذيل الطول مقابل البايتات المستعادة، ثم يُصدِرها كنص UTF-8 في نموذج النص أو كملف قابل للتنزيل في نموذج الرفع.
لماذا نفك الضغط باستخدام هذه الأداة؟
- افحص الردود: اقرأ أجسام HTTP المُرمَّزة بـ GZIP وحمولات CDN التي قد تظهر في أدوات أخرى كضوضاء ثنائية.
- استعِد الأرشيفات: استخرج ملفات سجل .gz ومُلخصات الإعدادات ومكونات tarball دون تثبيت برامج إضافية.
- الخصوصية: فك الضغط يجري بالكامل في متصفحك. لا يصل الإدخال إلى خوادمنا أبداً.
- متوافق مع المعايير: يقبل أي تيار وفق RFC 1952 يُنتجه أمر
gzipأو خوادم HTTP أو المكتبات القياسية بلغات Python أو Node.js أو Go أو Java أو Rust.
ما هي التطبيقات الشائعة لفك ضغط GZIP؟
فك ضغط GZIP يظهر في كثير من أعمال الويب وأدوات سطر الأوامر:
- تصحيح واجهات API: الصق جسم رد
Content-Encoding: gzipالخام لمشاهدة JSON أو HTML الأساسي. - تحليل السجلات: افتح ملفات
.log.gzالمُدوَّرة لبحث الأحداث بـ grep دون خط معالجة استخراج كامل. - التحقق من النسخ الاحتياطي: تأكَّد من أن أرشيف .gz ناتج من أداة أخرى يفُكّ ضغطه بنجاح قبل الاعتماد عليه.
كيف يبدو مثال على فك ضغط GZIP؟
سلسلة Base64 من 200 بايت تبدأ بـ H4sI هي العلامة المعتادة لترويسة gzip — إذ تُرمَّز البايتات السحرية 1f 8b إلى هذه الأحرف. لصق تلك السلسلة والضغط على فُكّ الضغط يعيد النص الأصلي بالضبط، بايتاً بايتاً، بما في ذلك المسافات وأسطر النهاية.
يقبل هذا الفاكّ لـ GZIP أي مدخل وفق RFC 1952 ويُنتج البايتات الأصلية مباشرةً في متصفحك. اقرنه بضاغط GZIP لإجراء رحلة ذهاب وعودة على النصوص أو الملفات دون مغادرة الصفحة.