Format comparison
Overview
Cabriolet supports seven distinct Microsoft compression formats, each designed for specific use cases and historical contexts. This page provides a comprehensive comparison to help you understand the differences and choose the right format for your needs.
Quick Comparison Table
| Feature | CAB | CHM | HLP | KWAJ | LIT | OAB | SZDD |
|---|---|---|---|---|---|---|---|
Primary Use | Software distribution | Help files | Windows 3.x help | File compression | E-books | Outlook data | Single file compression |
Multi-file Support | Yes | Yes | Yes | No | Yes | Yes | No |
Compression Algorithms | None, MSZIP, Quantum, LZX | LZX | LZ77 | LZSS, MSZIP, Quantum | DES + LZ | LZ | LZSS |
Max Uncompressed Size | 2GB per folder | Unlimited | 16MB | 2GB | Unlimited | 2GB | 2GB |
Metadata Support | Extensive | Rich | Basic | Minimal | Rich | Minimal | Minimal |
File Attributes | Full Windows | Limited | None | Basic | None | Basic | Basic |
Timestamps | MS-DOS format | None | None | MS-DOS format | None | None | MS-DOS format |
Multi-part Archives | Yes (spanning) | No | No | No | No | No | No |
Embedded Archives | Yes | Yes | No | No | No | No | No |
Compression Ratio | Good-Excellent | Excellent | Good | Good | Good | Moderate | Good |
Extraction Speed | Fast-Moderate | Fast | Fast | Fast | Slow | Fast | Very Fast |
Era Introduced | Mid-1990s | Late 1990s | Early 1990s | Mid-1990s | Early 2000s | Late 1990s | Early 1990s |
Detailed Format Analysis
CAB (Cabinet Files)
Purpose and History
Cabinet files were introduced by Microsoft in 1996 as part of Windows 95. They became the standard format for software distribution, Windows updates, and installer packages.
Technical Characteristics
-
File Extension:
.cab -
Magic Bytes:
MSCF(0x4D534346) -
Structure: Multi-folder, multi-file with sophisticated metadata
-
Compression Types:
-
None (Type 0) - Store only
-
MSZIP (Type 1) - Deflate-based, block compression
-
Quantum (Type 2) - Proprietary quantum algorithm
-
LZX (Type 3) - Advanced sliding window compression
-
When to Use CAB
-
Software installers and update packages
-
Large software distributions requiring multiple CDs
-
Windows component updates
-
Application deployment requiring file integrity
-
Archives requiring strong compression with good speed
CHM (Compiled HTML Help)
Purpose and History
CHM files replaced the older HLP format in Windows 98. They were designed to provide rich, HTML-based help documentation with full-text search and navigation.
Technical Characteristics
-
File Extension:
.chm -
Magic Bytes:
ITSF(Internal Title Storage Format) -
Structure: Compound file with multiple streams
-
Compression: LZX compression exclusively
-
Features: Index, full-text search, navigation hierarchy
When to Use CHM
-
Software documentation and help systems
-
Technical manuals requiring HTML rendering
-
Knowledge bases with cross-referencing
-
Documentation requiring search capabilities
HLP (Windows Help)
Purpose and History
The original Windows Help format, introduced with Windows 3.0. Widely used throughout the 1990s but deprecated in favor of CHM.
Technical Characteristics
-
File Extension:
.hlp -
Magic Bytes:
?_(0x3F5F) orLN(0x4C4E) -
Structure: Binary format with topic-based organization
-
Compression: LZ77 variant (Phrase compression)
-
Maximum Size: 16MB uncompressed
When to Use HLP
-
Legacy software documentation
-
Converting old help files to modern formats
-
Archival of historical documentation
-
Windows 3.x/95 compatibility requirements
KWAJ (Compressed Files)
Purpose and History
KWAJ is a general-purpose compression format used internally by Microsoft for various utilities and installation packages.
Technical Characteristics
-
File Extension: Various (often
.ex_,.dl_) -
Magic Bytes:
KWAJ(0x4B57414A) orSZDD(variant) -
Structure: Single compressed file
-
Compression: LZSS, MSZIP, or Quantum
-
Header: Contains original filename and metadata
When to Use KWAJ
-
Single file compression with metadata
-
Distribution of renamed compressed files
-
Compression with original filename preservation
-
Legacy file decompression
LIT (Microsoft Reader E-books)
Purpose and History
LIT files were Microsoft’s e-book format for the Microsoft Reader application, used from 2000 to 2011. The format combined DRM with compression.
Technical Characteristics
-
File Extension:
.lit -
Magic Bytes:
ITOLITLS(encapsulated OEB) -
Structure: Compound document with encryption
-
Compression: DES encryption + LZ compression
-
Content: HTML-based text with images
OAB (Offline Address Book)
Purpose and History
OAB files are used by Microsoft Outlook to store compressed copies of the Global Address List for offline use.
Technical Characteristics
-
File Extension:
.oab -
Magic Bytes: Format-specific header
-
Structure: Compressed data blocks
-
Compression: LZ-based compression
-
Content: Address book entries and metadata
When to Use OAB
-
Extracting Outlook address book data
-
Migrating email contact information
-
Offline address book analysis
-
Email system forensics
SZDD (Single File Compression)
Purpose and History
SZDD is one of Microsoft’s earliest compression formats, using LZSS compression. It was commonly used for compressing individual files in Windows 3.x distributions.
Technical Characteristics
-
File Extension: Often
.??(third character changed to) -
Magic Bytes:
SZDD(0x535A4444) -
Structure: Simple header + compressed data
-
Compression: LZSS algorithm exclusively
-
Header: Contains original filename character
Feature Support Matrix
| Feature | CAB | CHM | HLP | KWAJ | LIT | OAB | SZDD |
|---|---|---|---|---|---|---|---|
Multi-file archives | ✓ | ✓ | ✓ | ✓ | ✓ | ||
Folder hierarchy | ✓ | ✓ | ✓ | ✓ | |||
File attributes | ✓ | ~ | ~ | ~ | ~ | ||
Timestamps | ✓ | ✓ | ✓ | ||||
Metadata | ✓ | ✓ | ~ | ~ | ✓ | ~ | |
Digital signatures | ✓ | ||||||
Spanning/Multi-volume | ✓ | ||||||
Embedded archives | ✓ | ✓ | |||||
Encryption/DRM | ~ | ✓ | |||||
Full-text search | ✓ | ✓ |
Legend: ✓ = Full support, ~ = Partial support, (blank) = Not supported
Use case recommendations
Software Distribution
Recommended: CAB
-
Multi-file support with folders
-
Excellent compression ratios
-
Digital signature support
-
Industry standard for Windows installers
-
Multi-volume support for large distributions
Alternative: KWAJ (single files only)
Documentation and Help
Recommended: CHM
-
Rich HTML content support
-
Built-in search and navigation
-
Excellent for technical documentation
-
Native Windows integration
Alternative: HLP (legacy systems only)
Single File Compression
Recommended: KWAJ or SZDD
-
Simple single-file format
-
Preserves original filename (KWAJ)
-
Fast compression/decompression
-
Good for distribution of individual files
E-book Management
Recommended: LIT
-
Only option for Microsoft Reader books
-
Suitable for DRM-free e-books
-
Convert to modern formats (EPUB, MOBI)
Performance Characteristics
Compression Ratio Comparison
Based on typical use cases (higher is better):
| Format | Text Files | Binary Files |
|---|---|---|
CAB (LZX) | 85-90% | 60-75% |
CAB (MSZIP) | 70-80% | 50-65% |
CAB (Quantum) | 75-85% | 55-70% |
CHM (LZX) | 85-90% | N/A |
HLP (LZ77) | 65-75% | N/A |
KWAJ (MSZIP) | 70-80% | 50-65% |
LIT (DES+LZ) | 70-80% | N/A |
OAB (LZ) | 65-75% | 55-65% |
SZDD (LZSS) | 55-70% | 40-55% |
Interoperability Notes
Historical Context and Evolution
Format Selection Guide
Decision tree
Need to compress files?
├── Single file?
│ ├── Legacy Windows 3.x? → SZDD
│ ├── Need metadata? → KWAJ
│ └── Modern system? → Use ZIP/7z instead
├── Multiple files?
│ ├── Help documentation?
│ │ ├── HTML-based? → CHM
│ │ └── Legacy? → HLP
│ ├── E-book content? → LIT
│ ├── Outlook data? → OAB
│ └── Software distribution? → CAB
└── Archive or read existing files? → Use appropriate formatBest practices
-
For new projects: Use standard formats (ZIP, 7z) unless Windows-specific features required
-
For Windows installers: Use CAB with LZX compression
-
For documentation: Use CHM for Windows-only, HTML for cross-platform
-
For legacy support: Maintain tools for reading old formats
-
For archival: Convert to modern formats when possible