Tôi đề xuất hachoir-wx để xem các tệp này. How to install a Python package hoặc bạn có thể thử ActivePython với PyPM khi sử dụng Windows. Khi bạn có các gói hachoir cần thiết được cài đặt, bạn có thể làm một cái gì đó như thế này để chạy GUI:
python C: \ Python27 \ Scripts \ hachoir-wx
Nó cho phép bạn duyệt qua các các trường dữ liệu của các tệp RAR và ZIP. Xem ví dụ này screenshot.
Đối với tệp RAR, hãy xem tệp technote.txt nằm trong thư mục cài đặt WinRAR. Điều này cung cấp thông tin chi tiết về đặc tả RAR. Có thể bạn sẽ quan tâm đến những điều sau:
HEAD_FLAGS Bit flags: 2 bytes
0x10 - information from previous files is used (solid flag)
bits 7 6 5 (for RAR 2.0 and later)
0 0 0 - dictionary size 64 KB
0 0 1 - dictionary size 128 KB
0 1 0 - dictionary size 256 KB
0 1 1 - dictionary size 512 KB
1 0 0 - dictionary size 1024 KB
1 0 1 - dictionary size 2048 KB
1 1 0 - dictionary size 4096 KB
1 1 1 - file is directory
Kích thước từ điển cũng có thể tìm thấy trong WinRAR GUI.
METHOD Packing method 1 byte
0x30 - storing
0x31 - fastest compression
0x32 - fast compression
0x33 - normal compression
0x34 - good compression
0x35 - best compression
Và Wikipedia cũng biết điều này: tiện ích nén
Các RAR là độc quyền, với một thuật toán khép kín. RAR thuộc sở hữu của Alexander L. Roshal, anh trai của Eugene Roshal. Phiên bản 3 của RAR dựa trên Lempel-Ziv (LZSS) và dự đoán bằng cách nén một phần (PPM), đặc biệt là PPMd PPMI thực hiện bởi Dmitry Shkarin.
Đối với tệp ZIP, tôi sẽ bắt đầu bằng cách xem specifications và ZIP Wikipedia page. Đây có thể là điều thú vị:
general purpose bit flag: (2 bytes)
compression method: (2 bytes)
Tuyệt vời, cảm ơn bạn! – Intenex
byte METHOD cho tệp đầu tiên thường được tìm thấy tại offset 0x2D. –