ZIP | |
---|---|
Rozšíření |
.zip .zipx (новые алгоритмы сжатия) |
MIME typ | aplikace/zip [1] |
Podpis | ne, i když obvykle PK\003\004, PK\005\006(prázdný archiv) nebo PK\007\008(rozdělený archiv). |
Vývojář | Phil Katz , PKWARE |
zveřejněno | 1989 |
Poslední vydání | 6.3.9 (15. července 2020 ) |
Typ formátu | Komprese dat |
Rozšířeno z | Vyfouknout |
Vyvinutý v |
JAR ( EAR , RAR (Java) , WAR ) Office Open XML (Microsoft) Open Packaging Conventions OpenDocument (ODF) XPI (rozšíření Mozilly) |
standard(y) | APPNOTE od PKWARE |
ZIP je bezztrátový formát pro archivaci souborů a kompresi dat . Archiv ZIP může obsahovat jeden nebo více souborů a adresářů, které lze komprimovat různými algoritmy. Nejčastěji používaným kompresním algoritmem v ZIP je Deflate . Formát byl vytvořen v roce 1989 Philem Katzem a implementován v programu PKZIP společnosti PKWARE [2] jako náhrada za archivní formát ARC Toma Hendersona . Formát ZIP je podporován mnoha programy, včetně Microsoft Windows (od roku 1998) a Apple Mac OS X (od verze 10.3). Mnoho bezplatných operačních systémů má také vestavěnou podporu pro archivy ZIP.
Archivy ZIP jsou obvykle uloženy jako soubory „.zip“ nebo „.ZIP“ a používají typ MIMEapplication/zip . [1] . Pro vytváření ZIP archivů a extrahování (rozbalování) souborů v nich obsažených lze využít speciální utility, jako jsou terminálové PKZIP a PKUNZIP [3] nebo grafické WinZip , WinRAR , Info-ZIP , 7-Zip , PeaZip a mnoho dalších. V případě potřeby lze archiv ZIP spojit s modulem unpacker do jednoho spustitelného souboru (tzv. archiv SFX).
Na počátku 80. let 20. století vyvinuly BBS a FidoNet a Software Enhancement Associates (SEA) přišli s formátem komprese ARC , založeným na Huffmanových kódech . Program byl distribuován podle sharewarového modelu , přičemž žadateli o registraci byly dodány zdrojové texty.
Programátor Phil Katz napsal vlastní programy pro práci s takovými archivy - PKARC a PKXARC. Pracovaly desetkrát rychleji než ARC (motor byl napsán v assembleru), stály méně, druhý byl rozbalovač a byl distribuován zdarma. Programy měly takový úspěch, že Katz opustil svou práci a založil PKWARE [4] .
SEA zažalovala Katze za plagiátorství [5] [6] , zatímco online komunita byla proti - zdálo se, že zpětně převádějí formát ARC na proprietární a " Goliath " soudil "Davida" (ve skutečnosti se obě společnosti skládaly z několika lidí ). Ukázalo se, že Katzův původní text měl stejné překlepy jako SEA. V důsledku toho dospěli k této dohodě: Katz zaplatí více než 60 tisíc dolarů, odečte procento ze všech budoucích prodejů softwaru pro ARC, vytvoří konečný program PKPAK a přejde na nový formát.
Tak se zrodil formát ZIP. Jméno „zip“ (což znamená „rychle se pohybovat“) navrhl Katzův přítel Robert Mahoney. Tímto názvem naznačovali, že jejich aplikace byla rychlejší než ARC a další archivátory té doby. Nejstarší známá verze specifikace formátu ZIP, .ZIP File Format Specification , byla publikována jako součást distribuce PKZIP 0.9 v souboru APPNOTE.TXT v roce 1989. Katz zároveň slíbil, že kdokoli může svobodně psát své vlastní implementace [7] [8] [9] [10] [11] .
Katzova pověst „dobrého chlapa“ rychle udělala ze ZIP hlavní archivní formát na BBS. A SEA se nevzpamatovala ze špatné publicity a byla v roce 1992 zrušena.
Každá specifikace formátu ZIP má své vlastní číslo, které se nemusí shodovat s čísly verzí PKZIP (to platí zejména pro PKZIP 6 a novější verze). PKWARE neustále přidává funkce do svého formátu, ale nová verze formátu je zpřístupněna až s příští hlavní verzí programu PKZIP.
Verze specifikace | Rok | Nové příležitosti |
2,0 | 1993 | Soubory lze komprimovat pomocí metody Deflate [1] |
2.1 | 1996 | Deflate64 komprese |
4.5 | 2001 | 64bitový formát ZIP popsaný [12] |
4.6 | 2001 | komprese bzip2 (publikováno později s APPNOTE 5.2) |
5,0 | 2002 | Podpora pro šifrování DES , 3DES , RC2 , RC4 (později publikováno s APPNOTE 5.2) |
5.2 | 2003 | Podpora šifrování AES [13] [14] , oprava specifikace šifrování RC2-64 |
6.1 | 2004 | Popsané uložení certifikátů [15] |
6.2.0 | 2004 | Je popsáno šifrování centrálního adresáře [16] |
6.3.0 | 2006 | Popisuje ukládání názvů souborů ve formátu Unicode ( UTF-8 ) [17] ; byl rozšířen seznam podporovaných algoritmů pro šifrování, kompresi (přibyly moderní metody jako LZMA a PPMd+ ) a hashování |
6.3.1 | 2007 | Opravené standardní hodnoty hash SHA-256/384/512 [18] |
6.3.2 | 2007 | Popsaná metoda komprese 97 ( WavPack ) [19] |
6.3.3 [20] | 2012 | Změny formátování dokumentu pro usnadnění odkazu na aplikační poznámky PKWARE z jiných norem pomocí metod, jako je JTC 1 REFERENCING Explanatory Report (RER) podle pokynů JTC 1/SC 34 N 1621. |
6.3.4 [21] | 2014 | Aktualizace adresy kanceláře PKWARE, Inc |
6.3.5 | 2018 | Dokumentované kompresní metody 16, 96 a 99. Časové razítko/epocha DOS a přesnost. Přidána další pole pro klíče a dešifrování, stejně jako překlepy a vysvětlení. |
Nástroj WinZip (od verze 12.1) používá příponu souboru .zipxpro archivy ZIP s moderními metodami komprese. ZIPX umí kromě klasického Deflate používat metody BZip , LZMA , PPMd , JPEG a WavPack . [22] [23] Z tohoto důvodu nemusí být soubory ZIPX rozpoznány klasickými dekompresními utilitami ZIP, které implementují pouze metodu Deflate .
Soubory ZIP jsou archivy, které ukládají více souborů. Soubory tvořící archiv lze komprimovat různými způsoby, včetně ukládání bez komprese. Nezávisle komprimujte soubory v archivu, což usnadňuje jejich extrahování nebo přidávání nových, aniž byste museli rozbalovat nebo znovu balit celý archiv. Tato schopnost je výraznou výhodou oproti komprimovanému formátu souboru tar, který neumožňuje jednoduchou manipulaci s obsahem s náhodným přístupem.
Na konci souboru ZIP je speciální sekce zvaná adresář. Ukládá seznam souborů v archivu ZIP a umístění každého komprimovaného souboru v archivu. Pomocí dat adresáře mohou aplikace rychle získat úplný seznam souborů z archivu, aniž by museli číst celý archiv ZIP. Archivní soubor ZIP může také obsahovat další data, která nesouvisejí s ukládáním komprimovaných dat. Tato funkce umožňuje zejména vytvářet samorozbalovací archivy (SFX) sestávající z dekompresní aplikace a komprimovaných dat. Takové archivy začínají programovým kódem a operační systém je rozpozná jako spustitelný soubor. Po spuštění aplikace najde ZIP archiv a jeho adresář a rozbalí soubory, což se může hodit pro přenos archivů uživatelům, kteří nemají nainstalované aplikace pro práci s formátem ZIP. Protože mnoho aplikací rozpoznává formát ZIP podle přítomnosti adresáře na konci souboru, je také možné použít nejjednodušší steganografický trik ke skrytí archivu přidáním archivu za nějaký neškodný soubor, jako je obrázek GIF a změna příponu souboru (podobně jako u tzv. metody RARJPG). Většina aplikací zobrazí obrázek a ignoruje archiv jako irelevantní nevyžádanou poštu, zatímco příjemce souboru bude moci archiv otevřít po obnovení přípony „.ZIP“.
Formát .ZIP používá pro kontrolu integrity 32bitový algoritmus CRC . Archivní soubory také obsahují dvě kopie archivního adresáře, aby se zvýšila ochrana souborů před poškozením dat během přenosu nebo ukládání.
Formát ZIP je nyní považován za přijímaný formát pro mnoho aplikací [5] včetně komprese, zálohování a výměny dat. Spolu s velkým množstvím utilit, které pracují se soubory ZIP z příkazové řádky, se v polovině 90. let objevily i grafické programy pro práci s nimi . Podpora formátu ZIP je součástí mnoha moderních operačních systémů.
V současné době existuje řada algoritmů komprese dat, které předčí ZIP jak rychlostí, stupněm zabalení, tak dalšími funkcemi. ZIP je však stále oblíbenou metodou komprese dat. .
Mnoho konkurenčních archivátorů kromě vlastního formátu podporuje i formát ZIP.
Tato metoda komprese je také široce používána v jiných programech a dokonce i v některých formátech souborů. Například soubory *.odt a *.docx jsou ve skutečnosti archivy ZIP obsahující soubory se značkami stránek XML a další zdroje (jako jsou obrázky). Algoritmus ZIP lze také použít v běžném formátu souboru obrázku - TIFF .
Existují archivátory třetích stran, které vytvářejí archivy ZIP metodou komprese Deflate , ale s vyšším kompresním poměrem než původní nástroje. Mezi nimi je 7-Zip a archivátor kzip upravený Kenem Silvermanem .
Vzhledem k tomu, že formát ZIP nepodporuje speciální data pro obnovu (na rozdíl například od RAR ), je třeba mít na paměti, že pokud je archiv ZIP poškozen, lze obnovit pouze jeho strukturu (tj. obsah archivu lze obnovit znovu), ale data poškozená kvůli poškození selžou. Chcete-li obnovit poškozené archivy ZIP, existují specializované nástroje, například bezplatné:
Archivátory a kompresory | |
---|---|
otevřené a zdarma | |
Volný, uvolnit | |
Komerční | |
Příkazový řádek |
Archivní formáty | |
---|---|
Pouze archivace | |
Pouze komprese | |
Archivace a komprese | |
Balení a distribuce softwaru |