BZIP2 আর্কাইভ (.bz2)

Bzip2 স্ট্যান্ডার্ড

Bzip2 (BZ2) হলো জুলিয়ান সেওয়ার্ড কর্তৃক তৈরিকৃত একটি ক্লাসিক প্যাটেন্ট-মুক্ত ইউনিক্সকম্প্রেশন ইউটিলিটি এবং ফাইল ফরম্যাট, যা ক্লাসিক Gzip-এর তুলনায় উল্লেখযোগ্যভাবে ভালো কম্প্রেশন অর্জনের জন্য বারোজ-হুইলার ট্রান্সফর্ম ব্যবহার করে।

ইনস্পেক্ট ও মেটাডেটা

অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে BZ2 ফাইল শনাক্ত করে:

এখানে ফাইল নির্বাচন করুন বা ড্রপ করুন

১০০% প্রাইভেট ব্রাউজার-মধ্যস্থ কনভার্শন - ফাইল কখনো আপনার ডিভাইস ছেড়ে যায় না

অথবা পেস্ট করুন Ctrl+V
জিরো-নেটওয়ার্ক-ট্রান্সমিশন প্রাইভেসি গ্যারান্টি: বাহ্যিক সার্ভারে ০ বাইট আপলোড করা হয়েছে। সমস্ত প্রক্রিয়াকরণ আপনার ব্রাউজার স্যান্ডবক্সে স্থানীয়ভাবে ঘটেছে।

বাইট-লেভেল হেডার সিগনেচার (ম্যাজিক বাইটস)

অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে BZ2 ফাইল শনাক্ত করে:

হেক্স সিগনেচার (অফসেট 0):

42 5A 68

ASCII রিপ্রেজেন্টেশন: BZh

স্ট্যান্ডার্ডাইজেশন: Bzip2 Open Source Standard

প্রযুক্তিগত বৈশিষ্ট্য

কন্টেইনার আর্কিটেকচারStream header ('BZh' + block size digit 1-9) followed by compressed data blocks and 32-bit CRC
কম্প্রেশনBurrows-Wheeler Transform (BWT), Move-to-Front (MTF) transform, and Huffman coding
বাইট এন্ডিয়াননেসBig-Endian bitstream framing
কালার স্পেসN/A (Byte Compression Stream)
চ্যানেল ও কাঠামোSingle-file compressed byte stream
সর্বোচ্চ মাত্রাUnbounded stream length (supports arbitrary file sizes)
স্বচ্ছতা100% bit-exact lossless data preservation
স্ট্রিমিং ও প্রোগ্রেসিভSequential block-by-block streaming with independent per-block CRC checksums

টেকনিক্যাল তুলনা ম্যাট্রিক্স: BZ2 বনাম প্রতিযোগীগণ

প্রযুক্তিগত বৈশিষ্ট্যBZ2 (বর্তমান)GZXZZSTD
কোর অ্যালগরিদমবারোজ-হুইলার ট্রান্সফর্ম (BWT)Deflate (LZ77 + হাফম্যান)LZMA / LZMA2ফাইনাইট স্টেট এন্ট্রপি + LZ77
Gzip-এর সাথে কম্প্রেশনের তুলনাGzip-এর চেয়ে ১০% - ২০% ছোটবেসলাইন স্ট্যান্ডার্ডGzip-এর চেয়ে ২০% - ৩০% ছোটGzip-এর চেয়ে ১০% - ২০% ছোট
ডিকম্প্রেশনের গতিধীর (~৩০-৫০ MB/s)দ্রুত (~৩০০ MB/s)মাঝারি (~১০০ MB/s)অত্যন্ত দ্রুত (>১.৫ GB/s)
ব্লক চেকসামপ্রতি ব্লকে ৩২-বিট CRCসিঙ্গেল স্ট্রিম CRC32স্ট্রিম CRC64স্ট্রিম xxHash64

সাধারণ করাপশন মোড এবং হেক্স রিকভারি গাইড

'bzip2: Data integrity error when decompressing' ত্রুটির কারণে এক্সট্রাকশন বন্ধ হয়ে যায়।

মূল কারণ: কম্প্রেসড ব্লকে ফ্লিপ হওয়া বিটের কারণে BWT ইনভার্স পারমুটেশন ম্যাট্রিক্স CRC32 ভ্যালিডেশনে ব্যর্থ হয়।

পুনরুদ্ধার: ক্ষতিগ্রস্ত খাতের চারপাশের অক্ষত ব্লকগুলো উদ্ধার করতে 'bzip2recover' ইউটিলিটি ব্যবহার করুন।

নিরাপত্তা বিশ্লেষণ ও পার্সার অ্যাটাক ভেক্টর

Bzip2 ইমপ্লিমেন্টেশনে জটিল বিটস্ট্রিম সর্টিং এবং হাফম্যান টেবিল পার্সিং জড়িত থাকে যা ঐতিহাসিকভাবে পূর্ণসংখ্যা ওভারফ্লো ত্রুটির শিকার হয়েছে।

