Tutorial · HLS · AES-128

Verschlüsseltes M3U8-Video herunterladen (AES-128) in 2026

Ein praktischer Leitfaden zum Speichern AES-128-verschlüsselter HLS-Streams. Drei getestete Methoden, sortiert von der einfachsten bis zur technischsten, mit dem rechtlichen Kontext, den die meisten Artikel auslassen.

Vom Vidora-Team 10 Min. Lesezeit

Die meisten M3U8-Downloader funktionieren bestens, bis sie auf einen verschlüsselten Stream treffen. Der Fortschrittsbalken bleibt bei 0 Prozent stehen, ffmpeg wirft einen Fehler "Cannot load X-Key", der Online-Konverter liefert eine kaputte Datei. Das Frustrierende daran: Die Verschlüsselung, die 90 Prozent dieser Streams nutzen, ist gar nicht dafür gedacht, den Inhalt an ein Gerät zu binden. Es ist eine Transport-Schicht, die jedes kompatible Tool lesen kann, sofern es weiß, wie.

Dieser Leitfaden behandelt die drei Methoden, die in 2026 wirklich funktionieren, in genau der Reihenfolge, in der ich sie empfehle. Wir konzentrieren uns auf legitime Anwendungsfälle: Download Ihrer eigenen Inhalte, Archivierung legal erworbener Kurse, Sicherung von Videos, für die Sie ausdrückliche Erlaubnis haben. Wir behandeln keine DRM-Umgehung und tun auch nicht so. Die Unterscheidung ist wichtig, und die meisten Artikel, die sie verwischen, sind irreführend.

1. Was verschlüsselte M3U8 wirklich bedeutet

Eine M3U8-Datei ist eine reine Text-Playlist, die von HTTP Live Streaming (HLS) verwendet wird, dem Protokoll, das Apple 2009 entwickelt hat und das den Großteil des adaptiven Video-Streamings im Web antreibt. Ein Standard-HLS-Stream listet Video-Segmente (typischerweise .ts oder .m4s) auf, eines pro Zeile, und der Player lädt sie der Reihe nach herunter, um das Video zu rekonstruieren. Wenn Sie noch nie eine geöffnet haben, behandelt unser M3U8-Erklärungsartikel (auf Englisch) das Format vollständig.

Eine verschlüsselte M3U8 sieht fast wie eine Standard-Playlist aus, enthält aber einen Tag, der dem Player sagt, wie die Segmente entschlüsselt werden:

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:10
#EXT-X-KEY:METHOD=AES-128,URI="https://cdn.example.com/keys/abc.key",IV=0x1a2b...
#EXTINF:9.96,
segment-001.ts
#EXTINF:9.92,
segment-002.ts
...

Die Zeile #EXT-X-KEY ist der Kern der Sache. Sie teilt jedem HLS-kompatiblen Player drei Dinge mit: die Verschlüsselungsmethode (fast immer AES-128 im CBC-Modus), die URL der Schlüsseldatei (ein 16-Byte-Binär-Blob) und einen optionalen Initialisierungsvektor. Mit diesen drei Elementen entschlüsselt der Player jedes Segment im Speicher und sendet die dekodierten Bytes an den Video-Codec.

Das entscheidende Detail: Die URL des Schlüssels wird mit dem Video ausgeliefert. Sie wird über HTTPS abgerufen, oft ohne spezielle Authentifizierung außer der Session, die die Seite geladen hat. Das bedeutet, dass jeder kompatible Downloader den Schlüssel auf die gleiche Weise abrufen kann. Das ist beabsichtigt. AES-128 in HLS dient dazu, Hotlinking und das Abgreifen von Segmenten zu verhindern, nicht dazu, das Video an ein Gerät zu binden. Diese zweite Aufgabe gehört zu DRM, einem komplett anderen System, das wir weiter unten behandeln.

2. Warum die meisten Tools scheitern

Wenn Standard-Tools an einer verschlüsselten M3U8 scheitern, dann aus einem dieser drei Gründe, jeder mit einem Fix:

Das Tool ignoriert den EXT-X-KEY-Tag

Viele kostenlose Downloader, vor allem Browser-Erweiterungen, die seit zwei Jahren nicht mehr aktualisiert wurden, behandeln jede M3U8 so, als wäre sie unverschlüsselt. Sie verketten die Segmente als rohe Bytes und produzieren eine MP4, die der Codec nicht dekodieren kann. Die Ausgabe sieht wie eine Videodatei aus, spielt aber als Rauschen ab. Das ist die Ursache Nummer eins für "Ich habe die M3U8 heruntergeladen, aber sie spielt nicht".

