Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Verify Display HDCP Compliance (Force HDCP output, disable output if HDCP unavailable)

Tags:

c#

winforms

hdcp

I am working in C# Windows Forms, and would like to ensure that the content on my form is only output through an HDCP compliant stream using the system's hardware. This would require a multi-step process. A high level block-diagram description of the process would be:

  1. determine if the display supports HDCP
  2. determine if the graphics adapter supports HDCP
  3. finally enabling the HDCP encryption on the output

If any of these stages report failure, it is then a trivial matter to black out the form.

I have done a minor amount of research into this manner, but cannot seem to find any detailed examples, leads, or instructions for accomplishing this. I have so far looked into using DirectX and Windows OPM, but have found insufficient help. The Windows PlayReady license also seems to touch up on this issue, but appears to be for pre-encrypted content (and is also quite expensive). Perhaps there is an approach that I have not noticed or thought about?

If you need any other information, please let me know.

Thank you in advance.

like image 422
Patsy7z7 Avatar asked May 01 '13 20:05

Patsy7z7


People also ask

How do I make sure my monitor is HDCP compliant?

First, you can look for the HDCP logo on the monitor itself. Second, you can check the specifications list for the monitor. Most manufacturers will list whether or not the monitor is HDCP compliant. Finally, you can try connecting your monitor to an HDCP-encrypted device, like a Blu-ray player or set-top box.

What is HDCP on my TV?

What is HDCP? High-bandwidth digital content protection (HDCP) protects the unauthorized duplication of digital content. Your entire setup, including devices, displays, cables, adapters and software drivers, needs to be HDCP compliant to watch HD-quality video on Spectrum TV.


1 Answers

HDCP is nice to have but very hard to implement. Even if you have such a product on the market which does exactly what you want, it won't be certified by HDCP becuase it is easy to hack it. Most of the time, HDCP related things, for example the ROM where you store the HDCP keys, are hardware protected and can never be read out when your product is on the market. Sometimes you even need to hide the hardware paths from one component to another one to protect sniffing out your HDCP de-crypted data, for example, from between the graphics card chip and the HDMI connector.

To answer your question, you can only detect if the display supports HDCP or not if you can somehow read the EDID of the display. I don't think that you can do it using existing tools in windows. I might be wrong though.

like image 89
Dundar Avatar answered Oct 13 '22 01:10

Dundar