PlayReady is a DRM (Digital Rights Management) solution following WM (Windows Media) DRM, which helps in accessing and securing media content on Smart TV applications. It deploys various technologies like embedded licenses, domain control etc to protect digital content. Samsung Smart TV models after 2011 supports PlayReady DRM. The older models support the WM DRM. The PlayReady DRM provides backward compatibility to WM DRM. Hence the Samsung Smart TV can access content from both the PlayReady DRM and WM DRM servers. DRM is a Microsoft product. This article provides an overview of the DRM technologies in Samsung Smart TV applications, the specifications, mode of access and a lot more.
Digital Rights Management
Digital Rights Management (DRM) is a content access and protection technology, that helps in securing digital media in an open environment. DRM applies to all digital media content. Here we will look in terms of digital media content in Samsung Smart TV applications.
The working principle of DRM is very simple. The DRM has something called a license server. This license server can be any entity ranging from a standalone server, in-memory local server in the client or some simple local storage that stores and issues back licenses upon request. The license server accepts requests for licenses called challenges. A client challenges a license server for a license. The license server issues back the license after validating the request. This validation will be in various levels based on the level of security checkup set with the licensing server. This is the basic process of the DRM licensing. The working principle has the following scenarios.
- License downloading method
- Custom user data with license challenge
- License acquisition time
- Type of license files
- Domain and related info
- Security guidelines
We will look into these principles one by one below in theory and will further look into more practical examples in later posts one by one.
License acquisition method
This method mainly differentiates the way through which the license file reaches the client. Based on this scenario there are two types of methods.
- Direct License Acquisition
- Indirect License Acquisition
Direct License Acquisition
The license server dispatches the license directly to the client without a proxy.
Indirect License Acquisition
The license server dispatches the license directly to the client through a proxy network. The license is also obtained from local devices like USB using Media Transfer Protocol.
License acquisition and custom user data
Based on the license acquisition method, there are two types of license acquisition. This classification is based on whether the user or the client needs to send some additional data along with the license challenge.
- Silent method
- Non silent method
In silent method the license server is challenged directly for license. There is no extra process involved in getting a license.
Non silent method
The license server needs the user or the client to send some additional data along with the license challenge. The additional data may be anything ranging from authentication information or any other custom data requested by the server. There is no extra steps involved in getting a license after a license challenge with custom data. The custom data can be set along with the license challenge using any of the following methods.
- Cookie property
- User custom data
The custom user data can be set using the cookie property in a WM DRM service. This is the old method of setting custom user data along with HTTP requests or license challenges.
User custom data
A PlayReady based service sets custom user data along with the content. Smart TV SDK has a function called SetPlayerProperty, that sets any custom user data along with the license challenge. The technical details will be further discussed in our future posts.
License acquisition initiation time
This method of classification is based on when the license data is obtained to the client. Based on the time at which the license data is obtained, the following types of classification are done.
- Post delivery
- Pre delivery
In this type of delivery, the Samsung Smart TV starts the license acquisition process, once when it starts playing the digital content. Once it starts playing the content, it gets the license information from the media file header. The header content mainly has an entry called license-acquisition URL which contains the license information.
This type of delivery involves getting the license information before playing the digital media content. The license delivery process gets initiated by Web Initiator. Web Initiators are used in PlayReady based services. Web Initiators parse the license from various response formats. Then the license initiation happens.
Type of license files
The license acquisition is pre initiated by using web inspectors. Web inspectors are components that parse the license information from the license challenge responses and then initiate the license acquisition process. The web initiator is associated with PlayReady DRM. It uses two main functions to parse the license information.
These above functions will parse the license information from either a response XML or a HTTP response based on the type of DRM server response.
Domain and related info
In PlayReady DRM, a set of registered devices forms a domain. From inside a domain, the license initiation process will happen for only a single device. The device once obtains this information can embedded the license into the content and then can share the content among its peers directly. The devices can join and leave a domain on their own choice. The device on leaving a domain, may have to revoke the domain related info. The process of embedding the license into the media content comes under a concept called embedded licenses. This method enables the client to get the license info directly by playing the content. There is no license acquisition process here.
DRM has the following security considerations
- While playing media with embedded licenses, the license related content should be cleared after playing the media.
- Each license has an associated validity period. The license should be removed after the validity expiry.
- The license content should be removed after leaving a domain.
PlayReady DRM from Microsoft serves as an useful tool in securing licensed content. DRM prevents the unauthorised use of copy protected content. Only the eligible devices with the correct licenses can access the digital media content. This article gave an extensive idea about the PlayReady DRM technology and the various factors surrounding it. It also explained the ways in which the Samsung Smart TV platform implements the DRM.