Das Tool kann den Schlüssel nicht abrufen

Die URL des Schlüssels liegt oft hinter derselben Authentifizierungsschranke wie das Video selbst. Wenn das Tool außerhalb Ihrer Browser-Session läuft (CLI-Skript ohne Cookies, entfernter Online-Konverter), gibt die Schlüsselanfrage 403 Forbidden zurück und der Download scheitert sofort. Browser-Erweiterungen umgehen das, weil sie in der Session laufen, die den Player bereits geladen hat.

Das Tool ignoriert den Referer-Header

Manche CDNs verlangen einen bestimmten Referer bei Segment-Anfragen, selbst wenn die URLs vorsigniert sind. Ohne ihn bekommen Sie zufällige 403-Fehler mitten im Download, meist zwischen 30 und 50 Prozent. Der Fix: den Header fälschen, was Erweiterungen automatisch über declarativeNetRequest tun und was bei CLI-Tools explizit konfiguriert werden muss.

3. Methode 1: Browser-Erweiterung (empfohlen)

Eine Browser-Erweiterung in Ihrer aktiven Session ist der Weg des geringsten Widerstands. Sie erbt Cookies, Header und den AES-Schlüssel automatisch. Sie klicken einmal, die Erweiterung erledigt die Arbeit, am Ende erhalten Sie eine einzelne MP4. Keine Kommandozeile, keine manuelle Schlüsselextraktion, kein Header-Fälschen.

Schritt für Schritt mit Vidora

  1. Installieren Sie Vidora aus dem Chrome Web Store. Kompatibel mit Chrome, Edge, Brave, Opera, Vivaldi und allen Chromium-Browsern.
  2. Öffnen Sie die Seite, die das verschlüsselte Video hostet. Klicken Sie einmal auf Play, damit der Browser das M3U8-Manifest und den AES-Schlüssel abruft. Ohne Play hat der Player noch nichts geladen.
  3. Klicken Sie auf das Vidora-Symbol in der Symbolleiste. Der verschlüsselte Stream erscheint im Popup mit den automatisch erkannten Qualitäten.
  4. Wählen Sie eine Qualität und klicken Sie auf Download. Vidora ruft jedes Segment ab, entschlüsselt es mit dem korrekten AES-Schlüssel, muxt Audio und Video und schreibt eine einzelne MP4 in Ihren Downloads-Ordner.

Bei einem 1080p-verschlüsselten Stream von 30 Minuten dauert der Vorgang in der Regel 2 bis 4 Minuten bei einer normalen Verbindung. Vidora lädt bis zu sechs Segmente parallel, schneller als der sequentielle Standardmodus von ffmpeg, aber langsamer als die abgestimmte Parallelität von yt-dlp.

Warum diese Methode gewinnt

4. Methode 2: ffmpeg mit dem extrahierten Schlüssel

Wenn Sie keine Erweiterung installieren wollen, kann ffmpeg einen HLS-Stream nativ herunterladen und entschlüsseln, vorausgesetzt, Sie geben ihm die Schlüssel-URL oder die Schlüsseldatei direkt. Der Haken: ffmpeg kann den Schlüssel nicht selbst aus Ihrer authentifizierten Session extrahieren. Sie müssen ihn liefern.

Manuelle Extraktion, Schritt für Schritt

  1. Öffnen Sie die Seite in Chrome und starten Sie die Wiedergabe, damit der Browser die Playlist abruft.
  2. Öffnen Sie DevTools (F12), Tab Network, Filter m3u8. Unser DevTools-Tutorial erläutert diesen Teil, falls Ihnen das nicht vertraut ist.
  3. Rechtsklick auf die Playlist-Anfrage, Copy as cURL. Das erfasst die URL plus alle Header, einschließlich Cookies und Referer.
  4. Fügen Sie den cURL-Befehl in Ihr Terminal ein, ersetzen Sie aber curl durch ffmpeg -headers, formatiert mit jedem erfassten Header. Der vollständige Befehl sieht so aus:
ffmpeg \
  -headers $'Referer: https://source.example.com/\r\nCookie: session=abc123\r\n' \
  -i "https://cdn.example.com/playlist.m3u8" \
  -c copy \
  output.mp4

Der Flag -c copy sagt ffmpeg, die Segmente ohne Neukodierung zu muxen. Das bewahrt die Originalbitrate und ist schnell. ffmpeg ruft die EXT-X-KEY-URL selbst ab, entschlüsselt jedes Segment im Speicher und schreibt eine saubere MP4. Die Dokumentation der Flags finden Sie auf der offiziellen ffmpeg-Website.

