Digital Transmission Content Protection ("DTCP") technology protects high-value digital motion pictures, television programs and audio against unauthorized interception and copying in the home and personal environment (e.g., between a digital set top box and digital video recorder, or between a personal computer and a digital TV).
- Terminology
Code | Description |
DTCP | Digital Transmission Content Protection |
DTCP-IP | Digital Transmission Content Protection Internet Protocol |
AKE | Authentication and Key Exchange |
CCI | Copy Control Information |
SRM | System Renewability Messages |
DLNA | Digital Living Network Alliance |
EMI | Encryption Mode Indicator |
E-EMI | Extended Encryption Mode Indicator |
PCP | Protected Content Packet |
SPTS | Single Program Transport Stream |
- How does DTCP work?
- A device enabled with DTCP determines whether it is connected to other devices that implement the DTCP protection technology. Content encoded for DTCP protection is encrypted and securely transmitted only to recording and display devices that implement DTCP. The content carries information indicating whether and to what extent the content may be copied.
- DTCP overview & FAQ
- See also
- http://www.dtcp.com/documents/dtcp/dtcp-overview.pdf
-
http://www.dtcp.com/faq.aspx
- Filter elements for content encryption and decryption
- There are two gstreamer filter elements are used for content encryption/decryption.
- DTCP Encrypt: The "dtcpencrypt" is a gstreamer filter element which encrypts incomming MPEG2 SPTS stream and pushes encrypted data to the source pad. DTCP encrypt requires initialization of DTCP libs done in RMF applicaiton (e.g Media Streamer) which includes creating socket and listening for AKE request, authenticate and send exchange key to Sink device upon DTCP request from sink EMO
It support Authentication and Key Exchange (AKE) from DTCP client. It encrypts the video stream using DTCP Encryption Mode Indicator (EMI).
- DTCP Decrypt: The "dtcpdecrypt" is a gstreamer filter element is used to decrypt the MPEG2 SPTS video streams. It performs Authentication and Key Exchange (AKE) to DTCP server.
- DTCP Protection
- All DTCP encryption and dcryption uses common set of provided gstreamer elements, The gstreamer elements uses DTCP manager API. Each SoC provides binary DTCP encryption/decryption library to support the DTCP Manager API.
- DTCP Use Case: Live Playback using QAM Source
-
- The left side of the figure is considered for gateway device.
- The right side of the figure is considered for client device.
- In case of live stream the HTTPReqHandler will receive a request from client box and the MediaStreamer.
- will sets an pipeline between QAM Source and HN Sink.
- QAM Src element receives the data from the tuner and sends to the HN Sink.
- In the client side another pipeline has created between HNSrc and MediaPlayerSink.
- HNSrc receive the incoming data from HNSink and feeds to the MediaPlayerSink for live playback.
- DTCP encryption and decryption are used for protecting contents over network.
- How to enable/disable DTCP
At first, user need to verify that the current build of the box supports to enable/disable DTCP.
If it's yes, following the next steps
- Copy rmfconfig.ini under /etc to /opt
cp /etc/rmfconfig.ini /opt
- Change the configuration parameter "FEATURE.DTCP.SUPPORT" value to TRUE or FALSE in file /opt/rmfconfig.ini
Save the configuration file and reboot the box
Check AV for the box once it's up.