$350 Hardware Cracks HDMI Copy Protection
New submitter LBeee writes "German Researchers at the Ruhr University Bochum built an FPGA board-based man-in-the-middle attack against the HDCP copy protection used in HDMI connections. After the leak of an HDCP master key in 2010, Intel proclaimed that the copy protection was still secure, as it would be too expensive to build a system that could conduct a real-time decryption of the data stream. It has now been proven that a system can be built for around $350 (€200) to do the task. However, the solution is of no great practical use for pirates. It can easily be used to burn films from Blu-ray discs, but receivers which can deliver HDTV recordings are already available — and they provide the data in compressed form. In contrast, recording directly from an HDMI port results in a large amount of data."
Right now I have a situation where I can't watch Blu-rays on my PC. I have everything you should need, an ideal setup even. I have a high end video card that does HDCP, I have Windows 7, I have a monitor that does HDCP, and I have a receiver that does HDCP. Everything works, looks, and sounds, great. However when I play a Blu-ray, it says "Nope."
Why?
Well because of the way my video and audio are hooked up. My graphics card is hooked directly via DVI to my monitor. No problems there. However it then has a second HDMI output to an HDMI soundcard, which goes HDMI to my receiver. The reason is HDMI requires a video clock to send sound and the soundcard doesn't generate one. No problem, the second out is just a mirrored output, just a dummy out to get video clock.
However Blu-ray doesn't allow for that. No splitting the signal. Even though both devices are HDCP enabled, it won't allow it.
So hell, I might build one of these (particularly since where I work, we have Xilinx ISE). Would solve the problem and mean any future HDCP problems are easy to solve too.
That's not how it works in practice. The TV doesn't have a specific chip for decoding HDCP.
This $8 chip disagrees with you.
Load it up with some keys and you get the unencrypted audio/video stream on the output pins.
We both said a lot of things that you are going to regret.
Each lossy compression/decompression cycle loses data. For examples. see YouTube.
If you use an algorithm similar to the original compression algorithm, you do not have to lose much (in the best case, nothing at all). E.g. a part of how JPEG works is reducing the number of colours in little squares. If you decompress/recompress with JPEG at around the same quality level, the algorithm will notice that it doesn't need to eliminate very many colours in each square, because they magically have just the right number of colours already!
Similarly, most movie compressions try to detect if part of the next picture matches the previous, just shifted. After compression and decompression, those areas will stand out clearly to the algorithm and it is likely that similar parameters are chosen for the recompression. You can get unlucky that the second compression picks different I-frames than the first compression did, of course. If this kind of recompression becomes popular, someone will write a tool to guess which frames are I-frames.
Finally! A year of moderation! Ready for 2019?
I have a $35 no-name chinese-made HDMI repeater that strips HDCP from anything you feed to it. Quite useful for watching BluRay output on my old non-HDCP TV. Doing it with an FPGA is a nice trick, but doing it with off-the-shelf parts selling for $35 retail is more convenient :-).