ZIP

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită pe 22 martie 2022; verificările necesită 2 modificări .
ZIP
Extensie .zip
.zipx (новые алгоритмы сжатия)
tip MIME aplicație/zip [1]
Semnătură nu, deși de obicei PK\003\004, PK\005\006(arhivă goală) sau PK\007\008(arhivă împărțită).
Dezvoltator Phil Katz , PKWARE
publicat 1989
Ultima lansare 6.3.9 (15 iulie 2020 ) ( 2020-07-15 )
Tip de format Comprimarea datelor
Extins din Dezumfla
Dezvoltat în JAR ( EAR , RAR (Java) , WAR )
Office Open XML (Microsoft)
Open Packaging Conventions
OpenDocument (ODF)
XPI (extensii Mozilla)
Standard(e) APPNOTE de PKWARE

ZIP este un format fără pierderi de arhivare și comprimare a datelor . O arhivă ZIP poate conține unul sau mai multe fișiere și directoare, care pot fi comprimate cu diferiți algoritmi. Cel mai frecvent utilizat algoritm de compresie în ZIP este Deflate . Formatul a fost creat în 1989 de Phil Katz și implementat în programul PKZIP al lui PKWARE [2] ca înlocuitor pentru formatul de arhivă ARC al lui Tom Henderson . Formatul ZIP este acceptat de multe programe, inclusiv Microsoft Windows (din 1998) și Apple Mac OS X (din versiunea 10.3). Multe sisteme de operare gratuite au, de asemenea, suport încorporat pentru arhive ZIP.

Arhivele ZIP sunt de obicei stocate ca fișiere „.zip” sau „.ZIP” și folosesc tipul MIMEapplication/zip . [1] . Pentru a crea arhive ZIP și a extrage (depacheta) fișierele conținute în acestea, pot fi folosite utilități speciale, precum terminalul PKZIP și PKUNZIP [3] sau grafic WinZip , WinRAR , Info-ZIP , 7-Zip , PeaZip și multe altele. Dacă este necesar, arhiva ZIP poate fi combinată cu modulul de despachetare într-un singur fișier executabil (așa-numita arhivă SFX).

Istorie

La începutul anilor 1980, BBS și FidoNet s-au dezvoltat , iar Software Enhancement Associates (SEA) a creat formatul de compresie ARC , bazat pe codurile Huffman . Programul a fost distribuit după modelul shareware , în timp ce solicitantul a fost furnizat cu texte sursă.

Programatorul Phil Katz și-a scris propriile programe pentru a lucra cu astfel de arhive - PKARC și PKXARC. Au funcționat de zece ori mai repede decât ARC (motorul a fost scris în asamblator), a costat mai puțin, acesta din urmă era un despachetator și era distribuit gratuit. Programele au avut un astfel de succes, încât Katz a renunțat la locul de muncă și a fondat PKWARE [4] .

SEA l-a dat în judecată pe Katz pentru plagiat [5] [6] , în timp ce comunitatea online era împotrivă - se părea că faceau retroactiv formatul ARC proprietar și „ Goliath ” îl judeca pe „David” (de fapt, ambele companii erau formate din mai multe persoane). ). S-a dovedit că textul original al lui Katz avea aceleași greșeli de ortografie ca și al lui SEA. Drept urmare, au ajuns la acest acord: Katz plătește mai mult de 60 de mii de dolari, deduce un procent din toate vânzările viitoare de software pentru ARC, realizează programul final PKPAK și trece la un nou format.

Așa s-a născut formatul ZIP. Numele „zip” (însemnând „a mișca repede”) a fost sugerat de prietenul lui Katz, Robert Mahoney. Prin acest nume, ei au sugerat că aplicarea lor a fost mai rapidă decât ARC și alți arhivatori ai vremii. Cea mai veche versiune cunoscută a specificației formatului ZIP, .ZIP File Format Specification  , a fost publicată ca parte a distribuției PKZIP 0.9 în fișierul APPNOTE.TXT în 1989. În același timp, Katz a promis că oricine își poate scrie liber propriile implementări [7] [8] [9] [10] [11] .

Reputația lui Katz de „băiat bun” a făcut rapid din ZIP principalul format de arhivă pe BBS. Și SEA nu și-a revenit din publicitate proastă și a fost lichidată în 1992.

Istoricul versiunilor

Fiecare specificație de format ZIP are propriul său număr, care poate să nu se potrivească cu numerele versiunii PKZIP (acest lucru este valabil mai ales pentru PKZIP 6 și versiunile mai noi). PKWARE adaugă în mod constant caracteristici la formatul său, dar o nouă versiune a formatului este disponibilă numai cu următoarea lansare majoră a programului PKZIP.

