PallyCon Forensic Watermarking combines two versions of videos marked ‘0’ and ‘1’ in real-time at playback. It converts session information, such as user ID, to binary format, and thus composes the output stream by combining segments from the DASH or HLS content.
As a result, unique information about the playback session is inserted invisibly in the video and sent to the client.
participant A as End user
participant B as Service site
participant C as CDN
participant D as PallyCon service
A ->> B: Request URL for playback
B ->> D: Content URL, Session data
Note right of D: Session manager
D -->> D: Generate session key(payload) and store session data
D ->> B: Send Session URL
B ->> A: Send Session URL
A ->> C: Start playback of Session URL (request segments)
Note right of C: Watermark embedder module
C -->> C: Segments mixing by Session URL
C ->> A: Send mixed segments
Note right of A: Playback mixed content
The segment list of the DASH manifest (.mpd) or HLS playlist (.m3u8) passed as a Session URL applies the same path and filename to all users, regardless of session information. Therefore, it is safe from segment naming attack which is mixing the segment lists of multiple sessions for the same content.
You can use the following documents to integrate the watermark embedder module with the session manager API.
Session Manager API for Akamai CDN
This document describes how to integrate the session data with Akamai CDN for the watermark embedding through PallyCon session manager API.
Session Manager API for Amazon CloudFront
This document describes how to integrate the session data with Amazon CloudFront CDN for the watermark embedding through PallyCon session manager API.
CloudFront CDN Embedder Module
This document describes the Lambda@Edge embedder module that works with Amazon CloudFront CDN.