Top Banner
DRM LANDSCAPE AND ONLINE STREAMING Jasmeet (Jas) Chhabra
43

Drm landscape and online streaming

Nov 18, 2014

Download

Technology

Jasmeet Chhabra

What is DRM?
DRM standards
Microsoft Playready , Apple FairPlay , OMA DRM
DRM Techniques
Streaming standards
HTTP live stream, MPEG DASH etc.
DRM content playback
Silverlight, Flash, HTML5 Premium Video Extensions
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Drm landscape and online streaming

DRM LANDSCAPE AND ONLINE STREAMINGJasmeet (Jas) Chhabra

Page 2: Drm landscape and online streaming

Outline• What is DRM?• DRM standards

• Microsoft Playready , Apple FairPlay , OMA DRM

• DRM Techniques• Streaming standards

• HTTP live stream, MPEG DASH etc.

• DRM content playback• Silverlight, Flash, HTML5 Premium Video Extensions

Page 3: Drm landscape and online streaming

DRM: what is it?

• Digital rights management• Separates protected content and license rights.

• DRM may be viewed as content owner’s effort to exert “remote control” over content after it is delivered to the recipient

• Accomplished through cryptographic controls and controls on user platforms.

Page 4: Drm landscape and online streaming

DRM : The reality

• Cryptography is necessary but not sufficient for DRM

• Cryptography was designed to deliver bits securely, not to protect them after they have been delivered. DRM is opposite of that.

• DRM will always suffer from analog hole• For example you can record music being played by using a microphone

Page 5: Drm landscape and online streaming

Basic Terms

• Rights expression language: Defines rights and constraints on content

• License server: issues licenses• License: Contains keys to access content and use REL to express rights and constraints

• Secure player: Enforces the rules and constraints• Domain: Common group of devices that allow single domain license to be used. For example all of the devices in a household

Page 6: Drm landscape and online streaming

Movie DRM standards for Disks• CSS (Content Scrambling System)

• Used for DVD.

• Advanced Access Content System (AACS)• Used for HD-DVD and blue Ray

Page 7: Drm landscape and online streaming

Online Streaming services• Current

• Microsoft PlayReady• Apple Fairplay

• Future:• Lots of players planning to move to HTML5 DRM

• HTML5 Premium Video Extensions

This is our Focus

Page 8: Drm landscape and online streaming

Other DRM technologies• OMA DRM: Used by operators for Ringtones, Music,

Wallpapers etc.

Page 9: Drm landscape and online streaming

Relationship of various pieces

• DRM: Defines how to protect content• Streaming standards: Define how content can be streamed adaptively

• Player: Implementations of content viewer that include many DRM technologies and streaming standards

Page 10: Drm landscape and online streaming

DRM: MICROSOFT PLAYREADY

Page 11: Drm landscape and online streaming

Microsoft PlayReady

Packaging Server:Packages content for distribution

Page 12: Drm landscape and online streaming

Microsoft PlayReady

Send appropriate data to various servers

Page 13: Drm landscape and online streaming

Microsoft PlayReady

License Server:

• Stores rights info for clients.

• Provide content right licenses to the client

Page 14: Drm landscape and online streaming

Quick Note: Domain

• A set of devices that belong to the same user

• They may share content based on the rights granted by the content owner.

• User may add or remove devices to the domain

Page 15: Drm landscape and online streaming

Microsoft PlayReady

Domain Controller:Stores domain membership info

Page 16: Drm landscape and online streaming

Microsoft PlayReady

Distribution Server:Distribute the actual content files

Page 17: Drm landscape and online streaming

Microsoft PlayReady

PlayReady Clients:Clients that play the media

Page 18: Drm landscape and online streaming

Microsoft PlayReady

Metering Server:Device maintains info on playback count etc.

Page 19: Drm landscape and online streaming

Microsoft PlayReady: Business Models

• Subscription• Purchase• Pay per view• Rental : Time based• Gifting

Page 20: Drm landscape and online streaming

Distribution options

• Download• Progressive Download

• Start playing when partially downloaded

• Streaming• Sideloading content from PC to mobile phone

• Sync PC content to mobile device

• Over the air distribution• Direct delivery over wireless network rather than sideloading

• Super Distribution• Send and share with other users over email, wireless etc.

Page 21: Drm landscape and online streaming

DRM: APPLE FAIRPLAY

Page 22: Drm landscape and online streaming

FairPlay Overview

• Apple’s closed format• Files are MP4 containers with an encrypted content• MP4 can handle audio, video, images, text and other

digital content

• User keys decrypt the master key for the content• iTunes server keeps track of domain info and allows up to 5 machines to be authorized.

• User keys are stored in key repository on the machine

Page 23: Drm landscape and online streaming

DRM: OMA DRM

Page 24: Drm landscape and online streaming

OMA DRM• OMA: Open Mobile Alliance: Consortium of various mobile

communication companies.• OMA DRM 2.0 provides complete end-to-end protection

system • Based on concept of separating the license and content• License is called Rights object (RO)• RO contains content encryption keys and basic usage

rules.• License is generally created for a particular device

Page 25: Drm landscape and online streaming

OMA DRM Architecture / OperationRights

issuer (RI)

DRM Agent on Device

Content issuer

Usage rules +CEK

Rights object (RO)

Rights object acquisition protocol (ROAP)

HTTP,…

Protected Content

1

1. DRM client requests protected content2. Rights issuer handles generation and delivery of rights object.

• Rights object includes usage rules and a CEK.• If this is the first time RI and the device are communicating, RI also

performs an enrollment process.3. DRM agent on device decrypts CEK and enforces usage rules

2

3

Page 26: Drm landscape and online streaming

Other OMA DRM Concept• Domain: Set of devices where content can be shared

• Super-distribution: separation of license and content allows content to be distributed through any channel.

• Subscription: Enables business models based on subscriptions service.

• Backup: Allows backup to external storage• Export: Enables export of OMA DRM content and rights to devices using other DRM protection.

Page 27: Drm landscape and online streaming

DRM IMPLEMENTATION TECHNIQUES

Page 28: Drm landscape and online streaming

DRM Techniques: Software Defense

• Goal: Make it harder to reverse engineer• Common Techniques

• Anti-Debug • Anti-Disassembly• Obfuscation• Guards: Tamper check parts of code• Combining proprietary crypto with the standard crypto algorithm • Using a combination of above is generally good.

• Arxan is one company that employs many of these techniques

Page 29: Drm landscape and online streaming

DRM Technique: BOBE-Resistance

• Personalize each copy of software• Metamorphic software like Viruses

• Functionally equivalent software with different internal structure on each machine

• Update software in Real time

Page 30: Drm landscape and online streaming

DRM Techniques: Hardware assisted

• ARM TrustZone• Discretix

Page 31: Drm landscape and online streaming

ONLINE STREAMING

Page 32: Drm landscape and online streaming

HTTP Live Streaming(HLS)

• Created by Apple• Used to distribute both live and on-demand files

• Used to adaptively stream • Widely supported : Microsoft, RealNetworks, Wowza, Akamai

• Exclusive way to deliver video in the apple ecosystem

Page 33: Drm landscape and online streaming

HLS Overview

• Server: • Encode source into multiple files at different data rate• Each chunk should be short: 5-10 seconds• Load on http server with text based manifest fil3

(.m3u8)• Manifest directs the player to additional manifest files

for each of the encoded streams.

• Client:• Player adaptively selects the content chunks at different

bitrates depending on the bandwidth/network quality, buffer status, CPU utilization etc.

Page 34: Drm landscape and online streaming

HLS server side : One Video file

IndexFile.m3u8

Alt Low index

Alt Med index

Alt High index

Low_01.ts

Low_02.ts

Low_03.ts

Med_01.ts

Med_02.ts

Med_03.ts

Hi_01.ts

Hi_02.ts

Hi_03.ts

Page 35: Drm landscape and online streaming

MPEG DASH

• DASH: Dynamic adaptive streaming over HTTP

• Codec agnostic• Core adaptive streaming similar to HLS

• Manifest files and alternate stream urls.

• ISO standard• Not as well supported as HLS

Page 36: Drm landscape and online streaming

Other online streaming standards

• HDS: HTTP Dynamic streaming• Used for Flash video

• HSS: HTTP smooth streaming• Microsoft standard• Part of IIS media server• Enables streaming media to Silverlight

Page 37: Drm landscape and online streaming

PLAYERS

Page 38: Drm landscape and online streaming

Silverlight & Flash

• Application frameworks for writing and running rich internet applications.

• Similar to each other• Silverlight : Microsoft• Flash: Adobe• Used to deliver video :

• SilverLight: Netflix, Amazon• Flash : Youtube

Page 39: Drm landscape and online streaming

HTTP Premium Video Extensions

• Media Source extensions• Encrypted Media Extensions• Web Cryptography API (WebCrypto)

Page 40: Drm landscape and online streaming

HTTP Premium Video Extensions :Media Source extensions

• Extends HTMLMediaElement to allow JavaScript to generate media streams for playback

• Allows streaming service to use CDN to download content and feed to video tag for playback

• Allows customized adaptive streaming

Page 41: Drm landscape and online streaming

HTTP Premium Video Extensions :Encrypted Media Extensions

• Extends HTMLMediaElement providing APIs to control playback of protected content

• Provides standardized way from DRM systems to be used in browser• DRM standard agnostic

Page 42: Drm landscape and online streaming

HTTP Premium Video Extensions :Web Cryptography API (WebCrypto)

• Defines an API for "basic cryptographic operations in web applications, such as hashing, signature generation and verification, and encryption and decryption.”

• Allows Server to encrypt and decrypt communication between javascript and itself

• Protects user data from inspection and tampring

Page 43: Drm landscape and online streaming

Summary: Relationship of various pieces

• DRM: Defines how to protect content• Streaming standards: Define how content can be streamed adaptively

• Player: Implementations of content viewer that include many DRM technologies and streaming standards