Versiune specificație An Noi oportunitati
2.0 1993 Fișierele pot fi comprimate folosind metoda Deflate [1]
2.1 1996 Dezumflare64 compresie
4.5 2001 Format ZIP pe 64 de biți descris [12]
4.6 2001 compresie bzip2 (publicată ulterior cu APPNOTE 5.2)
5.0 2002 Suport pentru criptare DES , 3DES , RC2 , RC4 (publicat ulterior cu APPNOTE 5.2)
5.2 2003 Suport pentru criptare AES [13] [14] , remedierea specificațiilor de criptare RC2-64
6.1 2004 Stocarea descrisă a certificatelor [15]
6.2.0 2004 Criptarea directorului central este descrisă [16]
6.3.0 2006 Descrie stocarea numelor de fișiere în format Unicode ( UTF-8 ) [17] ; lista de algoritmi acceptați pentru criptare, compresie a fost extinsă (au fost adăugate metode moderne precum LZMA și PPMd+ ) și hashing
6.3.1 2007 Valori hash standard fixe SHA-256/384/512 [18]
6.3.2 2007 Metoda de compresie descrisă 97 ( WavPack ) [19]
6.3.3 [20] 2012 Modificări de formatare a documentelor pentru a facilita referirea la notele de aplicare PKWARE din alte standarde, utilizând metode precum JTC 1 REFERENCING Explicative Report (RER) conform instrucțiunilor JTC 1/SC 34 N 1621.
6.3.4 [21] 2014 Actualizare adresa biroului PKWARE, Inc
6.3.5 2018 Metode de compresie documentate 16, 96 și 99. Timp/epocă DOS și precizie. S-au adăugat câmpuri suplimentare pentru chei și decriptare, precum și greșeli de scriere și explicații.


Utilitarul WinZip (din versiunea 12.1) folosește o extensie de fișier .zipxpentru arhivele ZIP cu metode moderne de compresie. ZIPX poate folosi metodele BZip , LZMA , PPMd , JPEG și WavPack în plus față de clasica Deflate . [22] [23] Din acest motiv, fișierele ZIPX pot să nu fie recunoscute de utilitățile clasice de decompresie ZIP care implementează doar metoda Deflate .

Structura

Fișierele ZIP sunt arhive care stochează mai multe fișiere. Fișierele care compun arhiva pot fi comprimate în diferite moduri, inclusiv salvarea fără compresie. Comprimați fișierele dintr-o arhivă în mod independent, facilitând extragerea sau adăugarea altora noi, fără a fi nevoie să despachetați sau să reambalați întreaga arhivă. Această capacitate este un avantaj distinct față de formatul de fișier tar comprimat, care nu permite gestionarea simplă a conținutului cu acces aleatoriu.

La sfârșitul unui fișier ZIP este o secțiune specială numită director. Stochează o listă de fișiere într-o arhivă ZIP și locația fiecărui fișier comprimat din arhivă. Folosind datele directorului, aplicațiile pot obține rapid o listă completă de fișiere dintr-o arhivă fără a fi nevoie să citească întreaga arhivă ZIP. Fișierul de arhivă ZIP poate include și date suplimentare care nu sunt legate de stocarea datelor comprimate. În special, această caracteristică vă permite să creați arhive autoextractabile (SFX) constând dintr-o aplicație de decompresie și date comprimate. Astfel de arhive încep cu codul de program și sunt recunoscute de sistemul de operare ca fișier executabil. La lansare, aplicația găsește arhiva ZIP și directorul acesteia și despachetează fișierele, ceea ce poate fi convenabil pentru transferul arhivelor către utilizatorii care nu au aplicații instalate pentru lucrul cu formatul ZIP. Deoarece multe aplicații recunosc formatul ZIP prin prezența unui director la sfârșitul fișierului, devine, de asemenea, posibil să folosiți cel mai simplu truc steganografic pentru a ascunde arhiva prin adăugarea arhivei după un fișier inofensiv, cum ar fi o imagine GIF și schimbarea extensia fișierului (similar așa-numitei metode RARJPG). Majoritatea aplicațiilor vor afișa imaginea, ignorând arhiva ca junk irelevant, în timp ce destinatarul fișierului va putea deschide arhiva după ce extensia „.ZIP” este restaurată.

Formatul .ZIP utilizează un algoritm CRC pe 32 de biți pentru verificarea integrității. De asemenea, fișierele de arhivă includ două copii ale directorului de arhivă pentru a crește protecția fișierelor împotriva coruperii datelor în timpul transmiterii sau stocării.

ZIP astăzi

