HDCP master key spawns open source encryption/decryption code

HDCP master key spawns open source encryption/decryption code

Summary: Remember that HDCP master key that was leaked a few weeks back? Remember how Intel tried to downplay the leak at the time claiming that they key was useless unless incorporated into hardware? Well, it seems that it might not be that useless after all.

SHARE:

Remember that HDCP master key that was leaked a few weeks back? Remember how Intel tried to downplay the leak at the time claiming that they key was useless unless incorporated into hardware? Well, it seems that it might not be that useless after all.

Researchers Rob Johnson and Mikhail Rubnich of Stony Brook University, New York, have released an open source (BSD licensed) implementation of the HDCP encryption/decryption algorithm.

The HDCP cipher is designed to be efficient when implemented in hardware, but it is terribly inefficient in software, primarily because it makes extensive use of bit operations. Our implementation uses bit-slicing to achieve high speeds by exploiting bit-level parallelism. We have created a few high-level routines to make it as easy as possible to implement HDCP, as shown in the following example.

The code isn't yet fast enough to be able to decrypt 1080p content in real-time on a single core, but decryption can be parallelized across multiple cores. To achieve a decrypt rate of 30 frames per second for 1080p the code needs a high-end 64-bit CPU and some 1.6GB of RAM. The researchers see the possibility for further optimization, such as by using SSE instructions.

Topics: Open Source, Hardware, Processors

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

12 comments
Log in or register to join the discussion
  • great!

    You might not need real time decryption at all if you just want to record a show rather than seeing it.
    Linux Geek
    • RE: HDCP master key spawns open source encryption/decryption code

      @Linux Geek

      I smell MythTV plugin...
      WarhavenSC
      • MythTV on Windows, presumably

        @WarhavenSC

        I can't see a use for this on Linux, unless Linux video drivers actually turn HDCP <i>on</i> in the first place. The Open Source ones certainly don't, and don't need to either.
        Zogg
  • "high-end 64-bit CPU and some 1.6GB of RAM"

    You can barely buy a computer with only 2GB of RAM these days. In a couple of years, low end HW would barely notice the additional load of this decryption. Nice going Intel. Your ever powerful processors will come back and bite you in the a$$. How deliciously ironic.
    Economister
    • LOL!

      @Economister .. i was thinking exact same thing .. got a flatmate who recently purchased a new ACER. According to him the machine was "mid range" from those available at the retail outlet.<br><br>Here's the basic spec's: 3GB of RAM, fully integrated ATI Graphics @512MB of dedicated video RAM, 3.2GHz Intel Dual Core .. so really, i did almost laugh when reading ""high-end 64-bit CPU and some 1.6GB of RAM" as well .. it is kinda hilarious, as statements go, in this day and age.<br><br>Incidentally, my basement dwelling Athlon 3000+ (Newcastle) @2.4GHz, by todays standards, is a museum piece. :( <br><br> ... as for the leaked HDCP key being successfully incorporated into a working implementation with existing, DRM protected, HD content: it's become a matter of "when" and not "if" anymore. Taking into accounts this latest news flash .. i'd say pretty d@mn soon.
      thx-1138_
      • Got you beat

        @thx-1138_@...

        Athlon 64 3000+ (Winchester) w. 2 GB RAM. Does everything I need it to do, but if I need to generate some of those HDCP keys I may have to upgrade. ;-)
        Economister
      • You got me ..

        @Economister .. ;)
        thx-1138_
  • a high-end 64-bit CPU and some 1.6GB of RAM

    Makes for an off the shelf purchase, available to anyone with a few bucks. No, nothing exploitable here.
    aureolin
  • It'll be in cheap chips soon enough

    I wouldn't worry about buying a fast computer to use this algorithm. It's thought that the large memory requirements are because the code uses a huge lookup table to get around needing fast bit operations.<br><br>However, somebody will put this into a programmable logic part or even design a special chip to do it for a few bucks. It won't need all the memory or processing power because special-purpose bit operations can be designed in. Remember adding a HDCP compliant HDMI port must cost only a few bucks at most, even the lowest cost DVD players have one. The net result is that somebody will produce a dongle to decode a HDCP stream for worst case $100 to $200 retail (besides making a profit, you have to have a case, the physical HDMI connector(s), might have to add power, etc.).
    zackers
  • This sounds like a job for...

    ... the GPU. Heavy decryption number crunching seems to be heading for the GPU in most other applications, so surely it's the logical direction for this to go in.
    keebaud@...
  • Why the CPU and not the GPU?

    Why are they using the CPU's to do this? Could you not use the power of a GPU to do this job more effectively?
    NZJester
  • Whoa!

    Before everyone gets too excited we'd all better read The Digital Millenium Copyright ACT which makes it illegal to decrypt encrypted copyrighted material "even for your own use" NOT just for pirates who plan to sell it and deprive the creators of their rightful income.

    Don't get me wrong, I disagree, and feel consumers "should" have the right to do whatever they like as long as it does not deprive content creator's of their rightful income but that is NOT how that law is written.
    njohnson@...