Cookies voor statistiek en advertenties
We gebruiken cookies voor statistiek en voor advertenties, allebei naar Google. Weigeren verandert niets aan wat je te zien krijgt.Lees de privacypagina
Hier zet je ZIP naar XZ om, gratis en zonder account: sleep het bestand hierboven erin en binnen een paar seconden staat het resultaat klaar om te downloaden. Het bestand reist versleuteld naar onze server, wordt daar omgezet en wordt gewist zodra het werk klaar is.
Tot 100 bestanden tegelijk. Verschillende formaten door elkaar is prima.
Ze worden een voor een omgezet en samen in één ZIP gedownload.
ZIP naar XZ
Comprimeertijd wordt eenmaal betaald, door één machine. Overdracht wordt betaald door iedereen die het bestand ophaalt, elke keer, en op een gemeten bucket of een CDN wordt het ook in geld betaald. Die asymmetrie is het hele argument voor XZ.
Het vertelt ook precies wanneer het de moeite niet waard is. Een archief dat één collega eenmaal opent heeft geen economie om te optimaliseren: de seconden aan pakken zijn de enige seconden in het hele leven van het bestand, en gzip was al klaar geweest. Grijp naar XZ als het bestand publiek heeft, een mirror, een CDN-rekening of een lange houdbaarheid.
XZ is een compressor, geen archief. Het register noteert het als streamformaat met één lid en markeert de afwezigheid van elke mapstructuur als bekend probleem — er is nergens in een .xz-bestand plek voor een naam, een pad of een rechtenbit.
De inhoud van je ZIP wordt daarom eerst uitgelegd in een TAR, die dat allemaal draagt, en XZ comprimeert die tarball als één object. Dit is geen omweg bedacht voor deze omzetter; het is de opzet die het hele Unix-ecosysteem gebruikt.
Het getal is het hele verhaal. DEFLATE, dat zowel ZIP als gzip gebruikt, codeert een herhaling als verwijzing naar iets binnen de laatste 32 KB. LZMA2 in XZ kan tot 64 MB terugverwijzen — tweeduizend keer de afstand — en codeert die verwijzingen goedkoper.
Waar dat zich toont is elk archief waarvan de herhaling verspreid ligt: een broncodeboom waar dezelfde licentiekop tweehonderd bestanden opent, een dataset van vergelijkbare CSV-exports. Waar het zich het minst toont is een ZIP van foto’s of video, want de inhoud was al gecomprimeerd voor het gearchiveerd werd.
Een groot woordenboek is niet gratis aan de andere kant. De decompressor moet dat venster in geheugen houden om verwijzingen ernaar op te lossen, dus het benodigde geheugen volgt ruwweg het woordenboek waarmee het bestand gepakt is.
Op elke desktop of server is dit onbelangrijk. Het houdt op onbelangrijk te zijn op kleine hardware — een router, een microcontroller-achtig board, een beperkte build-agent — waar gzips bescheiden venster van 32 KB juist een voordeel is.
Ze delen een compressiefamilie en het register geeft beide een woordenboek tot 64 MB, dus op ratio valt er weinig te kiezen. Het verschil is wat om de gecomprimeerde data heen zit. 7Z is een container met een eigen directory, eigen versleuteling en eigen checksums. XZ is een compressor rond één stroom.
Voor distributie wint de stroom op conventie: elke Linux- en macOS-machine heeft tar en xz, en bijna geen enkele heeft 7-Zip standaard. Voor een archief dat je bewaart en doorbladert is 7Z de betere vorm.
Beide formaten verifiëren zichzelf. Een ZIP slaat per item een CRC op, dus een beschadigd lid valt op bij het uitpakken. XZ draagt een controle over zijn gecomprimeerde stroom — CRC-32, CRC-64 of SHA-256 — en weigert data terug te geven die niet klopt.
Wat verandert is de granulariteit. In een ZIP is de controle per bestand, dus één slecht item is één slecht bestand. In een .xz dekt de controle de hele stroom, dus schade wordt gemeld voor het hele archief.
Een gzip-stroom kan de oorspronkelijke bestandsnaam vastleggen; een XZ-stroom niet. Het is compressie met een kop die de controle en de filters beschrijft, en geen plek voor een naam of tijdstempel.
Dat legt de hele last van het beschrijven van het bestand bij hoe je het noemt. Downloads hier nemen je oorspronkelijke stam plus de doelextensie, dus release-1.4.zip komt terug als release-1.4.xz; het hernoemen naar release-1.4.tar.xz voor je publiceert is het meest nuttige dat je nog kunt doen.
De omzetting draait op onze omzetter in plaats van in je browser, dus de ZIP wordt over een versleutelde verbinding geüpload, uitgepakt met 7-Zip, getard, gecomprimeerd met xz en teruggestuurd. Upload, tussenstappen en uitvoer worden verwijderd zodra de taak eindigt.
De gevolgen zijn de gratis grens van 25 MB per bestand, een plafond van zestig seconden per taak, een weigering voor elk archief dat meer dan 2 GB claimt, en een schone mislukking in plaats van een hang bij een met wachtwoord beveiligde ZIP.
Projecten die dit goed doen versturen twee bestanden. De .tar.xz is voor wie het in een shell of script uitpakt, waar de kleinere download echte bandbreedte is en het gereedschap er al is. De ZIP blijft voor iedereen op Windows die wil dubbelklikken en nooit aan compressie-algoritmes wil denken.
Dat is geen besluiteloosheid; het zijn twee publieken met echt verschillende beperkingen. Verstuur je maar één artefact, verstuur dan het bestand dat je werkelijke downloaders kunnen openen — een prachtig gecomprimeerd archief dat niemand kan uitpakken is een supportticket met een uitstekende ratio.
Is de ZIP deel van een build die reproduceerbaar hoort te zijn, wees je er dan van bewust dat herpakken geen neutrale bewerking is. De bytes van de leden blijven exact bewaard, maar het archief eromheen wordt vers geschreven: volgorde, tijdstempels en de eigen keuzes van de compressor komen van de machine die pakt.
Dat telt alleen als iets stroomafwaarts het archief checksummt in plaats van de inhoud. Releasepijplijnen die een hash naast de download publiceren moeten die hash genereren uit het bestand dat ze daadwerkelijk versturen.
| ZIP | XZ | |
|---|---|---|
| Volledige naam | ZIP-archief | XZ-archief |
| Bestandsextensie | .zip | .xz |
| Mediatype | application/zip | application/x-xz |
| Compressie | Zonder verlies — er gaat niets weg | Zonder verlies — er gaat niets weg |
| Voor het eerst gepubliceerd | 1989 | 2009 |
| Uitgegeven door | PKWARE | — |
| Specificatie | APPNOTE.TXT | — |
| Licentie | Open standaard | Open standaard |
| Stand van zaken | Actueel | Actueel |
| Opent in een browser | Geen browser | Geen browser |
| In plaats daarvan overwogen | 7Z, TAR | GZ, BZ2, 7Z |
Er gaat niets verloren. ZIP en XZ bewaren hun inhoud verliesvrij: de omzetting wisselt de verpakking, niet de kwaliteit, en je kunt haar herhalen zonder dat schade zich opstapelt.
XZ comprimeert één stroom en kan geen map bevatten. Precies daarom wordt XZ meestal met een archiefformaat gecombineerd: het archief verzamelt de bestanden, XZ comprimeert het resultaat.
7-Zip leest zowel ZIP als XZ, dus je kunt het resultaat naast het origineel leggen zonder een tweede programma.
XZ werkt met 8 MB tegelijk, ZIP met 32 KB: binnen dat stuk moet een herhaling vallen voordat ze weggerekend kan worden. Daar komt het verschil in compressie vandaan, en daar gaat de extra rekentijd heen.
De twee mikken op ander werk: ZIP op gegevens tussen programma’s verplaatsen en een af bestand overdragen, XZ op archivering. Dat is het afwegen waard, want de reden dat het ene bestaat is meestal de reden dat het andere onhandig is.
ZIP is het formaat van PKWARE, verschenen in 1989. Het is vastgelegd in APPNOTE.TXT, en dat is de moeite waard als het bestand het gereedschap moet overleven dat het schreef.
XZ stamt uit 2009. xz, 7-Zip en Keka lezen het formaat.
ZIP verscheen in 1989 en XZ in 2009. Het oudste is doorgaans het veiligste bestand om te overhandigen; het nieuwste doet hetzelfde werk met minder bytes.
Ja: deze omzetting heeft software nodig die niet in een browser draait. Het bestand reist versleuteld naar onze server, wordt gewist zodra het werk klaar is en het resultaat na 60 minuten. Het werk wordt gedaan door 7-Zip, de archiveerder, in zijn opdrachtregelvorm.
Ja, tot 100 omzettingen per dag voor bestanden tot 25 MB. Die ene grens bestaat omdat deze omzetting op een server draait die wij betalen. Verder is er hier niets begrensd, en een watermerk komt er in geen geval op. De limiet bestaat omdat 7-Zip een machine van ons nodig heeft om te draaien.
Nee. XZ bewaart dezelfde inhoud zonder iets weg te gooien: het resultaat is in kwaliteit identiek aan het origineel. De bestanden komen er byte voor byte hetzelfde uit. Wat het niet overleeft is wat de houder *over* ze wist en niet wat hij *in* zich had: een wachtwoord, en bij sommige formaten de oorspronkelijke rechten en datums.
XZ comprimeert één stroom en kan geen map bevatten. Precies daarom wordt XZ meestal met een archiefformaat gecombineerd: het archief verzamelt de bestanden, XZ comprimeert het resultaat.
Er gaat niets verloren. ZIP en XZ bewaren hun inhoud verliesvrij: de omzetting wisselt de verpakking, niet de kwaliteit, en je kunt haar herhalen zonder dat schade zich opstapelt.
Wat deze pagina over ZIP en XZ beweert, is na te gaan, en dit zijn de documenten die de zaak beslechten.