Ein Passwort sperrt nicht das ganze Archiv
Ein ZIP mit Passwort lässt sich leicht wie ein Tresor denken: Wer die Datei hält, sieht ohne Schlüssel nichts. Das Format ist kleinteiliger. Ein ZIP ist zuerst ein Verzeichnis, dann eine Liste von Dateien. Das Verschlüsselungsflag sitzt am lokalen Kopf und am Zentralverzeichniseintrag jeder Datei. Es sitzt nicht auf „der ganzen .zip-Datei“. Ein gesetztes Passwort heißt nur: Mindestens ein komprimierter Datenstrom wurde mit irgendeinem Verfahren umhüllt. Es heißt nicht, dass das Verzeichnis unlesbar ist. Es heißt auch nicht, dass jeder Eintrag dasselbe Verfahren oder dieselbe Passphrase genutzt hat.
Gehaltslisten, Ausweisscans, SSH-Privatschlüssel, Datenbankdumps und ungeschwärzte Kundentabellen dürfen außerhalb des aktuellen Ordners keine extra Klartextspuren hinterlassen. Die Frage ist nicht, ob das Packprogramm „schlau“ wirkt. Die Frage ist, ob dieser Lauf einen Klartextnamen, einen offenen Eintrag oder einen schwach verschlüsselten Strom mitgegeben hat, der auf dieser Platte hätte bleiben sollen. Die vorige Notiz hat eine verwandte Übergabe beschrieben: Eine unverschlüsselte Datei im Cloud-Speicher können Anbieter, Sync-Client und Inhaltshash weiter behandeln. Erst zippen und ein Passwort setzen verschiebt die Frage nur: von „sieht die Cloud die Datei“ zu „welche Schicht hat dieser Container wirklich gesperrt“.
Diese Notiz bleibt bei PKWAREs APPNOTE.TXT 6.3.10 (1. November 2022), den WinZip-AES-Angaben AE-1 / AE-2 und der 7-Zip-Beschreibung von AES-256 im 7z-Format, weil diese Texte die Schichten in prüfbarer Sprache schreiben. Hochschulrechenzentren in Deutschland kommen zur selben Grenze: Das ITCC der Universität zu Köln und die HSBI raten zu AES-256 statt ZipCrypto und schreiben, dass „Dateinamen verschlüsseln“ nur beim 7z-Format greift. Unternehmensrichtlinien, eine Webseite „ZIP online verschlüsseln“ und eine ältere Oberfläche können eine weitere Schicht darüberlegen. Wechseln Sie das Werkzeug, lesen Sie die Verschlüsselungsoptionen jener Version und schauen Sie erneut auf Method. Übertragen Sie die ZipCrypto-Sätze unten nicht auf ein Archiv, das bereits AES-256 gewählt oder Dateinamenverschlüsselung eingeschaltet hat.
ZipCrypto, AES-Zusatz und Dateinamenverschlüsselung sind drei Schichten
Wer „ist das ZIP verschlüsselt“ als Ja oder Nein hört, lässt mindestens drei Schichten weg. Die erste ist die klassische PKWARE-Verschlüsselung – in Oberflächen oft ZipCrypto oder Zip 2.0. APPNOTE Abschnitt 6 hält das Objekt eng: PKZIP verschlüsselt den komprimierten Datenstrom. Jede verschlüsselte Datei hängt vorn einen 12-Byte-Verschlüsselungskopf an. Drei 32-Bit-Schlüssel starten aus der Passphrase und werden mit demselben CRC-32 nachgeführt, das ZIP ohnehin nutzt. Die Endung bleibt .zip. Datei-Explorer oder ein altes Entpacker-Programm zeigen oft einen Passwortdialog. Die Kompatibilität ist gut. Die Stärke ist eine andere Frage.
Die zweite Schicht ist AES, später in denselben ZIP-Container gelegt. WinZip lässt die Grundstruktur stehen und ergänzt eines: Die Kompressionsmethode wird die Dezimalzahl 99, und sowohl lokaler Kopf als auch Zentralverzeichnis tragen ein 11-Byte-Zusatzfeld 0x9901 mit der Herstellerkennung ASCII AE. Die Stärkebytes 0x01 / 0x02 / 0x03 bedeuten 128-, 192- und 256-Bit-Schlüssel. Das eigentliche Verfahren (etwa Deflate mit 8) wandert in dieses Zusatzfeld. Ein altes Werkzeug, das AES nicht kennt, meldet meist „nicht unterstützte Kompressionsmethode 99“, statt Chiffretext als Klartext zu behandeln. Diese Schicht schützt den Dateiinhalt. Standardmäßig schreibt sie Dateinamen im Zentralverzeichnis nicht in Chiffretext um.
Die dritte Schicht heißt: das Verzeichnis mit abdecken. ZIP Strong Encryption beschreibt die Verschlüsselung des Zentralverzeichnisses als Option und braucht zusätzliche General-Purpose-Flags, etwa Bit 6 und Bit 13. Klassisches ZipCrypto hat diese Schicht nicht. Das 7z-Format geht einen anderen Weg. Die Formatseite von 7-Zip schreibt AES-256, leitet den Schlüssel mit einer SHA-256-basierten Funktion aus der Passphrase ab und nutzt viele Iterationen, um erschöpfendes Suchen teurer zu machen. Der Schalter -mhe=on verschlüsselt Dateinamen. Lassen Sie ihn aus, kann eine Liste die Namen zeigen, auch wenn der Inhalt AES nutzt. In der deutschen 7-Zip-Oberfläche heißt dieselbe Option „Dateinamen verschlüsseln“ und ist im Dialog „Zu einem Archiv hinzufügen“ nur beim Archivformat 7z aktiv.
| Schicht | Was sie meist sperrt | Was trotzdem sichtbar bleiben kann | Woran Sie sie erkennen |
|---|---|---|---|
| ZipCrypto / klassisches PKWARE | Den komprimierten Datenstrom dieser Datei | Dateinamen, unverschlüsselte Einträge, Archivaufbau | 7z l -slt: Method enthält ZipCrypto |
| WinZip AES (AE-1 / AE-2) | Den Inhalt dieser Datei (AES + HMAC) | Dateinamen; andere unverschlüsselte Einträge im selben Archiv | Kompressionsmethode 99, Zusatzfeld 0x9901, Method enthält AES- |
| 7z + Dateinamen verschlüsseln | Inhalt und Verzeichniskopf | Namen können zuerst stehen, wenn -mhe=on aus ist |
Kästchen „Dateinamen verschlüsseln“ oder -mhe=on |
Ein Produkttext oder ein Rechtsklickmenü mit „AES-256“ beantwortet den Inhaltsalgorithmus. Es beantwortet nicht, ob Dateinamen im Klartextkopf stehen oder ob einzelne Einträge gar kein Passwort haben. Prüfen Sie zuerst Method und die Dateiliste, danach die Länge der Passphrase.
ZipCrypto: Die Spezifikation selbst nennt es schwach
Die klassische Verschlüsselung ist kein Gerücht, das „Leute für schwach halten“. Der Formatgeber hat sie selbst zurückgestuft. APPNOTE 6.0.1 schreibt, diese Form sei considered weak by today’s standards und empfiehlt sie nur für geringe Sicherheitsanforderungen oder die Kompatibilität mit älteren ZIP-Programmen. Derselbe Abschnitt beschreibt das Gerüst: Die Schlüssel starten als die 32-Bit-Zahlen 305419896, 591751049 und 878082192; update_keys führt CRC-32 auf jedes Passphrase-Byte aus; ein 12-Byte-Verschlüsselungskopf am Beginn des Datenbereichs rührt die Schlüssel weiter; die letzten ein oder zwei Kopfbytes werden gegen die hohen CRC-Bits geprüft, um zu entscheiden, ob die Passphrase plausibel ist. Das ist eine Stromchiffre. Es ist kein authentifizierter Blockmodus wie AES-GCM.
Die Spezifikation schreibt außerdem, der 12-Byte-Kopf solle „einen Klartextangriff auf die Daten wirkungslos machen“. Die öffentliche Forschung ging einen anderen Weg. 1994 veröffentlichten Eli Biham und Paul C. Kocher A Known Plaintext Attack on the PKZIP Stream Cipher und zeigten: Ein Stück bekannten Klartexts kann den internen Zustand wiederherstellen. Michael Stays Notiz von 2002, ZIP Attacks with Reduced Known Plaintext, senkte die nötige Klartextmenge weiter. Archive bringen oft vorhersagbare Vorsätze mit – %PDF, ein fester Office-Kopf, eine XML-Deklaration, eine PNG-Signatur –, weil das Dateiformate sind, keine Geheimnisse. Angriffsschritte gehören nicht in diese Notiz. In die Schlussfolgerung gehört: Die Schwäche liegt im Algorithmus, nicht in „Ihr Passwort hat nur sechs Zeichen“. Eine längere Passphrase schreibt nicht um, dass die Spezifikation die klassische Verschlüsselung schwach nennt und dass eine Known-Plaintext-Forschungslinie existiert. Hochschul-IT in Deutschland sagt dasselbe auf Deutsch: Die HSBI stuft ZipCrypto als unsicher ein und rät zu AES-256; das ITCC Köln schreibt ZipCrypto als veraltet mit bekannten Schwachstellen.
Die Kompatibilität erklärt, warum das Verfahren weiterlebt. Der Windows-Datei-Explorer kann gewöhnliche ZIP-Dateien anlegen und öffnen, hat aber keine eingebaute Oberfläche „dieses ZIP mit Passwort versehen“. Eine unabhängige Antwort auf Microsoft Q&A schreibt: Zum Setzen eines Passworts brauchen Sie ein Drittprogramm wie 7-Zip; der Explorer kann bei ZipCrypto-Archiven solcher Werkzeuge weiter einen Dialog zeigen. Viele Programme lassen ZipCrypto deshalb als Standard, damit die Gegenseite doppelt klicken kann. Sie bekommen „die andere Seite muss nichts installieren“. Sie zahlen die schwache Verschlüsselung, die die Spezifikation bereits einräumt. 7-Zip kann ein ZIP stattdessen mit AES-256 schreiben. Danach kann ein System-Entpacker, der nur ZipCrypto kennt, die Datei ablehnen. Das ist ein Tausch zwischen Kompatibilität und Stärke, nicht „beide Menüs sagen Verschlüsselung, also sind sie gleich“.
Dateinamen, CRC und unverschlüsselte Einträge bleiben im Klartext
Auch wenn die Inhaltsschicht auf AES wechselt, bleibt ein ZIP standardmäßig ein Container, den Sie auflisten können. FileName im lokalen Kopf und im Zentralverzeichnis ist ein Klartextfeld. General-Purpose-Bit 0 heißt nur: Der Datenstrom dieses Eintrags ist verschlüsselt. Bit 11 heißt, der Name ist UTF-8. Es heißt nicht, der Name sei verschlüsselt. 2004 schrieb Tadayoshi Kohno in der Analyse des WinZip-Verschlüsselungsschemas drei Formatfakten in Klartext: Metadaten verschlüsselter Dateien laufen aus, Dateinamen sind nicht authentifiziert, und ein Archiv darf gleichzeitig verschlüsselte und unverschlüsselte Dateien halten. Das sind erlaubte Formen des Containers, keine Implementierungsfehler.
WinZips eigene AES-Notiz schreibt gemischte Archive als formale Erlaubnis. Es gibt keine Pflicht, dass jede Datei in einem ZIP verschlüsselt ist, und keine Pflicht, dass verschlüsselte Dateien ein Verfahren oder eine Passphrase teilen. Ein Archiv darf unverschlüsselte Dateien mit Zip 2.0, AES-128, AES-192 und AES-256 beliebig mischen. Ordnereinträge sollen sogar unverschlüsselt bleiben, um Platz zu sparen. Praktisch heißt das: Sie packen gehalt-2026-09.xlsx und readme.txt in dasselbe Archiv, und nur die Tabelle fragt nach dem Passwort. Hinweisdatei und Verzeichnisnamen liest, wer die Datei hält. Empfängerinnen und Empfänger, Mail-Gateways, Cloud-Vorschauen und Sync-Clients sehen oft zuerst diese Liste – nicht die Zellen nach einem gelungenen Entpacken. Das ITCC Köln schreibt denselben Punkt für 7-Zip ohne Häkchen: Ein Dritter kann die Dateien nicht öffnen, kann die Namen aber lesen.
Klartextköpfe tragen außerdem Größe und Prüfsummen. WinZip schreibt: AE-1 legt die CRC der unverschlüsselten Inhalte in den ZIP-Kopf; AE-2 setzt die CRC auf 0 und stützt die Integrität auf einen 10-Byte-Authentifizierungscode. Die FAQ nennt den Grund: Bei einer Datei von vier Byte oder weniger kann die CRC selbst helfen, das Original zu erschließen – unabhängig vom Verschlüsselungsverfahren. Ab WinZip 11 gehen die meisten Dateien zurück zu AE-1, um eine extra Integritätsprüfung zu haben; Dateien unter 20 Byte unkomprimierter Größe und BZIP2-Ströme mit eigener Prüfung bleiben bei AE-2 und speichern keine CRC. Die Schlüsselableitung ist PBKDF2 (RFC 2898) mit 1.000 Iterationen; die Pseudozufallsfunktion ist HMAC-SHA1. Die Spezifikation hält fest, dass HMAC-SHA1 160 Bit ausgibt, der effektive Suchraum für 192- oder 256-Bit-AES also nicht als theoretische Schlüssellänge gelesen werden darf. Sie müssen diese Zahlen nicht „knacken“, um sie zu prüfen. Sie stehen in der öffentlichen Spezifikation.
Ein ZIP mit Passwort prüfen, ohne zu entpacken
Der Satz „ich habe ein Passwort gesetzt, also ist es sicher“ beweist sich nicht selbst. Teilen Sie die Prüfung in Schritte, die Sie auf diesem Rechner zu Ende bringen. Jeder Schritt beantwortet eine Frage. Führen Sie den Versuch nicht an einer echten Gehaltsliste, einem Zertifikat oder einem Privatschlüssel aus.
Packen Sie keinen Ausweisscan, den Sie noch nutzen, keinen Produktionsschlüssel und keine lebende Personaltabelle „nur um zu sehen, wie es aussieht“. Legen Sie einen wegwerfbaren Canary an – etwa eine Datei canary-gehalt-20260905.txt, deren Text eine einmalige Markierung ist. Sie prüfen Verzeichnis und Method, nicht die echte Datei ein zweites Mal.
- Schreiben Sie eine Canary-Textdatei, deren Name absichtlich wie ein Geschäftsbeleg wirkt, etwa
canary-gehalt-20260905.txt. Brauchen Sie eine zufällige Passphrase, ziehen Sie 6–128 Zeichen im Passwortgenerator (Standard 16; unter 8 gilt als schwächer). Behandeln Sie diese Zeichenkette nur als Archivpasswort, nicht als neues Login-Passwort. - Bauen Sie ein ZIP so, wie Sie Dateien sonst versenden: Manche Werkzeuge nehmen ZipCrypto als Standard, andere verlangen AES-256. Benennen Sie die Datei nicht um, um das Thema zu „verstecken“. Bauen Sie ein zweites 7z-Archiv, einmal mit „Dateinamen verschlüsseln“ und einmal ohne, damit Sie vergleichen können.
- Geben Sie die Passphrase noch nicht ein. Öffnen Sie das ZIP in 7-Zip oder führen Sie im Terminal
7z l -slt canary.zipaus. Sehen Sie, ob die Liste bereitscanary-gehalt-20260905.txtzeigt. Suchen Sie dann die ZeileMethod =:ZipCryptoist die klassische Verschlüsselung;AES-256ist AES auf der Inhaltsschicht. Beides lesen Sie, ohne den Rumpf zu entpacken – also sitzt es nicht hinter „zuerst das Passwort tippen“. - Listen Sie das 7z-Archiv auf dieselbe Weise. Ohne Dateinamenverschlüsselung erscheint der Name oft weiter. Mit
-mhe=onsoll der Canary-Name erst nach der Passphrase erscheinen. Das prüft die dritte Schicht, nicht die Behauptung „7z sei automatisch geheimnisvoller als ZIP“. Der Unterschied ist, ob der Verzeichniskopf abgedeckt ist. - Legen Sie das Canary-Archiv in den Cloud-Speicher oder den E-Mail-Entwurf, den Sie wirklich nutzen (schicken Sie es niemandem). Sehen Sie, ob Vorschau oder Weboberfläche innere Dateinamen listet. Die vorige Notiz hat Sofort-Upload und Vorschau bei unverschlüsselten Dateien beschrieben; hier können die Verzeichnisnamen weiter indexiert werden, auch wenn der Inhalt gesperrt ist. Löschen Sie danach Archiv und Quelldatei und prüfen Sie den Papierkorb.
Die erste Hälfte einer lokalen Kryptoprüfung – ob dieser Tab Klartext an einen Server gegeben hat – ist eine andere Frage als Im Browser verschlüsseln: so prüfen Sie, dass Klartext das Gerät nicht verlassen hat. Ein Packprogramm muss das Original auf diesem Rechner fast immer lesen, um es zu packen. Diese Notiz fragt, was nach dem Packen außerhalb des Chiffretextstroms bleibt. Erscheint der Canary-Name in 7z l -slt oder in der Cloud-Vorschau, bevor Sie ein Passwort tippen, ist die Vertrauensgrenze größer als „die andere Person hat das Passwort nicht“. Steht Method weiter auf ZipCrypto, haben Sie Kompatibilität gekauft, nicht starke Verschlüsselung im Sinn der Spezifikation. Die HSBI formuliert denselben Betriebsfehler auf Deutsch: Archiv und Passwort nicht über denselben Kanal schicken – etwa Archiv per E-Mail und Passwort mündlich oder über einen getrennten Kanal.
Ganzen Dateichiffretext vom Archivpasswort trennen
Wollen Sie „diese Datei auf diesem Gerät zu Chiffretext machen und danach entscheiden, ob E-Mail oder Cloud-Speicher sie trägt“, müssen Sie sich nicht registrieren und die Datei nicht an MakePwd übergeben. Öffnen Sie Datei verschlüsseln. Der aktuelle Tab verschlüsselt in Blöcken mit AES-256-GCM und lässt Sie .lock oder .enc herunterladen. Die Passphrase wird mit PBKDF2-HMAC-SHA256 und 100.000 Iterationen gestreckt; jede Datei bekommt ein eigenes Salt. Eine Datei darf höchstens 5 GB groß sein. Datei, Passphrase und Klartext werden nicht als Geschäftsdaten hochgeladen. Alle Werkzeuge öffnen ohne Konto, und es gibt keinen Passworttresor, der die Passphrase für Sie verwahrt.
Datei verschlüsseln beantwortet „sind diese Bytes Chiffretext geworden, bevor sie den Browser verlassen haben“. Es beantwortet nicht „sperrt ein ZIP Dateinamen standardmäßig“. Den Downloadnamen wählen Sie selbst, Sie müssen also nichts wie gehalt-2026.xlsx.zip versenden, das das Thema verrät. Der .lock-Kopf kann den ursprünglichen Dateinamen weiter tragen; ist dieser Name selbst heikel, benennen Sie die Datei vor dem Verschlüsseln um. Der Chiffretext darf über Cloud-Speicher oder E-Mail reisen. Die Passphrase gehört auf einen anderen Kanal – etwa den Einmal-Link: Der Schlüssel sitzt im URL-#-Fragment, geht nicht mit HTTP an den Server, Erstellen und Lesen sind öffentlich, und der Server speichert nur Chiffretext. Brauchen Sie eine zufällige Passphrase, ziehen Sie 6–128 Zeichen im Passwortgenerator und kopieren Sie sie nur auf dieser Seite. Was ein Anbieter nach einem unverschlüsselten Upload noch sehen kann, steht in der vorigen Notiz. Diese hier zieht nur die Linie um das, was ein ZIP mit Passwort noch hinterlassen kann.
Häufige Fragen
Ist ein ZIP mit Passwort vollständig verschlüsselt?
Nein. PKWARE APPNOTE setzt das Verschlüsselungsflag auf das General-Purpose-Bit 0 jeder einzelnen Datei. Dieses Bit gilt für den komprimierten Datenstrom dieses Eintrags, nicht für den ganzen Container. Dateinamen stehen im lokalen Kopf und im Zentralverzeichnis. Die WinZip-AES-Notiz erlaubt in einem ZIP unverschlüsselte Einträge neben Zip 2.0, AES-128, AES-192 und AES-256; die Passwörter dürfen sich unterscheiden.
Worin unterscheiden sich ZipCrypto und AES-256 bei ZIP?
ZipCrypto ist die klassische PKWARE-Verschlüsselung aus APPNOTE Abschnitt 6: drei 32-Bit-Schlüssel, ein 12-Byte-Verschlüsselungskopf und Schlüsselupdates per CRC-32. Die Spezifikation selbst nennt das Verfahren nach heutigem Maßstab schwach und empfiehlt es nur für geringe Sicherheitsanforderungen oder alte ZIP-Programme. WinZip AES nutzt das Zusatzfeld 0x9901, die Kompressionsmethode 99, ein Salt, einen Passwortprüfwert und einen HMAC-SHA1-Authentifizierungscode. Beide enden auf .zip – deshalb Method lesen, nicht die Endung.
Kann man die Dateiliste ohne Passwort sehen?
Bei einem klassischen ZIP und bei einem 7z ohne Dateinamenverschlüsselung in der Regel ja. 7-Zip listet mit 7z l -slt Namen und Method, ohne Klartext zu entpacken. Das 7z-Format kann Dateinamen mit -mhe=on verschlüsseln; erst diese Schicht deckt den Verzeichniskopf. Der Windows-Datei-Explorer hat keine eingebaute Oberfläche, um ein ZIP mit Passwort zu versehen.
Ist ein ZIP mit Passwort dasselbe wie MakePwd Datei verschlüsseln?
Nein. Ein Archivpasswort beantwortet, welches ZIP-Verfahren dieser Container genutzt hat. Datei verschlüsseln verschlüsselt die ganze Datei in diesem Tab mit AES-256-GCM, schreibt .lock / .enc, begrenzt eine Datei auf 5 GB, lädt Datei und Passphrase nicht hoch und öffnet ohne Konto. Die Passphrase gehört auf einen anderen Kanal, etwa ein Einmal-Link-#-Fragment.
Drei Dinge vor dem nächsten Archiv
Erstens: „Ich habe ein Passwort gesetzt“ heißt nur, dass mindestens ein Dateistrom mit irgendeiner ZIP-Verschlüsselung umhüllt wurde. Es heißt nicht, dass das Verzeichnis unlesbar ist, und nicht, dass jeder Eintrag verschlüsselt ist. Zweitens: ZipCrypto (die Spezifikation nennt es schwach; eine Known-Plaintext-Linie existiert), WinZip AES (stärker am Inhalt; Dateinamen bleiben standardmäßig im Klartext) und 7z-Dateinamenverschlüsselung sind drei verschiedene Grenzen. Eine Endung .zip oder .7z sagt nicht, auf welcher Schicht Sie stehen. Drittens: Prüfen Sie Method und die Namen, die vor der Passphrase erscheinen, mit einem einmaligen Canary und 7z l -slt. Führen Sie diese Prüfung nicht an einer echten Tabelle aus.
Ist die nächste Frage, was ein Anbieter nach dem Hochladen einer unverschlüsselten Datei noch sehen kann, lesen Sie Was ein Cloud-Anbieter, der Sync-Client und der Inhaltshash noch sehen, wenn Sie eine unverschlüsselte Datei hochladen. Muss der Verschlüsselungsschritt selbst beweisen, dass Klartext dieses Gerät nicht verlassen hat, lesen Sie Im Browser verschlüsseln: so prüfen Sie, dass Klartext das Gerät nicht verlassen hat. Muss die Passphrase getrennt reisen und soll nicht im E-Mail-Text stehen, lesen Sie Warum ein URL-Fragment hinter der Raute ein passender Ort für einen Schlüssel ist – und wann dieser Schutz wegfällt. Diese Notiz zieht nur eine Linie, die Sie in eine Schlussfolgerung schreiben können: was nach dem Versand eines ZIP mit Passwort an Standardverschlüsselung, Dateinamen und unverschlüsselten Einträgen noch bleiben kann.