Live Stream Blocking via License Renewal and Blacklist
This guide provides a technical overview of implementing real-time live stream blocking using DOVERUNNER’s Multi-DRM platform. The solution leverages continuous license validation through DRM license renewal mechanisms and immediate playback control via DRM Blacklist API.
sequenceDiagram participant A as End User
(Client Player) participant B as Streaming Platform participant C as DOVERUNNER
DRM Server opt For normal users A ->> C: Periodic license renewal request C ->> C: Validate token and blacklist data C ->> A: Issue renewal license A ->> A: Keep playing live stream end B ->> B: Monitor illegal streams and find suspicious user IDs opt Block verified illegal users B ->> C: Register user IDs on DRM blacklist C ->> C: Store the ID in Blacklist DB A ->> C: Request license renewal (Blacklist targets) C ->> C: Validate token and check blacklist C -->> A: Deny license renewal A -->> A: Terminate live stream playback end
This document is intended for streaming platform architects, backend engineers, and DRM solution integrators seeking scalable and responsive live content protection.
Functional Overview
Section titled “Functional Overview”License Renewal
Section titled “License Renewal”License renewal
enables the DRM client (browser or app) to periodically validate its session with the license server. Players trigger renewal requests based on the renewal_duration
specified in the DRM license token. License renewal allows enforcement policies to be dynamically applied during playback, ensuring ongoing session validity.
DRM Blacklist
Section titled “DRM Blacklist”DRM Blacklist is an enforcement layer used to deny license issuance or renewal based on specific user ID
registered for blocking. Upon the next license renewal attempt, the session will be rejected with a predefined error code, terminating the stream playback for that user.
Piracy Monitoring
Section titled “Piracy Monitoring”As a streaming platform provider, you need to monitor your service for illegal streaming or suspicious activities to find end users to block during live events. DOVERUNNER Multi-DRM service does not include such piracy monitoring.
If you need help with the monitoring, please contact us for consultation.
Implementation Guide
Section titled “Implementation Guide”1. License Token Configuration
Section titled “1. License Token Configuration”To enable periodic renewal, the DRM license token must have the renewal_duration
value under playback_policy
. A DRM license with the policy is only valid for that period of time. And it must be renewed at the intervals to allow players keep playing the DRM-protected stream.
Example license token JSON:
{ "policy_version": 2, "playback_policy": { "persistent": false, "renewal_duration": 60 }}
renewal_duration
defines the license renewal interval (in seconds).- Adjust the interval to balance enforcement responsiveness vs license server load and cost.
Please refer to the Subscription and Billing section for more details.
2. Player-Side Integration
Section titled “2. Player-Side Integration”Triggering Renewal Requests
Section titled “Triggering Renewal Requests”As mentioned earlier, PlayReady and FairPlay client environments require additional configurations on the client player to enable the license renewal.
Please refer to the Concurrent Stream Limiting Guide for more details.
Refreshing DRM License Tokens
Section titled “Refreshing DRM License Tokens”Tokens have a validity period(default: 600 seconds) which can be configured on DOVERUNNER Console. If a license renewal request occurs after token expiry, the license server will reject it with error code 7011 (License Token Expired).
To prevent license renewal failures due to token expiration, the client must request a new token to the streaming platform’s backend before the token expires. The player may need to get the license token from the streaming platform when a DRM license renewal event occurs.
If you need technical supports about the token management, please create a ticket on our Helpdesk.
3. Blacklist Enforcement
Section titled “3. Blacklist Enforcement”When you have identified end user IDs that need to be blocked during a live event, you can register the user ID
to the DRM Blacklist either automatically via API integration or manually in the web console UI.
Detailed instructions available in the DRM Blacklist Guide.
Considerations
Section titled “Considerations”Subscription and Billing
Section titled “Subscription and Billing”Unlike typical DRM licenses, where requests are made only at the start of playback, license renewals are periodic requests during playback, resulting in much more license issuance. As a result, the license renewal feature incurs additional charges.
Plan | Description | Notes |
---|---|---|
MAU (Monthly Active Users) | Renewal licenses billed separately from the number of active users. | To enable license renewal, you must add an optional item to your subscription. |
MAL (Monthly Active Licenses) | Renewal licenses count toward the total number of licenses issued. | No need to add the optional subscription item. |
License Usage Estimation
Section titled “License Usage Estimation”total_licenses = number_of_viewers × (event_duration / renewal_duration)
For example, a live event with 10,000 viewers and a 60-second renewal interval will generate approximately 600,000 licenses per hour.
Comparison: License Renewal vs. Key Rotation
Section titled “Comparison: License Renewal vs. Key Rotation”The live stream blocking use case uses DRM license renewal
for continuous authorization during playback sessions. You can also use the DRM key rotation
feature for this purpose, but the scalability issues with key rotation make it unsuitable for large-scale services.
Aspect | License Renewal | Key Rotation |
---|---|---|
Periodic authorization during a playback session | Yes | Yes |
Change the content key (rotation) | No (license extensions only) | Yes |
Scalability | High (Distributed license requests based on when playback starts) | Low (Concurrent requests cause traffic spikes) |
Use cases | Real-time live stream blocking. Concurrent stream limiting (CSL) | Enhanced security for small-scale live streaming. Applying security policies based on program type. |
Comparison: CSL vs. Live Stream Blocking
Section titled “Comparison: CSL vs. Live Stream Blocking”Both Concurrent Stream Limiting and Real-time Live Stream Blocking
are features that take advantage of DRM license renewals. However, there are the following differences between the two features:
Aspect | Concurrent Stream Limiting (CSL) | License Renewal Blocking |
---|---|---|
Purpose | Limit excessive account sharing | Block illegal users during live events |
When to control | At the start of playback | At the start of playback and mid-session |
Conclusion
Section titled “Conclusion”Implementing live stream blocking via license renewal and blacklisting offers a scalable, responsive defense against unauthorized streaming. It enables mid-session intervention without affecting legitimate users, making it ideal for protecting high-value live events and premium content.