Arsip BZIP2 (.bz2)

Bzip2 Standar

Bzip2 (BZ2) adalah utilitas kompresi dan format file Unix klasik yang bebas paten dan dibuat oleh Julian Seward, menggunakan transformasi Burrows-Wheeler untuk mencapai kompresi yang jauh lebih padat daripada Gzip klasik.

Periksa & Metadata

Sistem operasi dan penganalisis file mengidentifikasi file BZ2 dengan memeriksa urutan byte biner utama:

Pilih atau letakkan berkas di sini

100% konversi privat di dalam peramban - berkas tidak pernah meninggalkan perangkat Anda

atau tempel Ctrl+V
Jaminan Privasi Tanpa Transmisi Jaringan: 0 byte diunggah ke server eksternal. Semua pemrosesan terjadi secara lokal di sandboks peramban Anda.

Tanda Tangan Header Tingkat-Byte (Magic Bytes)

Sistem operasi dan penganalisis file mengidentifikasi file BZ2 dengan memeriksa urutan byte biner utama:

SIGNATURE HEX (OFFSET 0):

42 5A 68

REPRESENTASI ASCII: BZh

Standardisasi: Bzip2 Open Source Standard

Spesifikasi Teknis

Arsitektur WadahStream header ('BZh' + block size digit 1-9) followed by compressed data blocks and 32-bit CRC
KompresiBurrows-Wheeler Transform (BWT), Move-to-Front (MTF) transform, and Huffman coding
Endianness ByteBig-Endian bitstream framing
Ruang WarnaN/A (Byte Compression Stream)
Saluran & StrukturSingle-file compressed byte stream
Dimensi MaksUnbounded stream length (supports arbitrary file sizes)
Transparansi100% bit-exact lossless data preservation
Streaming & ProgresifSequential block-by-block streaming with independent per-block CRC checksums

Matriks Perbandingan Teknis: BZ2 vs Pesaing

Atribut TeknisBZ2 (Saat Ini)GZXZZSTD
Algoritma UtamaTransformasi Burrows-Wheeler (BWT)Mengempiskan (LZ77 + Huffman)LZMA / LZMA2Entropi Keadaan Terbatas + LZ77
Kompresi vs Gzip10% - 20% lebih kecil dari GzipStandar dasar20% - 30% lebih kecil dari Gzip10% - 20% lebih kecil dari Gzip
Kecepatan DekompresiLambat (~30-50 MB/s)Cepat (~300 MB/s)Sedang (~100 MB/s)Sangat cepat (>1.5 GB/s)
Checksum BlokCRC 32-bit per blokCRC32 aliran tunggalAliran CRC64Aliran xxHash64

Mode Kerusakan Umum & Panduan Pemulihan Hex

Ekstraksi dibatalkan dengan pesan 'bzip2: Data integrity error when decompressing'.

Penyebab Utama: Bit terbalik pada blok terkompresi yang menyebabkan matriks permutasi invers BWT gagal dalam validasi CRC32.

Pemulihan: Gunakan utilitas 'bzip2recover' untuk menyelamatkan blok yang tidak rusak di sekitar sektor yang rusak.

Analisis Keamanan & Vektor Serangan Parser

Implementasi Bzip2 melibatkan pengurutan bitstream yang rumit dan penguraian tabel Huffman yang secara historis mengalami kelemahan limpahan bilangan bulat (integer overflow).

Vektor Serangan yang Diketahui

  • Limpahan bilangan bulat dalam alokasi array pengurutan BWT (misalnya CVE-2016-3189).
  • Penulisan di luar batas (out-of-bounds write) selama perakitan tabel penguraian Huffman.
  • Penolakan layanan (DoS) melalui pola masukan patologis yang menyebabkan waktu pengurutan BWT terburuk yang bersifat kuadratik.

Praktik Terbaik Defensif:

Asal-Usul & Tonggak Sejarah

2019Federico Mena Quintero memodernisasi pemeliharaan basis kode bzip2 di bawah bzip3 dan inisiatif sumber terbuka modern.
2000Versi 1.0 dirilis, menstabilkan format bzip2 di berbagai distribusi Linux dan manajer paket.
1996Julian Seward merilis bzip2 0.15 untuk menggantikan format bzip sebelumnya yang memiliki masalah paten.

Keunggulan & Kelebihan Utama

  • Secara konsisten mengungguli Gzip klasik sebesar 10% hingga 20% pada tarball kode sumber, log sistem, dan database teks.
  • Arsitektur blok independen (100k hingga 900k) menyertakan checksum CRC 32-bit per blok untuk pemeriksaan integritas yang kuat.
  • Ketersediaan asli universal di semua distribusi baris perintah Linux, BSD, dan macOS.

Keterbatasan Teknis & Kekurangan

  • Kecepatan kompresi dan dekompresi jauh lebih lambat dibandingkan dengan algoritma modern seperti Zstandard.
  • Kompresi file tunggal saja: memerlukan pasangan dengan TAR (.tar.bz2) untuk mengemas beberapa file atau direktori.
  • Penggunaan CPU yang lebih tinggi selama dekompresi daripada Gzip atau Zstd.

Fakta Teknis Menarik

  • Byte ajaib 'BZh' adalah singkatan dari 'Burrows-Wheeler Zip Huffman', diikuti oleh digit ('1' hingga '9') yang menunjukkan ukuran blok dalam ratusan kilobyte (misalnya 'BZh9' = 900 KB).
  • Kode sumber Kernel Linux didistribusikan secara eksklusif dalam format .tar.bz2 selama lebih dari satu dekade sebelum migrasi ke .xz.
  • Transformasi Burrows-Wheeler tidak mengompresi data secara langsung; transformasi ini mengurutkan ulang urutan karakter sehingga huruf yang sama menggumpal, membuatnya mudah dikompresi melalui pengodean Huffman.

Pertanyaan Teknis yang Sering Diajukan

Apa perbedaan antara .gz dan .bz2?

.bz2 menggunakan transformasi Burrows-Wheeler untuk mencapai ukuran file yang lebih kecil daripada .gz, tetapi proses kompresi dan dekompresinya memakan waktu lebih lama.

Mengapa bzip2 memiliki perintah 'bzip2recover'?

Karena bzip2 mengompresi data dalam blok 900 KB independen yang masing-masing memiliki CRC sendiri, bzip2recover dapat mengekstrak blok yang tidak rusak meskipun sebagian file mengalami korupsi.

Bagaimana cara mengekstrak file .tar.bz2?

Anda dapat membongkar file .tar.bz2 langsung di peramban web Anda dengan File2File.app tanpa perlu menjalankan alat baris perintah.