Formatul ZIP este acum considerat a fi formatul acceptat pentru multe aplicații [5] inclusiv compresie, backup și schimb de date. Împreună cu un număr mare de utilitare care funcționează cu fișiere ZIP din linia de comandă, la mijlocul anilor 1990 au apărut programe grafice pentru lucrul cu acestea . Suportul pentru formatul ZIP este inclus în multe sisteme de operare moderne.

În acest moment, există o serie de algoritmi de compresie a datelor care depășesc ZIP atât ca viteză, cât și ca grad de ambalare, cât și în funcții suplimentare. Cu toate acestea, ZIP este încă o metodă populară de compresie a datelor. .

Mulți arhivatori concurenți, pe lângă formatul propriu, acceptă și formatul ZIP.

Această metodă de compresie este utilizată pe scară largă și în alte programe și chiar în unele formate de fișiere. De exemplu, fișierele *.odt și *.docx sunt de fapt arhive ZIP care conțin fișiere de marcare a paginilor XML și resurse suplimentare (cum ar fi imagini). De asemenea, algoritmul ZIP poate fi utilizat într-un format comun de fișier imagine - TIFF .

Există arhivare terță parte care creează arhive ZIP cu metoda de compresie Deflate , dar cu un raport de compresie mai mare decât utilitarele originale. Printre acestea se numără 7-Zip și arhivatorul kzip modificat de Ken Silverman .

Restaurarea arhivelor ZIP

Deoarece formatul ZIP nu acceptă date speciale pentru recuperare (spre deosebire de, de exemplu, RAR ), trebuie amintit că dacă o arhivă ZIP este deteriorată, numai structura acesteia poate fi restaurată (adică cuprinsul arhivei poate fi restaurată din nou), dar datele deteriorate de pentru deteriorare, eșuează. Pentru a restaura arhivele ZIP deteriorate, există utilități specializate, de exemplu, gratuite:

