Verschlüsseltes Video-Streaming — Multi-Key AES-128 HLS erklärt

Verschlüsseltes Video-Streaming auf AVCaption

Jedes auf AVCaption hochgeladene Video wird verschlüsselt, bevor es einen CDN-Edge erreicht. Die Entschlüsselung bei der Wiedergabe geschieht clientseitig im Browser über die Web Crypto API, und die Schlüssel werden über signierte, kurzlebige URLs ausgeliefert, die an Ihre Domain gebunden sind.

Diese Seite geht Schritt für Schritt durch, was tatsächlich passiert.

Die Verschlüsselungspipeline

Beim Upload eines Videos zu AVCaption:

  1. GPU-Encoding — Ihre Quelldatei wird mit NVIDIA NVENC in HLS-Adaptive-Bitrate-Varianten (360p, 540p, 720p, 1080p, 4K) kodiert.
  2. Segmentierung — jede Variante wird in HLS-Segmente von typisch 6 Sekunden geschnitten.
  3. Batch-Verschlüsselung — Segmente werden in Batches zu je 10 Stück (60 Sekunden Wiedergabe) gruppiert. Jeder Batch erhält einen frisch generierten AES-128-Schlüssel.
  4. CDN-Upload — verschlüsselte Segmente werden in Cloudflare R2 abgelegt und über das globale CF-CDN mit aggressivem Caching ausgeliefert.
  5. Key-Vault — Verschlüsselungsschlüssel liegen separat, nie im CDN, nie bei den Segmenten.

Wenn ein Zuschauer auf Play klickt:

  1. Token-Anfrage — der Player fordert ein Wiedergabe-Token von /api/stream/{embed_token}/token an. Der Server prüft das Embed-Token, die anfragende Domain (gegen Ihre Whitelist) und Rate-Limits.
  2. Master-Playlist — der Player lädt das HLS-Master .m3u8 und wählt eine Variante anhand der Bandbreite.
  3. Schlüssel-Abruf pro Batch — für jeden benötigten Segment-Batch fordert der Player den passenden Schlüssel von /api/stream/{embed_token}/key/{batch} an. Jede Schlüssel-URL ist mit dem Wiedergabe-Token signiert und nur für diese Session gültig.
  4. Clientseitige Entschlüsselung — die Web Crypto API des Browsers entschlüsselt Segmente im Speicher und reicht sie an das Video-Element. Schlüssel werden nicht auf die Festplatte geschrieben.

Warum Multi-Key zählt

Single-Key-Verschlüsselung (das einfache Modell vieler Plattformen) bedeutet: ein Video, ein Schlüssel, eine URL. Leakt diese URL, ist das gesamte Video für immer entschlüsselbar.

Multi-Key-Verschlüsselung pro Batch bedeutet: ein Video, viele Schlüssel, viele kurzlebige URLs. Leakt eine URL, ist nur dieser Batch (rund 60 Sekunden Material) offen. Der nächste Batch verlangt eine neue Schlüsselanfrage, die der Leaker ohne frisches Wiedergabe-Token nicht stellen kann.

Das hebt die Piraterie-Kosten erheblich. Automatisierte Rip-Tools, die gegen Single-Key-Plattformen funktionieren (yt-dlp-Varianten, Browser-Extension-Downloader), müssten für jedes Multi-Key-Ziel umgeschrieben werden — die meisten lassen es bleiben.

Signierte Wiedergabe-Tokens

Jedes Embed-Token trägt Metadaten:

  • Erlaubte Origins (Ihre Domain-Whitelist)
  • Optionale Zuschauer-Kennung (für dynamische Wasserzeichen in Enterprise)
  • Ablauffenster (Standard 24 Stunden)
  • Rate-Limit-Hinweise

Der Signierschlüssel liegt ausschließlich serverseitig. Gefälschte Tokens fallen bereits beim Request durch die Prüfung.

Bei Gated Content (nur Mitglieder, Kurszugriff) erzeugt Ihre Anwendung pro authentifizierter Session ein frisches Embed-Token, das mit der Session abläuft. Die REST-API von AVCaption macht die Embed-Token-Erzeugung für Enterprise-Kunden zugänglich.

