Comment ça marche : Zip et dézip
Le navigateur sait comprimer, mais il ne sait ni calculer un CRC-32 ni écrire un conteneur zip : ces deux morceaux sont écrits à la main ici, et l'archive produite est ROUVERTE par notre propre lecteur avant de vous être rendue.
Zipper trois fichiers pour les joindre à un courriel est un geste banal, et c'est pourtant un des cas où les sites en ligne sont les plus indiscrets : ils reçoivent la totalité de ce que vous voulez envoyer, souvent des documents administratifs ou des photos de famille. Le navigateur, lui, sait tout faire sans rien envoyer.
Il sait comprimer et décomprimer avec la fonction dite deflate brute depuis Chrome 103, Firefox 113 et Safari 16.4. En revanche il ne sait ni calculer le code de vérification qu'une archive zip exige pour chacune de ses entrées, ni écrire le conteneur lui-même. Ces deux pièces sont écrites à la main dans cet outil, recopiées de notre générateur d'icônes qui les avait déjà : nous ne réinventons pas un format que nous avons déjà écrit ici.
Et l'outil se relit. Après avoir fabriqué votre archive, il la ROUVRE avec son propre lecteur, décomprime chaque entrée et RECALCULE son code de vérification. Une archive qu'aucun logiciel ne saurait ouvrir est un faux résultat, et sans cette relecture c'est vous qui vous en apercevriez, devant votre destinataire.
Comment ça marche
- Pour archiver, déposez plusieurs fichiers d'un coup : l'outil les liste, les comprime un par un et vous rend une archive.
- Pour ouvrir, déposez une seule archive : l'outil montre ce qu'elle contient, avec la taille réelle de chaque entrée, et vous choisissez ce que vous extrayez.
- Le sens se déduit tout seul, non pas de l'extension mais des premiers octets du fichier : une extension se renomme, une signature non.
Formats acceptés
N'importe quels fichiers pour fabriquer une archive ; une seule archive zip pour l'ouvrir. Le mode est déduit des QUATRE PREMIERS OCTETS du fichier déposé, pas de son nom.
N'importe quels fichiers, pour archiver
Déposez-en autant que vous voulez d'un coup. Chacun est comprimé séparément, et la compression n'est employée que si elle gagne vraiment de la place : sur un JPEG ou un PDF déjà comprimé, elle rendrait un flux PLUS GROS, et l'entrée est alors stockée telle quelle.
Une archive zip, pour l'ouvrir
Les entrées stockées et les entrées comprimées en deflate sont lues, ce qui couvre la quasi-totalité des archives réelles. Les entrées CHIFFRÉES sont nommées et laissées de côté, et les archives au format Zip64 sont refusées en le disant. Le seuil vient du document de référence du format : plus de 65 535 entrées, ou une taille au-delà de quatre gigaoctets.
Ses limites
200 Mo par fichier
La compression du navigateur travaille en mémoire, et l'archive entière doit y tenir en même temps que les fichiers d'origine. Au-delà, un téléphone qui manque de mémoire fait planter l'onglet plutôt que de rendre un résultat : la limite est annoncée, et l'outil refuse proprement.
Une archive protégée par mot de passe ne s'ouvre pas ici, et nous n'en fabriquons pas
Deux raisons distinctes. À l'ouverture : le chiffrement historique du format zip est réputé faible, et le chiffrement moderne des archives est une extension propriétaire dont plusieurs variantes coexistent ; nous nommons les entrées chiffrées et les laissons de côté plutôt que d'en déchiffrer une moitié. À l'écriture : pour protéger un fichier, l'outil « Chiffrer un fichier » du coin sécurité fait mieux, avec une méthode entièrement affichée et six cent mille passages de fabrication de clé, ce qu'aucun zip ne fait.
Les archives Zip64 sont refusées, et c'est dit
Au-delà de 65 535 entrées ou de quatre gigaoctets, le format range ses compteurs dans un enregistrement supplémentaire, et les champs habituels saturent à leur valeur maximale. Nous ne lisons pas cet enregistrement : plutôt que de rendre une archive à moitié lue, l'outil dit qu'il ne sait pas la lire. Une archive de cette taille dépasse de toute façon la limite de poids.
Un téléchargement ne peut pas recréer de dossiers
Le navigateur descend des fichiers, pas des arborescences. Une entrée rangée dans un sous-dossier ressort donc avec son chemin aplati dans le nom, et l'outil le dit. C'est aussi ce qui neutralise le piège des chemins qui remontent hors du dossier d'extraction : nous retirons les segments de remontée et le signalons, au lieu de compter sur le navigateur pour nous protéger.
Extraire plusieurs entrées demande une permission au navigateur
Au deuxième fichier téléchargé d'un même geste, Chrome demande l'autorisation « télécharger plusieurs fichiers » : son code source pose la limite à cinquante téléchargements simultanés et mémorise votre réponse jusqu'au changement d'adresse. Firefox, lui, a tenté de construire le même garde-fou et ne l'a jamais livré, son propre suivi de bogues le dit. Pour Safari, nous n'avons trouvé aucune source de première main. Ce n'est pas contournable et nous ne cherchons pas à le contourner : les envois sont espacés de 350 millisecondes, et vous pouvez toujours n'extraire qu'une entrée à la fois.
Les archives que nous écrivons ne portent aucune date
Un zip enregistre normalement l'heure de chaque entrée. Ce serait la seule information sur vous que le fichier transporterait, alors que ni le destinataire ni le format n'en ont besoin. Nous écrivons donc la date la plus ancienne que le format autorise, le 1er janvier 1980 : deux archives faites des mêmes fichiers sont identiques octet pour octet. C'est la même décision que pour l'archive d'icônes du coin images.
Questions sur cet outil
Mes fichiers sont-ils envoyés quelque part ?
Non. Ouvrez l'inspecteur avec la touche F12, onglet « Réseau », videz la liste, puis déposez vos fichiers et fabriquez l'archive : rien ne part. Coupez votre connexion et refaites-le, l'outil marche toujours. C'est le point le plus important sur un outil d'archivage, parce qu'on y dépose en général tout ce qu'on s'apprêtait à envoyer.
Pourquoi mon archive est-elle presque aussi lourde que mes fichiers ?
Parce que vos fichiers sont probablement déjà comprimés. Une photo au format JPEG, un PDF, une vidéo, un fichier de bureautique moderne : tous contiennent déjà de la compression, et il n'y a plus rien à gagner dessus. L'outil vous le dit ligne par ligne, et il stocke ces fichiers tels quels au lieu de les faire GROSSIR, ce qui arriverait en les comprimant une seconde fois. Ce qui se comprime bien, c'est le texte, les tableurs anciens, les fichiers de code, les images sans perte.
Que fait exactement la relecture dont parle la page ?
Après avoir écrit l'archive, l'outil la rouvre avec son propre lecteur, comme le ferait un autre logiciel : il retrouve le catalogue, parcourt les entrées, décomprime chacune et recalcule son code de vérification à partir des octets obtenus. Une archive peut avoir une structure impeccable et un code de vérification faux : elle passerait alors tous les contrôles de forme, et échouerait chez votre destinataire. C'est la même exigence que partout sur ce site : on relit le fichier produit, on ne croit pas l'outil sur parole.
Pourquoi les fichiers extraits n'ont-ils pas leurs dossiers ?
Parce qu'un navigateur descend des fichiers, pas des arborescences : il n'a aucun moyen de créer un dossier sur votre appareil, et c'est une bonne chose. Une entrée rangée dans un sous-dossier ressort donc avec son chemin aplati dans son nom, ce qui garde l'information sans inventer une structure. C'est aussi ce qui rend inoffensif un vieux piège d'archive : une entrée dont le chemin remonte hors du dossier d'extraction ne peut rien écrire ailleurs, et nous nettoyons quand même son nom.
Pourquoi le navigateur me demande une autorisation quand j'extrais plusieurs fichiers ?
Parce qu'un site qui déclenche plusieurs téléchargements d'un seul clic est un comportement dont les navigateurs se méfient, à juste titre. La permission « télécharger plusieurs fichiers » est demandée une fois, et l'accorder est sans risque ici puisque les fichiers viennent de votre propre archive. Nous espaçons les envois de trois cent cinquante millisecondes, ce qui évite qu'ils s'annulent, et vous pouvez toujours n'extraire qu'une entrée à la fois.
Pouvez-vous ajouter la protection par mot de passe ?
Nous ne le prévoyons pas, et pour une raison de fond. Le chiffrement historique des archives zip est réputé faible depuis longtemps ; le chiffrement moderne est une extension propriétaire du format, avec plusieurs variantes et des différences entre logiciels. Nous ferions donc un travail lourd pour rendre une protection dont nous ne pourrions pas dire honnêtement qu'elle est solide. L'outil de chiffrement du coin sécurité résout le vrai problème : il affiche sa méthode complète, il emploie six cent mille passages de fabrication de clé, et le fichier obtenu se déchiffre sur la même page.
Puis-je ajouter un fichier à une archive existante ?
Pas directement : l'outil ouvre une archive ou en fabrique une, il ne la modifie pas. Le chemin est d'extraire ce qui vous intéresse, puis de tout redéposer avec le fichier en plus. C'est un geste de plus, mais cela évite une classe entière de mauvaises surprises : une archive modifiée en place peut garder des traces de son contenu précédent, et un outil qui promet de « mettre à jour » une archive sans la réécrire entièrement n'est pas aussi propre qu'il en a l'air.
Le navigateur sait comprimer, mais il ne sait ni calculer un CRC-32 ni écrire un conteneur zip : ces deux morceaux sont écrits à la main ici, et l'archive produite est ROUVERTE par notre propre lecteur avant de vous être rendue.
VérifierLa preuve, pas à pasLa vérification par l'inspecteur réseau, expliquée geste par geste, captures à l'appui.
Le coinLe coin du quotidienConvertir des unités en disant d'où vient chaque facteur, calculer des dates sans se faire piéger par un changement d'heure, rogner un enregistrement, zipper un dossier. Les outils qu'on cherche une fois par mois et qu'on ne retrouve jamais.