ZIP (formato di file)

formato di compressione dei dati

ZIP è un formato di file per la compressione dati senza perdita sviluppato da PKWare.[3] La versione 6.3.3 è stata resa standard come ISO/IEC 21320-1:2015.[4]

ZIP
Estensione.zip, .zipx
Tipo MIMEapplication/zip
Uniform Type Identifier (UTI)com.pkware.zip-archive
SviluppatorePhil Katz
1ª pubblicazione14 febbraio 1989
Ultima versione6.3.10[1] (1º novembre 2022)
TipoCompressione dei dati
CompressioneLossless
Esteso aJAR (EAR, RAR[2], WAR), IPA, APK, Office Open XML, Open Packaging Conventions, OpenDocument, XPI
StandardISO/IEC 21320-1:2015

Il formato prevede l'utilizzo di diversi algoritmi di compressione dei dati sebbene il più diffuso sia DEFLATE. Oltre a PKZIP, esistono diversi software proprietari e liberi che supportano il formato ZIP tra cui WinZip e 7-Zip.

Storia modifica

Ideato negli anni 1980 da Phil Katz[5], nel 1989 divenne un formato di pubblico dominio[6]. Negli anni 1990 vennero realizzati e distribuiti software in grado di estrarre i file per diversi sistemi operativi tra cui MS-DOS, Unix, VM/CMS, VMS, OS/2 e Macintosh.[7]

Il supporto al formato ZIP è stato introdotto in Windows 98 con Microsoft Plus! con l'integrazione delle cartelle compresse in Esplora file.[8] Analoga funzionalità è presente su macOS dalla versione 10.4.[9] Alcuni software come PeaZip[10], oltre a effettuare le operazioni di compressione e decompressione dei file ZIP, offrono un file manager per navigare all'interno degli archivi.

Il linguaggio di programmazione Java supporta gli archivi zip da JDK 1.1, con l'introduzione delle classi nel package java.util.zip.[11][12]

Descrizione modifica

Il formato ZIP risolve alcuni problemi presenti nel formato di compressione dei dati ARC[6], creato da Thom Henderson[13]. I file ZIP sono identificati dalla presenza della stringa "PK" all'inizio del file[14].

Nonostante il nome e l'estensione del formato sia un richiamo alla velocità[15], le icone che raffigurano i file ZIP presentano una cerniera lampo (in inglese zipper o zip). Generalmente i file .zip sono compressi usando l'algoritmo Deflate[16], nonostante siano supportati diversi algoritmi di compressione tra cui bzip2 e LZMA[1], assumendo l'estensione .zipx[17].

Ogni file viene compresso separatamente, il che permette di estrarre rapidamente i singoli file (talvolta anche da file parzialmente danneggiati) a discapito della compressione complessiva.

Il formato originale supportava un debole schema di protezione con password a cifratura simmetrica (ZipCrypto), attualmente considerato inadeguato. Versioni più recenti dei programmi che gestiscono questo formato supportano algoritmi più recenti e funzionali (es: AES), ovvero lo stesso ZipCrypto con AES256.

Essendo un formato senza perdita di informazioni (lossless), viene spesso utilizzato per inviare programmi o file che per natura non possono essere alterati dal processo di compressione. Nato in ambiente DOS, ha trovato con il passare del tempo validi concorrenti in altri formati, come Arj, RAR, ACE o 7z che offrono un rapporto di compressione maggiore (a volte a discapito della velocità operativa); la sua grande diffusione gli permette tuttavia di essere considerato uno standard de facto per tali sistemi. Ne esistono versioni per Unix e Mac OS, in cui però sono più diffusi altri software, come ad esempio bzip2, gzip, StuffIt e DiskImage.

Note modifica

  1. ^ a b (EN) .ZIP File Format Specification (TXT), su PKWare, 1º novembre 2022.
  2. ^ Resource Adapter Archive, distinto da Roshal ARchive.
  3. ^ (EN) Max Maischein, The ZIP Archive File Format, su FileFormat.info.
  4. ^ (EN) ISO/IEC 21320-1:2015, su ISO.
  5. ^ (EN) Phillip Katz, Computer Software Pioneer, 37, in The New York Times, 1º maggio 2000.
  6. ^ a b (EN) Gary Conway, ZIP file history, su idcnet.us.
  7. ^ (EN) comp.compression Frequently Asked Questions (part 1/3), su faqs.org, 5 settembre 1999.
  8. ^ (EN) CVE-2002-1139, su NATIONAL VULNERABILITY DATABASE, NIST.
  9. ^ (EN) Zip and Compress Files and Folders with Create Archive in Mac OS X v10.4 Tiger, su Tech Journey.
  10. ^ (EN) Archive browser and file manager, su PeaZip.
  11. ^ (EN) Package java.util.zip, su Java Platform SE 8, Oracle.
  12. ^ (EN) Packages New for 1.1, su To 1.1 -- And Beyond!.
  13. ^ (EN) Thom Henderson, Phil Katz, su esva.net.
  14. ^ (EN) Peter Schepers, ZIP (PKZip compressed files) (TXT), su ist.uwaterloo.ca, 11 marzo 2004.
  15. ^ (EN) CONTROVERSY: LAWSUITS: SEA vs. PKWARE, su BSS: The Documentary.
  16. ^ (EN) Paul Lindner, Registration of a new MIME Content-Type/Subtype, su IANA, 20 giugno 1993.
  17. ^ (EN) Is WinZip compatible with older versions of WinZip and other Zip file utilities?, su kb.corel.com, Corel.

Voci correlate modifica

Collegamenti esterni modifica

  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica