April 17, 2011

Why you need media stream protection

Why you need protection of video/audio content?

Media streaming is a business. Like any business you invest some amount of money and expect to get more money back. Those investments are:

  1. You pay for computational resourses. Currently it's most probably just virtual servers field
    or more complex solution like nScaled provides. You can use even you own hardware. No matter what
    you use - cloud or hardware - you always pay for your infrastructure

  2. There are many software solutions for media streaming. But most professionals can say that Windows Media Server

    is the best in case of high quality streaming. You need to pay for this great software and this is you investments as well.

  3. To stream something you need to pay again. People are working hard to produce high quality media content so to show something interesting you need to buy it first.

Let's imagine that there are many people who want to skip 1, 2 and 3. Yes they want their user see your content from your servers and pay them (not you). I think being media streamer you know all of this but let me finish for somebody how don't know what I'm talking about.
When you create publish point and add it to web-page you provide a link to publish point. Now user can get it, setup stream server
and capture your content. Another more common practice is to put your links to another server and provide users with links to your server.
In this case user will pay you money for one account and provide link to many people how will pay to that re-streamer. How can you avoid this?

When webmaster wants to protect unauthorized access to a site he adds autherntication by login/password pair.
User who wants to add comments or change something valued need to sign in and then perform such operations.
So how can you protect media content?
Well, you can use standard Windows Media plugins to protect publish points:
  • Access users with specific IP addresses.
  •  Using NTFS file permissions
  •  Using Windows User permissions.
Well. If you are not commertial streamer you most probably can use these three methods. If you are commertial streamer especially IPTV provider these methods are not applicable.

But you can use our or similar solution based on adding to media URL something that media server can check and either authorize user or deny request. What should we add to get to know that request was made by our user ?
Well, most probably it should be a hash where we add:
  1. user IP address
  2. server time and link validity interval to know that URL was signed in near past. This is necessary to prevent easy restreaming. If sombody wants to restream our content when server time is in URL he need to create script that login as valid user and get new links to video content.
  3. all previous user knows and can create valid link himself. So we just add secret key. This is any string what is unknown by anybody but you.
If your initial URL looked like this
mms://videoserver.net/PublishingPoint/movie.wmv
you will get something like that
mms://videoserver.net/PublishingPoint/movie.wmv?server_time=9/30/2010 10:52:01 AM&hash_value=K8TDaZxCfueiHp0GzVSAsA==&validminutes=5
From what you are protected now? You are protected from the case when a thief adds your links to his site and his users are using your resources.
Not bad, right? But some of your users can capture and re-stream your content in anyway. Take a look at investments list - we've protected the first investment - computational resources. Now nobody can just republish your links and make money on that.
They need to capture your content, store it and re-stream to his users. This is much more complicated. Most probably thief will find somebody who doesn't protect his links and leave you alone. Our solution protects your computational resources from unauthorized access. There are a lot of customers who use it and it works good. It cannot protect you from re-streaming your content.

How to protect your investment number three - the content you pay for? It's not as easy as the method described above. It's necessary to understand this - and if you need to protect your investments deeply we will describe how to do this soon in the next article.

Take a look at WMSAuth plugin for Windows Media, Paywall framework for Wowza Media Server and hot-linking protection for Nimble Streamer.

Contact us if you want solution to protect you from re-streamers.


Related documentation


Paywall framework for WowzaRestriction solution for geo and IP range for WowzaWowza hotlinking re-publishing and re-streaming protectionPay-per-view for Wowza Media ServerWMSPanel control and reporting panel for Wowza Media Server 

No comments:

Post a Comment