Wat is het LZH-bestandsformaat?
LZH-bestanden bevatten bestandsarchieven gecomprimeerd met LZSS (een Lempel-Ziv-variant) gecombineerd met Huffman-codering, ontwikkeld door Haruyasu Yoshizaki in 1988 onder de naam LHarc. Deze compressiemethode stelt gebruikers in staat om effectief schijfruimte te besparen, en het formaat werd extreem populair in Japan en onder Amiga-gebruikers gedurende de jaren 90. De Japanse versie van Windows 7 bevatte een ingebouwd hulpprogramma voor het beheren van LZH-bestanden, terwijl Windows XP dit aanbood als een optionele functie.
Een enkel LZH-archief kan het volgende bevatten:
- bestanden van elk formaat, inclusief uitvoerbare bestanden,
- mappenstructuren,
- zelfstandige programma's samen met configuratiebestanden.
De extensies .lha en .lzh zijn onderling uitwisselbaar - ze verwijzen naar hetzelfde formaat en dezelfde gereedschapslijn (LHarc → LHA). LZH-archieven kunnen verschillende compressiemethoden gebruiken, gedefinieerd in de header van elk bestand door een methode-tag zoals -lh0- (opslag), -lh5-, -lh6- of -lh7-. De -lh5--methode was de meest gebruikte en is nog steeds de methode die het best wordt ondersteund door moderne uitpakprogramma's.
LZH was ooit het dominante archiefformaat voor Japanse softwaredistributie en de Amiga BBS-scene. Het wordt nu als verouderd beschouwd en is vervangen door ZIP, 7z en RAR voor algemene archivering. Systeemeigen versleuteling wordt niet ondersteund; een CRC-16-checksum in de header van elk bestand maakt integriteitscontrole bij het uitpakken mogelijk.
Beveiliging & veiligheid
RISICO: MEDIUMLZH-archieven hebben geen systeemeigen versleuteling en kunnen elke payload bevatten, dus behandel een ongevraagd .lzh-bestand als elk onbekend archief - scan het voor het uitpakken en voer geen onbekende uitvoerbare bestanden uit van oude downloads. Een specifiek historisch punt van zorg: de veelgebruikte Windows UNLHA32.DLL-decompressor had beveiligingslekken, wat de Japanse IPA ertoe bracht om het gebruik van LZH voor nieuwe doeleinden af te raden. Gebruik een actueel uitpakprogramma (7-Zip, PeaZip, lhasa) in plaats van oude LHA-tools.
Formaatdetails
in een notendopProgramma's die LZH-bestanden openen
Technische details
diepe specificaties| Compressie-algoritme | LZSS (op woordenboek gebaseerde Lempel-Ziv-variant) gecombineerd met statische of adaptieve Huffman-codering |
| Compressiemethoden | -lh0- (opslag/ongecomprimeerd), -lh1-, -lh4-, -lh5-, -lh6-, -lh7-; de methode-tag is opgeslagen in de individuele header van elk bestand |
| Bestandssignatuur | Methode-tag bytes op offset 2 (bijv. -lh of -lz); bytes 0-1 zijn de headergrootte en checksum - de signatuur bevindt zich niet op offset 0 |
| Codering | Binair, little-endian |
| Headerstructuur per bestand | Bevat methode-tag, originele en gecomprimeerde grootte, CRC-16-checksum, tijdstempel van wijziging en bestandsnaam |
| Headerniveaus | Niveau 0, 1 en 2 (en 3) - definiëren de lay-out van headervelden en de maximale lengte van de bestandsnaam |
| Integriteit | CRC-16 per gearchiveerd bestand opgeslagen in de header; de meeste uitpakprogramma's verifiëren de checksum bij decompressie |
| Versleuteling | Geen - LZH heeft geen systeemeigen versleuteling; archieven kunnen niet met een wachtwoord worden beveiligd |
| MIME-type | application/x-lzh-compressed |
| Uitwisselbare extensies | .lzh en .lha verwijzen naar hetzelfde formaat en dezelfde gereedschapslijn; beide extensies zijn algemeen in gebruik |
| Typische archiefgrootte | Enkele KB tot tientallen MB; weerspiegelt de softwaredistributie uit de jaren 90 voor Japanse shareware en Amiga BBS-distributies |
| Platformoorsprong | MS-DOS en PC-98 (Japan); ook veelvuldig gebruikt op Amiga en Sharp X68000; uitpakprogramma's zijn nu beschikbaar op alle grote besturingssystemen |
| Limiet aantal items | Geen vaste harde limiet per archief; begrensd door 32-bits offsetvelden in oudere headerniveaus, die de grootte van individuele bestanden beperken |
| Meest gebruikte methode | -lh5- (14-bits sliding window, adaptieve Huffman) - de de-facto standaardmethode en de methode die het best wordt ondersteund door moderne uitpakprogramma's |
| Uitgebracht | 1988 (LHarc); LHA/LZH widely used through the 1990s |
| Laatste versie | LHA 2.x method set (-lh5-/-lh6-/-lh7-); format frozen, no active development |
| Open standaard | Ja · royaltyvrij |
| Specificatie | web.archive.org |
LZH conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over LZH-bestanden.