Wann ffmpeg die richtige Wahl ist

Wann ffmpeg scheitert

5. Methode 3: yt-dlp für Fortgeschrittene

yt-dlp ist der spirituelle Nachfolger von youtube-dl und unterstützt AES-128 HLS von Haus aus. Es ist die flexibelste der drei Optionen und die einzige, die bestimmte Sonderfälle wie rotierende Schlüssel handhabt (bei denen jedes Segment einen anderen Schlüssel verwendet).

yt-dlp \
  --add-header "Referer: https://source.example.com/" \
  --cookies-from-browser chrome \
  -o "%(title)s.%(ext)s" \
  "https://source.example.com/video-page"

Der Flag --cookies-from-browser chrome ist das Killer-Feature: yt-dlp zieht die Cookies direkt aus Ihrem Chrome-Profil, was bedeutet, dass private Streams hinter Login ohne manuelle cURL-Extraktion funktionieren. Das Dateinamen-Template verwendet den tatsächlichen Titel des Videos statt eines generischen Namens.

Die Hauptnachteile: Die Syntax hat eine Lernkurve, Releases hinken Site-Änderungen manchmal um eine bis zwei Wochen hinterher, und Windows-Nutzer stoßen auf Antivirus-Falschalarme, weil die Executable standardmäßig nicht signiert ist.

6. Häufige Fehler und Lösungen

Fehler: "Cannot load X-Key file" oder "Failed to fetch key"

Die Schlüssel-URL braucht denselben Referer oder dasselbe Cookie wie die ursprüngliche Playlist-Anfrage. Öffnen Sie DevTools, finden Sie die .key-Anfrage und kopieren Sie alle Header. Geben Sie sie ffmpeg mit -headers oder yt-dlp mit --add-header.

Fehler: "Die Ausgabedatei ist beschädigt" oder "spielt als Rauschen"

Sie haben ein Tool verwendet, das den EXT-X-KEY-Tag ignoriert und die verschlüsselten Segmente unverändert auf die Festplatte geschrieben hat. Wechseln Sie zu einem Tool, das entschlüsselt (Vidora, ffmpeg, yt-dlp), und laden Sie erneut. Keine Wiederherstellung möglich: Verschlüsselte Bytes auf der Festplatte können nicht in Video umgewandelt werden, ohne dass der Schlüssel beim Abrufen angewendet wurde.

Fehler: "Der Download bleibt zwischen 80 und 95 Prozent stehen"

Einige Segmente haben 403 Forbidden zurückgegeben, weil das Auth-Token währenddessen abgelaufen ist. Starten Sie die Wiedergabe auf der Quellseite neu, um das Cookie zu aktualisieren, und starten Sie dann neu. Manche Plattformen rotieren das Token alle 10 Minuten, unabhängig von der Aktivität. Der Download muss innerhalb dieses Fensters fertig sein.

Fehler: "Audio ist stumm in der Ausgabe-MP4"

Der Downloader hat nur den Video-Stream abgerufen und die separate Audio-Playlist ignoriert. Verschlüsselte Master-Playlists haben fast immer separate Audio- und Video-Renditions. Stellen Sie sicher, dass Ihr Tool beide muxt: ffmpeg mit -c copy macht das nativ, Vidora macht es transparent. yt-dlp-Nutzer fügen --merge-output-format mp4 hinzu.

Fehler: "Die Datei ist viel größer als die Quelle"

Der Downloader hat das Video neu kodiert, statt die Original-Streams zu muxen. Verwenden Sie -c copy mit ffmpeg, den Flag --no-recode mit yt-dlp oder ein Tool, das die Neukodierung überspringt (Vidora muxt die Streams unverändert).

Die meisten Artikel zu diesem Thema überspringen diesen Abschnitt, weil er unbequem ist. Wir nicht. Die wichtigste Unterscheidung im verschlüsselten HLS ist der Unterschied zwischen AES-128-Transport-Verschlüsselung und Inhalts-DRM, und diese Unterscheidung hat direkte rechtliche Auswirkungen.