Domain-Whitelisting

Standardmäßig sind alle Embed-Iframes hotlinked-only — der Browser sendet einen Referer-Header mit der einbettenden Origin, und die Stream-API von AVCaption prüft diese Origin gegen Ihre Whitelist, bevor die Master-Playlist ausgeliefert wird.

In Premium und Enterprise legen Sie genau fest, welche Domains erlaubt sind. Wer den Iframe auf einer nicht freigegebenen Domain einbettet, bekommt sofort einen 403.

An dieser Schicht stoppt die meiste Piraterie: Scraper, die Ihre Iframe-URL übernehmen und auf einer anderen Site einbetten, bekommen schlicht einen 403, und der Player lädt nie.

Vergleich zu anderen Plattformen

Ansatz Beispiele Stärke Wann passend
Nur Signed URL Wistia, einfache CF-Stream-Pfade Am schwächsten — Video komplett entschlüsselbar, sobald URL abgegriffen Marketing-Video, geringes Piraterie-Risiko
Single-Key AES-128 Bunny Stream, CF-Stream-encrypted-Pfade Stark gegen Casual-Hotlinking; ein abgegriffener Schlüssel + Token entschlüsselt das ganze Video Casual gated Content
Multi-Key AES-128 AVCaption Rotierende Schlüssel pro Batch — ein abgegriffener Schlüssel öffnet nur ~60 Sekunden Eigenproduzierter bezahlter Content
Widevine / PlayReady DRM VdoCipher, JW Player Enterprise Am stärksten — hardware-gebundene License-Server; Pflicht für studio-lizenzierten Content Vertraglich erzwungenes DRM

Für Kurse, gated Tutorials, bezahlten Membership-Content, B2B-Trainings und interne Videos ist Multi-Key AES-128 der richtige Trade-off. DRM ist Overkill, Single-Key zu dünn. Die ausführliche Aufschlüsselung in DRM vs Verschlüsselung deckt die Entscheidung ab.

Loslegen

Verschlüsselte Segmente in Aktion sehen? Test-Video hochladen — die ersten 60 Sekunden reichen. DevTools öffnen, die .m3u8- und .m4s-Requests beobachten, dann yt-dlp gegen die Embed-URL probieren: die Segmente kommen verschlüsselt durch und sind ohne die rotierenden Per-Batch-Schlüssel nicht abspielbar. Der Free-Tier liefert den vollen Multi-Key-Stack auf jedem Video; Verschlüsselung ist standardmäßig an, kein Schalter nötig.

Häufig gestellte Fragen

Welchen Verschlüsselungsstandard verwendet AVCaption? +
AES-128 (Advanced Encryption Standard, 128-Bit-Schlüssel) auf HLS-Segmentebene. Derselbe Standard wie beim Online-Banking und bei den meisten großen Streamingdiensten. AVCaption rotiert die Schlüssel pro Segment-Batch (typischerweise alle 10 Segmente), sodass ein geleakter Schlüssel nur ein 60-Sekunden-Fenster öffnet.
Reicht AES-128 oder brauche ich DRM (Widevine/PlayReady)? +
Für eigenproduzierte Inhalte (Kurse, Tutorials, B2B-Training, interne Videos, bezahlte Memberships) genügt AES-128 Multi-Key plus signierte URLs und Domain-Whitelisting. DRM ist nötig, wenn Sie studio-lizenzierte Inhalte vertraglich gebunden ausliefern.
Kann ein Zuschauer den Verschlüsselungsschlüssel aus dem Browser extrahieren? +
Der Schlüssel wird per signierter URL ausgeliefert, gültig für eine Wiedergabe-Session. Ein entschlossener Angreifer kann ihn per DevTools abfangen, doch der Schlüssel entschlüsselt nur einen kleinen Batch von Segmenten. Die Multi-Key-Rotation von AVCaption bedeutet, dass eine vollständige Videoextraktion einen frischen Schlüssel pro Batch und Session verlangt — automatische Piraterie wird teuer.
← content.back_to_index