Note

  1. 1 2 3 Înregistrarea unui nou tip MIME Content-Type/Subtype - application/zip , IANA , 1993-07-20 , < http://www.iana.org/assignments/media-types/application/zip > . Preluat la 5 ianuarie 2012. Arhivat 23 mai 2012 la Wayback Machine 
  2. ^ Phillip Katz, Computer Software Pioneer, 37 de ani , The New York Times  (1 mai 2000). Arhivat din original pe 30 iulie 2017. Preluat la 14 iunie 2009.
  3. Aplicații de microcomputer pentru administrația publică (PADM 5530) Instrucțiuni privind utilizarea PKZIP și PKUNZIP (DOS) . Consultat la 5 decembrie 2016. Arhivat din original la 16 iunie 2016.
  4. Ascensiunea și căderea unei vedete software; Phil Katz Loved Code - and Liquor  (engleză) , wsj (15 august 1997). Arhivat din original pe 6 ianuarie 2018. Preluat la 7 ianuarie 2018.
  5. 1 2 Mark Stamp, Richard M. Low. 3.5 PKZIP // Criptanaliză aplicată: ruperea cifrurilor în lumea reală . - John Wiley & Sons, 2007. - P. 110-111. — 424 p. — ISBN 9780470148761 .
  6. Phil Katz (autor PKARC) dat în judecată de SEA (autor ARC) Arhivat 24 august 2019 la Wayback Machine , 14 iunie 1988, comp.sys.ibm.pc ; Dezvoltatorii de shareware luptă împotriva încălcării drepturilor de autor, Daniel J. Lyons, PCWEEK (31 mai 1988  )
  7. Brian Livingston (8 septembrie 2003), PKZip Must Open Up , < http://brianlivingston.com/eweek/article2/0,4149,1257562,00.html > . Preluat la 5 ianuarie 2012. Arhivat la 11 noiembrie 2018 la Wayback Machine 
  8. Oricum, de unde au venit fișierele Zip? , Infinity Design Concepts, Inc. , < http://www.idcnet.us/ziphistory.html > . Preluat la 5 ianuarie 2012. Arhivat la 20 noiembrie 2012 la Wayback Machine 
  9. Comunicat de presă , 1989 , < http://cd.textfiles.com/pcmedic9310/MAIN/MISC/COMPRESS/ZIP.PRS > . Preluat la 5 ianuarie 2012. Arhivat 27 mai 2012 la Wayback Machine 
  10. Fondatorul nostru - Phil Katz , PKWARE , < http://www.pkware.com/about-us/phil-katz > . Preluat la 5 ianuarie 2012. Arhivat la 14 ianuarie 2012 la Wayback Machine 
  11. Gareth Horton; Rob Weir și Alex Brown (2 noiembrie 2010), sc34-wg1 , < http://mailman.vse.cz/pipermail/sc34wg1study/2010-November/000082.html > . Preluat la 5 ianuarie 2012. Arhivat la 3 martie 2016 la Wayback Machine 
  12. Fișier: APPNOTE.TXT - .ZIP Specificații de format de fișier Versiunea: 4.5 Revizuită: 11/01/2001 , 3 decembrie 2001 , < http://www.pkware.com/support/appnote.txt > . Preluat la 21 aprilie 2012. Arhivat la 3 decembrie 2001 la Wayback Machine 
  13. APPNOTE.TXT - Specificație de format de fișier .ZIP, Versiunea: 5.2 - NOTIFICARE DE SCHIMBARE , 16 iulie 2003 , < http://www.pkware.com/documents/APPNOTE/APPNOTE-5.2.0.txt > . Preluat la 5 ianuarie 2012. Arhivat la 28 februarie 2014 la Wayback Machine 
  14. Fișier: APPNOTE.TXT - Versiunea specificației formatului fișierului .ZIP: 5.2 - NOTIFICARE DE SCHIMBARE Revizuită: 06/02/2003 , 2 iulie 2003 , < http://pkware.com/products/enterprise/white_papers/appnote.html > . Preluat la 21 aprilie 2012. Arhivat la 2 iulie 2003 la Wayback Machine 
  15. Fișier: APPNOTE - .ZIP File Format Specification Version: 6.1.0 - NOTIFICARE DE SCHIMBARE Revizuit: 01/20/2004 , 19 August 2004 , < http://www.pkware.com/company/standards/appnote/ > . Preluat la 21 aprilie 2012. Arhivat 19 august 2004 la Wayback Machine 
  16. APPNOTE.TXT - Specificație de format de fișier .ZIP, Versiunea: 6.2.0 - NOTIFICARE DE SCHIMBARE , 26 aprilie 2004 , < http://www.pkware.com/documents/APPNOTE/APPNOTE-6.2.0.txt > . Preluat la 5 ianuarie 2012. Arhivat la 13 februarie 2014 la Wayback Machine 
  17. APPNOTE.TXT - .ZIP File Format Specification, Versiunea: 6.3.0 , 29 septembrie 2006 , < http://www.pkware.com/documents/APPNOTE/APPNOTE-6.3.0.TXT > . Preluat la 5 ianuarie 2012. Arhivat la 3 februarie 2014 la Wayback Machine 
  18. Fișier: APPNOTE.TXT - .ZIP Specificații de format de fișier Versiunea: 6.3.1 Revizuită: 11 aprilie 2007 , 14 mai 2007 , < http://www.pkware.com/documents/casestudies/APPNOTE.TXT > . Preluat la 21 aprilie 2012. Arhivat la 5 decembrie 2014 la Wayback Machine 
  19. Fișier: APPNOTE.TXT - .ZIP File Format Specification Versiunea: 6.3.2 Revizuită: 28 septembrie 2007 , 28 septembrie 2007 , < http://www.pkware.com/documents/casestudies/APPNOTE.TXT > . Preluat la 21 aprilie 2012. Arhivat la 5 decembrie 2014 la Wayback Machine 
  20. Fișier: APPNOTE.TXT - Specificații de format de fișier .ZIP Versiunea: 6.3.3 Revizuită: 01 septembrie 2012 , septembrie 2012 , < http://www.pkware.com/documents/casestudies/APPNOTE.TXT > Copie arhivată din 5 Decembrie 2014 la Wayback Machine 
  21. Fișier: APPNOTE.TXT - Specificații de format de fișier .ZIP Versiunea: 6.3.4 Revizuită: 1 octombrie 2014 , 1 octombrie 2014 , < http://www.pkware.com/documents/casestudies/APPNOTE.TXT > Arhivat din decembrie 5, 2014 la Wayback Machine 
  22. Specificații suplimentare privind metodele de compresie . winzip . Mansfield, CT : WinZip Computing, SL (19 mai 2009). Data accesului: 24 mai 2009. Arhivat din original la 14 aprilie 2009.
  23. Ce este un fișier Zip? . Winzip: Baza de cunoștințe . Mansfield, CT : WinZip Computing, SL (13 august 2010). Preluat la 17 august 2010. Arhivat din original la 16 iulie 2015.
  24. Program Object Fix Zip 1.7 // UPgrade  : revistă. - 2010. - Nr 8 (460) . - S. 32 . — ISSN 1680-4694 .
  25. Restaurarea oricăror date  // Chip  : jurnal. - 2011. - Nr 8 (149) . - S. 125 . — ISSN 1609-4212 . Arhivat din original pe 23 septembrie 2015.

Link -uri