পরিচিত অ্যাটাক ভেক্টর

  • BWT সর্টিং অ্যারে এলোকেশনে পূর্ণসংখ্যা ওভারফ্লো (যেমন: CVE-2016-3189)।
  • হাফম্যান ডিকোডিং টেবিল অ্যাসেম্বলির সময় বাউন্ডসের বাইরে রাইট (Out-of-bounds write)।
  • খারাপ ইনপুট প্যাটার্নের মাধ্যমে ডিনায়াল অফ সার্ভিস (DoS), যা সবচেয়ে খারাপ ক্ষেত্রে দ্বিঘাত BWT সর্টিং সময়ের সৃষ্টি করে।

প্রতিরক্ষামূলক সেরা অনুশীলন:

ঐতিহাসিক উৎপত্তি ও মাইলফলক

2019ফেডেরিকো মেনা কুইন্টেরো bzip3 এবং আধুনিক ওপেন-সোর্স উদ্যোগের অধীনে bzip2 কোডবেস রক্ষণাবেক্ষণকে আধুনিকীকরণ করেন।
2000সংস্করণ ১.০ প্রকাশিত হয়, যা লিনাক্স ডিস্ট্রিবিউশন এবং প্যাকেজ ম্যানেজারজুড়ে bzip2 ফরম্যাটকে স্থিতিশীল করে।
1996জুলিয়ান সেওয়ার্ড পূর্বে প্যাটেন্টের সমস্যায় থাকা bzip ফরম্যাট প্রতিস্থাপনের জন্য bzip2 ০.১৫ প্রকাশ করেন।

প্রধান সুবিধাসমূহ ও গুণাবলী

  • সোর্স কোড টারবল, সিস্টেম লগ এবং টেক্সট ডাটাবেসে ক্লাসিক Gzip-এর তুলনায় ধারাবাহিকভাবে ১০% থেকে ২০% ভালো পারফর্ম করে।
  • স্বাধীন ব্লক আর্কিটেকচার (১০০কে থেকে ৯০০কে) শক্তিশালী ইন্টিগ্রিটি চেকিংয়ের জন্য প্রতি ব্লকে ৩২-বিট CRC চেকসাম অন্তর্ভুক্ত করে।
  • সমস্ত লিনাক্স, বিএসডি এবং ম্যাকওএস কমান্ড-লাইন ডিস্ট্রিবিউশনে সার্বজনীন নেটিভ লভ্যতা।

কারিগরি সীমাবদ্ধতা ও অসুবিধা

  • Zstandard-এর মতো আধুনিক অ্যালগরিদমের তুলনায় কম্প্রেশন এবং ডিকম্প্রেশনের গতি উল্লেখযোগ্যভাবে ধীর।
  • শুধুমাত্র একক-ফাইল কম্প্রেশন: একাধিক ফাইল বা ডিরেক্টরি প্যাকেজ করার জন্য TAR (.tar.bz2)-এর সাথে জোড়া লাগাতে হয়।
  • Gzip বা Zstd-এর তুলনায় ডিকম্প্রেশনের সময় বেশি CPU ব্যবহার করে।

আকর্ষণীয় কারিগরি তথ্য

  • 'BZh' ম্যাজিক বাইটগুলোর অর্থ হলো 'Burrows-Wheeler Zip Huffman', যার পরে কিলোকাবাইটের শতকে ব্লক সাইজ নির্দেশক একটি অঙ্ক ('১' থেকে '৯') থাকে (যেমন: 'BZh9' = ৯০০ KB)।
  • লিনাক্স কার্নেল সোর্স কোড .xz-এ স্থানান্তরিত হওয়ার আগে এক দশকেরও বেশি সময় ধরে একচেটিয়াভাবে .tar.bz2 ফরম্যাটে বিতরণ করা হয়েছিল।
  • বারোজ-হুইলার ট্রান্সফর্ম সরাসরি ডেটা কম্প্রেশন করে না; এটি অক্ষরের ক্রম এমনভাবে পরিবর্তন করে যাতে একই অক্ষরগুলো একসাথে জমাট বাঁধে, যা হাফম্যান কোডিংয়ের মাধ্যমে খুব সহজেই কম্প্রেশনের উপযোগী করে তোলে।

সচরাচর জিজ্ঞাসಿತ টেকনিক্যাল প্রশ্নাবলি

.gz এবং .bz2-এর মধ্যে পার্থক্য কী?

.bz2 ফাইলটিকে .gz-এর চেয়ে ছোট আকারে রূপান্তর করতে Burrows-Wheeler ট্রান্সফর্ম ব্যবহার করে, তবে এটি কমপ্রেস এবং ডিকম্প্রেস করতে বেশি সময় নেয়।

bzip2-এ 'bzip2recover' কমান্ড থাকে কেন?

যেহেতু bzip2 স্বাধীন ৯০০ কেবি ব্লকে ডেটা কমপ্রেস করে, প্রতিটির নিজস্ব CRC থাকে, তাই ফাইলের কিছু অংশ নষ্ট হয়ে গেলেও bzip2recover অক্ষত ব্লকগুলি এক্সট্র্যাক্ট করতে পারে।

কীভাবে আমি একটি .tar.bz2 ফাইল এক্সট্র্যাক্ট করব?

কম্যান্ড-লাইন টুল না চালিয়ে আপনি সরাসরি আপনার ওয়েব ব্রাউজারে File2File.app দিয়ে .tar.bz2 ফাইল আনপ্যাক করতে পারেন।