World Library  
Flag as Inappropriate
Email this Article

Protected Streaming

Article Id: WHEBN0020094331
Reproduction Date:

Title: Protected Streaming  
Author: World Heritage Encyclopedia
Language: English
Subject: Adobe Flash, RTMPDump, FXG, SWF2EXE software, SWiSH Max
Collection: Multimedia, Network Protocols, Streisand Effect
Publisher: World Heritage Encyclopedia

Protected Streaming

Protected Streaming[1] is a DRM technology by Adobe. The aim of the technology is to protect digital content (video or audio) from unauthorized use.

Protected Streaming consists of many different techniques; basically there are two main components: encryption and SWF verification.

This technique is used by the Hulu desktop player and the RTE Player. also uses this technique to serve the videos on the official site. Some videos on YouTube also use RTMPE, including those uploaded there by BBC Worldwide.


  • Encryption 1
  • SWF verification 2
  • Notes 3
  • References 4


Streamed content is encrypted by the Flash Media Server "on the fly", so that the source file itself does not need to be encrypted (a significant difference from Microsoft's DRM). For transmission ("streaming"), a special protocol is required, either RTMPE or RTMPS.

RTMPS uses SSL-encryption. In contrast, RTMPE is designed to be simpler than RTMPS, by removing the need to acquire a SSL Certificate. RTMPE makes use of well-known industry standard cryptographic primitives, consisting of Diffie-Hellman key exchange and HMACSHA256, generating a pair of RC4 keys, one of which is then used to encrypt the media data sent by the server (the audio or video stream), while the other key is used to encrypt any data sent to the server. RTMPE caused less CPU-load than RTMPS on the Flash Media Server.

Adobe fixed the security issue in January 2009, but did not fix the security holes in the design of the RTMPE algorithm itself.[2] Analysis of the algorithm shows that it relies on security through obscurity. For example, this renders RTMPE vulnerable to Man in the Middle attacks.

Tools which have a copy of the well-known constants extracted from the Adobe Flash player are able to capture RTMPE streams, a form of the trusted client problem. Adobe issued DMCA takedowns on RTMPE recording tools, including rtmpdump, to try to limit their distribution. In the case of rtmpdump, however, this led to a Streisand effect.[3]

SWF verification

The Adobe Flash player uses a well-known constant, appended to information derived from the SWF file (a hash of the file and its size), as input to HMACSHA256. The HMACSHA256 key is the last 32 bytes of the server's first handshake packet. The Flash Media Server uses this to limit access to those clients which have access to the SWF file (or have been given a copy of the hash and the size of the SWF file).

All officially allowed clients (which are in fact *.swf files) need to be placed on the Flash Media Server streaming the file. Any other client requesting a connection will receive a "connection reject".

The combination of both techniques is intended to ensure streams cannot be sniffed and stored into a local file, as SWF verification is intended to prevent third party clients from accessing the content. However, it does not achieve this goal. Third party clients are free to write the decrypted content to a local file simply by knowing the hash of the SWF file and its size. In practice, therefore, Adobe's own implementation of the Macromedia Flash Player is the only client which does not allow saving to a local file.

The only possible way to restrict connections to a Flash Media Server is to use a list of known hosts, to avoid the whole player (the Flash client) being placed on an unauthorised website. Even this has no real benefit for mass-distributed files, as any one of the known hosts could take a copy of the data and re-distribute it at will. Thus "known host" security is only useful when the known hosts can be trusted not to re-distribute the data.


  1. ^ "Using the Adobe Access Server for Protected Streaming"
  2. ^ "RTMPE Specification and Analysis". 2009-05-25. 
  3. ^ "Adobe has issued a DMCA removal request for rtmpdump". 2009-05-21. 


  • Whitepaper by Adobe
  • RTMPE (Adobe LiveDocs)
  • RTMPS (Adobe LiveDocs)
  • rtmpdump 2.1+ (Source code and binaries)
  • Source code of rtmpdump v1.6 by Andrej Stepanchuk
  • RTMPE specification, generated from the rtmpdump source code
  • RTMFP encryption mechanism (DRAFT), reverse engineered from scratch
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.

Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.