AES-128 in HLS ist Teil der offenen HLS-Spezifikation (RFC 8216). Der Schlüssel reist mit dem Video, und jeder HLS-kompatible Player kann ihn lesen: VLC, mpv, Safari, hls.js, ffmpeg, yt-dlp. Für sich genommen ist AES-128 keine Kopierschutzmaßnahme nach dem US-amerikanischen DMCA oder der EU-Urheberrechtsrichtlinie. Sie zu lesen stellt keine "Umgehung einer technischen Schutzmaßnahme" dar, weil der Schlüssel mit dem Inhalt geliefert wird. Viele Juristen, einschließlich der EFF, haben diesen Punkt mehrfach verteidigt.

DRM (Widevine, FairPlay, PlayReady) ist grundlegend anders. Der Schlüssel ist in einem hardwarebasierten Content Decryption Module auf dem Wiedergabegerät versiegelt und niemals für Benutzercode sichtbar. DRM zu umgehen bedeutet fast immer, eine technische Schutzmaßnahme zu umgehen, und das ist in den meisten Rechtsordnungen illegal. Vidora umgeht kein DRM. ffmpeg umgeht kein DRM. yt-dlp umgeht kein DRM. Keine der Methoden in diesem Artikel funktioniert bei Netflix, Disney Plus, Prime Video.

Der praktische Leitfaden:

Vidora ist Technologie, keine Rechtsberatung. Die rechtliche Verantwortung für jeden Download liegt bei Ihnen und hängt von Ihrer Rechtsordnung, der Lizenz des Inhalts und der beabsichtigten Nutzung ab. Im Zweifelsfall fragen Sie den Rechteinhaber.

8. Häufig gestellte Fragen

Was bedeutet verschlüsseltes M3U8?

Es ist eine HLS-Playlist, deren Video-Segmente mit AES-128 (oder AES-SAMPLE-AES) verschlüsselt sind. Die Playlist enthält einen EXT-X-KEY-Tag, der auf einen Schlüssel verweist. Jeder kompatible Player lädt den Schlüssel, entschlüsselt jedes Segment im Speicher und spielt das Video ab. Diese Verschlüsselung ist Teil der offenen HLS-Spezifikation und nicht dasselbe wie DRM.

Ist es legal, eine verschlüsselte M3U8 herunterzuladen?

Das hängt vom Inhalt ab. AES-128 ist eine Transport-Schicht, kein Urheberrechtssignal. Den Download Ihres eigenen Videos, eines legal gekauften Kurses oder freigegebener Inhalte ist in der Regel legal. Geschützte Inhalte ohne Verbreitungsrecht herunterzuladen ist es nicht. Die Verantwortung liegt bei Ihnen.

Was ist der Unterschied zwischen AES-128 und DRM?

AES-128 in HLS liefert den Schlüssel mit dem Video, oft über HTTPS, und jeder kompatible Player kann ihn lesen. DRM (Widevine, FairPlay, PlayReady) versiegelt den Schlüssel in einem hardwarebasierten Content Decryption Module, das Benutzercode nicht erreichen kann. Vidora, ffmpeg und yt-dlp behandeln alle AES-128. Keiner umgeht DRM, per Design.

Warum scheitert mein Download mit "Cannot load X-Key"?

Die Schlüssel-URL braucht eine Authentifizierung, einen Referer oder beides. Browser-Erweiterungen behandeln das automatisch, weil sie in Ihrer authentifizierten Session laufen. Bei ffmpeg oder yt-dlp erfassen Sie die Header aus DevTools (Rechtsklick, Copy as cURL) und übergeben Sie sie mit -headers oder --add-header.

Kann ich eine verschlüsselte M3U8 abspielen, ohne sie herunterzuladen?

Ja. Jeder HLS-kompatible Player ruft den Schlüssel transparent ab und spielt den Stream ab: VLC, mpv, hls.js, natives Safari oder der Player auf der Quellseite. AES-128 in HLS ist darauf ausgelegt, gelegentliches Abgreifen zu erschweren, nicht die Wiedergabe zu sperren.

Umgeht Vidora DRM-geschützte Streams wie Netflix?

Nein. Vidora behandelt AES-128 HLS, das Teil der offenen HLS-Spezifikation ist. Es umgeht niemals DRM. Netflix, Disney Plus, Prime Video und andere Premium-Dienste verwenden Widevine oder FairPlay, und keine Chrome-Erweiterung kann diese Streams legitim herunterladen.

Über den Autor

RGC Digital LLC entwickelt Vidora, eine Pro-Chrome-Erweiterung zum Download von Videos für Vimeo, Bunny.net, HLS-Streams und MP4. Mit Sitz in Albuquerque, NM. Wir schreiben über Video-Tooling, Streaming-Protokolle und die Entwicklung von Chrome-Erweiterungen.

Weiterführende Artikel