GZIP আর্কাইভ (.gz)
IETF স্ট্যান্ডার্ডGzip (GZ) হলো স্ট্যান্ডার্ড GNU কম্প্রেশন ইউটিলিটি এবং ফাইল ফরম্যাট, যা দ্রুত ফাইল এবং ওয়েব অ্যাসেট কম্প্রেশনের জন্য ইউনিক্স অপারেটিং সিস্টেম এবং ইন্টারনেট HTTP সার্ভারগুলোতে ভাবে ব্যবহৃত হয়।.
TAR থেকে GZ-তে রূপান্তর করুন
বিনামূল্যের ব্রাউজারভিত্তিক TAR-থেকে-GZ রূপান্তরকারী। আপনার ডিভাইসেই ফাইল তাৎক্ষণিকভাবে রূপান্তর করুন।
ইনস্পেক্ট ও মেটাডেটা
অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে GZ ফাইল শনাক্ত করে:
বাইট-লেভেল হেডার সিগনেচার (ম্যাজিক বাইটস)
অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে GZ ফাইল শনাক্ত করে:
হেক্স সিগনেচার (অফসেট 0):
1F 8B 08ASCII রিপ্রেজেন্টেশন: ..\x08
স্ট্যান্ডার্ডাইজেশন: IETF RFC 1952
প্রযুক্তিগত বৈশিষ্ট্য
| কন্টেইনার আর্কিটেকচার | 10-byte header (magic 0x1F 0x8B, method 8, flags, mtime, OS)-এর পরে DEFLATE stream ও 8-byte footer থাকে |
| কম্প্রেশন | DEFLATE অ্যালগরিদম (LZ77 sliding-window পদ্ধতি ও Huffman coding) |
| বাইট এন্ডিয়াননেস | Little-Endian header ও footer integer |
| কালার স্পেস | প্রযোজ্য নয় (Archive Container) |
| চ্যানেল ও কাঠামো | একটি file-এর compressed byte stream |
| সর্বোচ্চ মাত্রা | আনকমপ্রেসড size modulo 2^32-এ রেকর্ড হয় (সীমাহীন stream length সমর্থিত) |
| স্বচ্ছতা | 100% bit-exact lossless data সংরক্ষণ |
| স্ট্রিমিং ও প্রোগ্রেসিভ | pipe ও HTTP network দিয়ে একবারে ক্রমানুসারে streaming playback |
টেকনিক্যাল তুলনা ম্যাট্রিক্স: GZ বনাম প্রতিযোগীগণ
| প্রযুক্তিগত বৈশিষ্ট্য | GZ (বর্তমান) | BZ2 | BROTLI | ZSTD |
|---|---|---|---|---|
| ডিকম্প্রেশনের গতি | দ্রুত (~৩০০ MB/s) | ধীর (~৪০ MB/s) | খুব দ্রুত (~৪০০ MB/s) | অত্যন্ত দ্রুত (>১.৫ GB/s) |
| ওয়েবে ব্যাপক ব্যবহার | সমস্ত ব্রাউজার ও সার্ভারের ১০০% | কোনো ওয়েব ব্রাউজার সমর্থন করে না | সমস্ত ব্রাউজারে HTTPS-এর মাধ্যমে সমর্থিত | বর্ধিত ব্রাউজার ও সার্ভার সমর্থন |
| মাল্টি-ফাইল প্যাকেজিং | TAR কন্টেইনার প্রয়োজন (.tar.gz) | TAR কন্টেইনার প্রয়োজন (.tar.bz2) | র স্ট্রিম বা কাস্টম কন্টেইনার | TAR কন্টেইনার প্রয়োজন (.tar.zst) |
| চেকসাম ভ্যালিডেশন | ৩২-বিট CRC (CRC-32) | প্রতি ব্লকে ৩২-বিট CRC | স্ট্রিমে কোনো বিল্ট-ইন নেই | ৬৪-বিট xxHash |
সাধারণ করাপশন মোড এবং হেক্স রিকভারি গাইড
এক্সট্রাকশন ত্রুটি: 'gzip: stdin: unexpected end of file'।
মূল কারণ: DEFLATE স্ট্রিম বা ৮-বাইটের CRC32 ফুটার কেটে যাওয়ার কারণে ফাইল স্থানান্তরের আকস্মিক সমাপ্তি।
পুনরুদ্ধার: 'gzip -d --keep broken.gz' অথবা File2File.app Gzip Extractor ব্যবহার করে আংশিক বিষয়বস্তু এক্সট্রাক্ট করুন।
নিরাপত্তা বিশ্লেষণ ও পার্সার অ্যাটাক ভেক্টর
Gzip পার্সারগুলোকে ইউজার-নিয়ন্ত্রিত হেডার এবং DEFLATE বিটস্ট্রিম প্রসেস করতে হয় যা কম্প্রেশন বম থেকে সুরক্ষিত রাখতে হবে।
পরিচিত অ্যাটাক ভেক্টর
- কম্প্রেশন বম (জিপ বম) যা মেগাবাইট আকারের Gzip ডেটাকে শত শত গিগাবাইট ডিস্ক স্পেসে প্রসারিত করে।
- হেডার থেকে ঐচ্ছিক মূল ফাইলের নাম স্ট্রিং পড়ার সময় বাফার ওভারফ্লো।
- ৩২-বিট CRC চেক তুলনার সময় পূর্ণসংখ্যা ওভারফ্লো।
প্রতিরক্ষামূলক সেরা অনুশীলন: স্বয়ংক্রিয় ইনজেশন পরিষেবাগুলোতে কঠোর ডিকম্প্রেশন কোটা এবং মেমরি সিলিং সীমা প্রয়োগ করুন।
ঐতিহাসিক উৎপত্তি ও মাইলফলক
প্রধান সুবিধাসমূহ ও গুণাবলী
- HTTP content encoding হিসেবে ব্যাপকভাবে সমর্থিত, তবে client ও server অন্য encoding বা কোনো compression না-ও বেছে নিতে পারে।
- ১০-বাইটের হেডারের মধ্যে মূল ফাইলের পরিবর্তনের টাইমস্ট্যাম্প এবং ঐচ্ছিক মূল ফাইলের নাম সংরক্ষণ করে।
- ডিকম্প্রেশনের সময় হালকা CPU ফুটপ্রিন্ট, যা কম ক্ষমতার মোবাইল ডিভাইস এবং রাউটারে মসৃণভাবে চলে।
কারিগরি সীমাবদ্ধতা ও অসুবিধা
- শুধুমাত্র একক-ফাইল কম্প্রেশন: প্রথমে TAR কন্টেইনারে বান্ডেল না করে একাধিক ফাইল বা ডিরেক্টরি কম্প্রেস করা যায় না।
- আধুনিক ওয়েব টেক্সটে Brotli এবং Zstandard-এর মতো আধুনিক অ্যালগরিদমের তুলনায় কম্প্রেশন অনুপাত কম।
- ফুটার আনকম্প্রেসড সাইজ ফিল্ডটি ৩২-বিট মডুলো ২^৩২, যার ফলে ৪ GB-এর চেয়ে বড় ফাইলের ক্ষেত্রে রোলওভার ডিসপ্লে বাগ দেখা দেয়।
আকর্ষণীয় কারিগরি তথ্য
- 0x1F 0x8B ম্যাজিক বাইটগুলো বেছে নেওয়া হয়েছিল কারণ ঐতিহাসিকভাবে 0x1F ছিল ইউনিক্স 'compress' ফাইলের প্রথম বাইট, এবং 0x8B Gzip-কে শনাক্ত করত।
- Gzip web response compress করার একটি প্রচলিত পদ্ধতি; ব্যবহার সাইট ও response-ভেদে বদলায়।
- জিন-লুপ গেইলি কম্প্রেশন কোড লিখেছেন এবং মার্ক অ্যাডলার ডিকম্প্রেশন (ইনফ্লেট) কোড লিখেছেন; উভয়েই ACM সফটওয়্যার সিস্টেম অ্যাওয়ার্ড লাভ করেছেন।
সচরাচর জিজ্ঞাসিত প্রযুক্তিগত প্রশ্নাবলি
আমি কেন Gzip দিয়ে কোনো ফোল্ডার কমপ্রেস করতে পারি না?
Gzip একটি একক বাইট স্ট্রিম কমপ্রেস করার জন্য ডিজাইন করা হয়েছিল। একটি ফোল্ডার কমপ্রেস করতে, ইউনিক্স সিস্টেমগুলি প্রথমে ফোল্ডারটিকে একটি একক .tar ফাইলে বান্ডিল করে, তারপর .tar.gz ফাইল তৈরি করতে Gzip দিয়ে এটি কমপ্রেস করে।
.gz এবং .zip-এর মধ্যে পার্থক্য কী?
.zip হল একটি আর্কাইভ ফরম্যাট যা একটি ডিরেক্টরি ইনডেক্স সহ একাধিক ফাইলকে একসাথে প্যাকেজ করে। .gz শুধুমাত্র একটি একক ফাইল কমপ্রেস করে এবং ইউনিক্স সিস্টেমে সাধারণত tar-এর সাথে যুক্ত থাকে।
উইন্ডোজ বা ম্যাকে আমি কীভাবে একটি .gz ফাইল ডিকম্প্রেস করব?
কোনো সফটওয়্যার ইনস্টল না করেই সরাসরি আপনার ওয়েব ব্রাউজারে .gz ফাইল অবিলম্বে ডিকম্প্রেস করতে File2File.app ব্যবহার করুন।