Dictionary compression with context-based prediction using hash tables. Combines PPM-style context modeling with LZ77-style string matching for efficient compression of text with repeated patterns.
| Property | Value |
|---|---|
| Category | Compression Algorithms |
| Sub-category | Dictionary |
| Security status | Not classified |
| Complexity | Intermediate |
| Inventor | Charles Bloom |
| Year | 1996 |
| Origin | πΊπΈ United States |
| Source | algorithms/compression/lzp.js |
Status: not classified β treat as unverified.
No vulnerabilities are recorded for this implementation.
5 vectors ship with this algorithm and run in the test suite. Byte values are hexadecimal.
Vector 1 β Empty input test
| Field | Value |
|---|---|
input |
(empty) |
expected |
0000000003 |
Vector 2 β Single byte - all literals (no context)
| Field | Value |
|---|---|
input |
41 |
expected |
01000000030041 |
Vector 3 β Repetitive pattern - AAAA
| Field | Value |
|---|---|
input |
41414141 |
expected |
04000000030041414141 |
Vector 4 β Pattern repetition - ABCABC
| Field | Value |
|---|---|
input |
414243414243 |
expected |
060000000300414243414243 |
Vector 5 β Real text - Hello world!
| Field | Value |
|---|---|
input |
48656c6c6f20776f726c6421 |
expected |
0c000000030048656c6c6f20776f00726c6421 |