Slashdot Mirror


More DeCSS Time-Warner Hypocrisy

Sethb writes "Scripting News has the scoop about CNN linking to the source code for DeCSS. CNN is a subsidiary of Time-Warner, so in effect they're suing 2600 and others for something that they are doing themselves!" Update: 08/26 02:05 AM by michael : CNN has deleted the link from their story after reporters asked about it. But the screenshots are out there.

27 of 188 comments (clear)

  1. what are you talking about? by Anonymous Coward · · Score: 5

    ...so while this is a funny anecdote I don't see it by any means as a sign of hypocrisy.

    WTF?

    The HYPOCRISY is in that 2600 was doing the same thing. They are a journalistic site, but on the fringe. So it's all right for a news site to post as long as their NOT on the fringe, and owned by the plaintiffs? It's just as sleazy for T-W to force any reporting group to pull an article, whether that group is one they own or not.

    If CNN had been the one to "break" DeCSS, and not 2600, there wouldn't have been any court case.. precisely because T-W owns CNN.

  2. Here's something to try... by Nagash · · Score: 3

    Try converting the DeCSS source code (generously posted by an anon coward here) into English. Write an article about it. Make it a story. Sure, converting those array's of hex values into some sort of coherent story won't be simple, but if you're creative, it could be cool.

    Make it so if I read the story, I could easily write the source file - just don't publish the source verbatim. Wouldn't this be like outlining how to build explosives? or how to prepare meatloaf? lose weight? murder someone?

    Crime novels and true crime stories regularily contain ideas on how to go about breaking the law. Where do you think copycat killers get their ideas? Obviously, it's illegal to go kill someone, but it's certainly not illegal to outline how to do it.

    Pushing this kind of limit would be a helluva test, I think. If I had some time, I'd convert it to story form, but maybe someone with better writing talent is up to the challenge?

    Maybe this will make compelling evidence to show that source code and writing are equivalent =)

    Woz

    1. Re:Here's something to try... by Coppit · · Score: 4

      It's already been made into a song.
      ------------------------------------------- ------------

  3. More MPAA sites can link to DeCSS by x0dus · · Score: 4
    Why limit ourselves to CNN's web site? Most of the MPAA member's web sites can be instantly turned into DeCSS links as well. Try the following links to get to DeCSS. No, I'm not linking to the DeCSS source code, that would probably be illegal for me to do. Instead, I'm linking to the web sites of Warner Bros., Universal Studios, and Walt Disney Company (who happen to have links to DeCSS--sue them, not me!). On an unrelated topic, from my understanding the reverse engineering of CSS was originally deemed illegal because presumably Jon Johansen clicked a button which indicated he complied with a license that said he wouldn't reverse engineer Xing's DVD player. My question is: don't the laws of Norway require you to be legal age (18) to enter into a contract?
  4. Unknown Ownership by lupine · · Score: 3

    This is off topic, but who knew cnn was owned by time warner? I would like to see some tree type organizational structure that details how these mega corporations are tied together.

    I live in an area with a high student population which tends to be educated and more environmentally conscientious. The gas station down the street is called the freedom station, which just happens to be owned by exxon.

    I want to people to be easily able to see that phillip morris owns miller, marlboro, and kraft. Is this information available on the net. If you are going to boycott time warner you need to know what companies to avoid. This information is public record, but it seems that much is done to keep it from being public knowledge.

    Are there any web sites that chronicle this type of information? Is there any easy(consumer friendly) way of finding this out?

  5. Is this really surprising? by Knight · · Score: 3

    CNN, like 2600, is a news organization, staffed by journalists. As journalists, they have the natural and logical instinct that source code is Free Speech, and as such, is covered under the First Amendment. I'm sure that whoever posted the link was unaware of the issue at hand. As I type this, the link has already been removed, but the point remains. Surely, CNN will not be sued, molested, or otherwise punished for this, which says to me that what I've believed all along is true: this lawsuit is not as much about DeCSS as it is an attack on the hacker community as a whole. 2600 was picked because of who they are, not because of what they did, and CNN will be left alone for the same reason. What has it come to that we now live in a society that applies laws differently to each person based on someone's perception of the person in general rather than the legitimacy of the charges? This makes me sick. I'm a security professional, and as such, a big part of what I do is security audits of products. What this ruling means to me is that if some large corporate entity decides they don't like me because I discovered a security hole in a product of theirs, they can sue me to death, but if they did the same thing to me, I would have no recourse. Well, I guess I have only one response to this, "http://magic.hurrah.com/~fireball/dvd/". I'm not linking to anything here, I'm just typing a URL, which surely will be illegal tomorrow, along with quoting the phrase "For Dummies", and writing a disassembler, because after all, I could use it to circumvent copy protection...

  6. Hypocrisy is the Greatest Luxury by Tackhead · · Score: 4
    The injuction only enjoined 2600 from linking to the DeCSS code.

    Presumably, CNN and Time-Warner are free to link to it as they see fit.

    If I couldn't tell my ass from my head, I'd say that 2600 got sued because they didn't believe in copyright law, and Eric's mother dressed him funny (two facts which have about the same relevance to the case, except for the fact that since I can't tell my head from my ass, I can choose ignore the sworn testimony of the defendants to the contrary)... and that CNN/Time-Warner shouldn't be sued because, after all, they're respectable law-abiding organizations that promulgate goodthought.

    As others have pointed out, this is a first amendment case - if linking to source code is legally actionable under DMCA, we're all suffering from a chilling effect, because it's reasonable to assume that MPAA is much more likely to sue "one of us" than it is CNN/Time-Warner.

    This is also an antitrust case - going offtopic for a moment: since CSS does (as a matter of simple fact) not prevent DVDs from being pirated (the encrypted streams can be copied with suitable equipment), about the only function it serves is to protect a licensing cartel between MPAA and the hardware manufacturers. DeCSS isn't required for DVD piracy. Indeed, the only thing DeCSS does is allow an end user to decrypt and play back the encrypted video stream on hardware not licensed by the aforementioned MPAA/hardware-manufacturer cartel.

  7. Fixed? by ct.smith · · Score: 3

    The link the in question seems to have dissappeared. The fourth link is now to Harvard University, not to a DeCSS mirror.

    Someone at CNN/Time-Warner must have noticed.

    --
    ** Sig-a-licious **
    1. Re:Fixed? by GrenDel+Fuego · · Score: 3

      Style sheets?

      Are you saying that they used CSS on their link to DeCSS?

      Talk about hypocracy! ;)

  8. That CNN writer made Corley's case for him by DreamingReal · · Score: 3
    Kudos to the writer (Deborah Durham-Vichr) - she graciously gave credibility to Corley's defense, probably w/o realizing it. Was she promoting piracy or subverting copyright through the distribution of pirating software? No, she was reporting a story, same as Corley.


    -------

    --
    We want some answers and all that we get
    Some kind of shit about a terrorist threat

    - Ministry
  9. Re:Well, the link's gone now... by Daffy+Duck · · Score: 4

    The Microsoft trial showed that doctored videotapes are admissible, so why not screenshots?

  10. In other words... by Anonymous Coward · · Score: 4
    Hello, we're the MPAA, and we announce that we're going to sue anyone who writes the word DeCSS.

    Oops!

    Little problem. Jack, we need more lawyers!

  11. DeCSS mirror by Anonymous Coward · · Score: 3

    /*
    * css_descramble.c
    *
    * Released under the version 2 of the GPL.
    *
    * Copyright 1999 Derek Fawcus
    *
    * This file contains functions to descramble CSS encrypted DVD content
    *
    */

    /*
    * Still in progress: Remove the use of the bit_reverse[] table by recoding
    * the generation of LFSR1. Finish combining this with
    * the css authentication code.
    *
    */

    #include <stdio.h>
    #include <string.h>
    #include "css-descramble.h"

    typedef unsigned char byte;

    /*
    *
    * some tables used for descrambling sectors and/or decrypting title keys
    *
    */

    static byte csstab1[256]=
    {
    0x33,0x73,0x3b,0x26,0x63,0x23,0x6b,0x76,0x3e,0x7e, 0x36,0x2b,0x6e,0x2e,0x66,0x7b,
    0xd3,0x93,0xdb,0x06,0x43,0x03,0x4b,0x96,0xde,0x9e, 0xd6,0x0b,0x4e,0x0e,0x46,0x9b,
    0x57,0x17,0x5f,0x82,0xc7,0x87,0xcf,0x12,0x5a,0x1a, 0x52,0x8f,0xca,0x8a,0xc2,0x1f,
    0xd9,0x99,0xd1,0x00,0x49,0x09,0x41,0x90,0xd8,0x98, 0xd0,0x01,0x48,0x08,0x40,0x91,
    0x3d,0x7d,0x35,0x24,0x6d,0x2d,0x65,0x74,0x3c,0x7c, 0x34,0x25,0x6c,0x2c,0x64,0x75,
    0xdd,0x9d,0xd5,0x04,0x4d,0x0d,0x45,0x94,0xdc,0x9c, 0xd4,0x05,0x4c,0x0c,0x44,0x95,
    0x59,0x19,0x51,0x80,0xc9,0x89,0xc1,0x10,0x58,0x18, 0x50,0x81,0xc8,0x88,0xc0,0x11,
    0xd7,0x97,0xdf,0x02,0x47,0x07,0x4f,0x92,0xda,0x9a, 0xd2,0x0f,0x4a,0x0a,0x42,0x9f,
    0x53,0x13,0x5b,0x86,0xc3,0x83,0xcb,0x16,0x5e,0x1e, 0x56,0x8b,0xce,0x8e,0xc6,0x1b,
    0xb3,0xf3,0xbb,0xa6,0xe3,0xa3,0xeb,0xf6,0xbe,0xfe, 0xb6,0xab,0xee,0xae,0xe6,0xfb,
    0x37,0x77,0x3f,0x22,0x67,0x27,0x6f,0x72,0x3a,0x7a, 0x32,0x2f,0x6a,0x2a,0x62,0x7f,
    0xb9,0xf9,0xb1,0xa0,0xe9,0xa9,0xe1,0xf0,0xb8,0xf8, 0xb0,0xa1,0xe8,0xa8,0xe0,0xf1,
    0x5d,0x1d,0x55,0x84,0xcd,0x8d,0xc5,0x14,0x5c,0x1c, 0x54,0x85,0xcc,0x8c,0xc4,0x15,
    0xbd,0xfd,0xb5,0xa4,0xed,0xad,0xe5,0xf4,0xbc,0xfc, 0xb4,0xa5,0xec,0xac,0xe4,0xf5,
    0x39,0x79,0x31,0x20,0x69,0x29,0x61,0x70,0x38,0x78, 0x30,0x21,0x68,0x28,0x60,0x71,
    0xb7,0xf7,0xbf,0xa2,0xe7,0xa7,0xef,0xf2,0xba,0xfa, 0xb2,0xaf,0xea,0xaa,0xe2,0xff
    };

    static byte lfsr1_bits0[256]=
    {
    0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x09,0x08, 0x0b,0x0a,0x0d,0x0c,0x0f,0x0e,
    0x12,0x13,0x10,0x11,0x16,0x17,0x14,0x15,0x1b,0x1a, 0x19,0x18,0x1f,0x1e,0x1d,0x1c,
    0x24,0x25,0x26,0x27,0x20,0x21,0x22,0x23,0x2d,0x2c, 0x2f,0x2e,0x29,0x28,0x2b,0x2a,
    0x36,0x37,0x34,0x35,0x32,0x33,0x30,0x31,0x3f,0x3e, 0x3d,0x3c,0x3b,0x3a,0x39,0x38,
    0x49,0x48,0x4b,0x4a,0x4d,0x4c,0x4f,0x4e,0x40,0x41, 0x42,0x43,0x44,0x45,0x46,0x47,
    0x5b,0x5a,0x59,0x58,0x5f,0x5e,0x5d,0x5c,0x52,0x53, 0x50,0x51,0x56,0x57,0x54,0x55,
    0x6d,0x6c,0x6f,0x6e,0x69,0x68,0x6b,0x6a,0x64,0x65, 0x66,0x67,0x60,0x61,0x62,0x63,
    0x7f,0x7e,0x7d,0x7c,0x7b,0x7a,0x79,0x78,0x76,0x77, 0x74,0x75,0x72,0x73,0x70,0x71,
    0x92,0x93,0x90,0x91,0x96,0x97,0x94,0x95,0x9b,0x9a, 0x99,0x98,0x9f,0x9e,0x9d,0x9c,
    0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x89,0x88, 0x8b,0x8a,0x8d,0x8c,0x8f,0x8e,
    0xb6,0xb7,0xb4,0xb5,0xb2,0xb3,0xb0,0xb1,0xbf,0xbe, 0xbd,0xbc,0xbb,0xba,0xb9,0xb8,
    0xa4,0xa5,0xa6,0xa7,0xa0,0xa1,0xa2,0xa3,0xad,0xac, 0xaf,0xae,0xa9,0xa8,0xab,0xaa,
    0xdb,0xda,0xd9,0xd8,0xdf,0xde,0xdd,0xdc,0xd2,0xd3, 0xd0,0xd1,0xd6,0xd7,0xd4,0xd5,
    0xc9,0xc8,0xcb,0xca,0xcd,0xcc,0xcf,0xce,0xc0,0xc1, 0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,
    0xff,0xfe,0xfd,0xfc,0xfb,0xfa,0xf9,0xf8,0xf6,0xf7, 0xf4,0xf5,0xf2,0xf3,0xf0,0xf1,
    0xed,0xec,0xef,0xee,0xe9,0xe8,0xeb,0xea,0xe4,0xe5, 0xe6,0xe7,0xe0,0xe1,0xe2,0xe3
    };

    static byte lfsr1_bits1[512]=
    {
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff,
    0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24, 0x49,0x6d,0x92,0xb6,0xdb,0xff
    };

    /* Reverse the order of the bits within a byte.
    */
    static byte bit_reverse[256]=
    {
    0x00,0x80,0x40,0xc0,0x20,0xa0,0x60,0xe0,0x10,0x90, 0x50,0xd0,0x30,0xb0,0x70,0xf0,
    0x08,0x88,0x48,0xc8,0x28,0xa8,0x68,0xe8,0x18,0x98, 0x58,0xd8,0x38,0xb8,0x78,0xf8,
    0x04,0x84,0x44,0xc4,0x24,0xa4,0x64,0xe4,0x14,0x94, 0x54,0xd4,0x34,0xb4,0x74,0xf4,
    0x0c,0x8c,0x4c,0xcc,0x2c,0xac,0x6c,0xec,0x1c,0x9c, 0x5c,0xdc,0x3c,0xbc,0x7c,0xfc,
    0x02,0x82,0x42,0xc2,0x22,0xa2,0x62,0xe2,0x12,0x92, 0x52,0xd2,0x32,0xb2,0x72,0xf2,
    0x0a,0x8a,0x4a,0xca,0x2a,0xaa,0x6a,0xea,0x1a,0x9a, 0x5a,0xda,0x3a,0xba,0x7a,0xfa,
    0x06,0x86,0x46,0xc6,0x26,0xa6,0x66,0xe6,0x16,0x96, 0x56,0xd6,0x36,0xb6,0x76,0xf6,
    0x0e,0x8e,0x4e,0xce,0x2e,0xae,0x6e,0xee,0x1e,0x9e, 0x5e,0xde,0x3e,0xbe,0x7e,0xfe,
    0x01,0x81,0x41,0xc1,0x21,0xa1,0x61,0xe1,0x11,0x91, 0x51,0xd1,0x31,0xb1,0x71,0xf1,
    0x09,0x89,0x49,0xc9,0x29,0xa9,0x69,0xe9,0x19,0x99, 0x59,0xd9,0x39,0xb9,0x79,0xf9,
    0x05,0x85,0x45,0xc5,0x25,0xa5,0x65,0xe5,0x15,0x95, 0x55,0xd5,0x35,0xb5,0x75,0xf5,
    0x0d,0x8d,0x4d,0xcd,0x2d,0xad,0x6d,0xed,0x1d,0x9d, 0x5d,0xdd,0x3d,0xbd,0x7d,0xfd,
    0x03,0x83,0x43,0xc3,0x23,0xa3,0x63,0xe3,0x13,0x93, 0x53,0xd3,0x33,0xb3,0x73,0xf3,
    0x0b,0x8b,0x4b,0xcb,0x2b,0xab,0x6b,0xeb,0x1b,0x9b, 0x5b,0xdb,0x3b,0xbb,0x7b,0xfb,
    0x07,0x87,0x47,0xc7,0x27,0xa7,0x67,0xe7,0x17,0x97, 0x57,0xd7,0x37,0xb7,0x77,0xf7,
    0x0f,0x8f,0x4f,0xcf,0x2f,0xaf,0x6f,0xef,0x1f,0x9f, 0x5f,0xdf,0x3f,0xbf,0x7f,0xff
    };

    /*
    *
    * this function is only used internally when decrypting title key
    *
    */
    static void css_titlekey(byte *key, byte *im, byte invert)
    {
    unsigned int lfsr1_lo,lfsr1_hi,lfsr0,combined;
    byte o_lfsr0, o_lfsr1;
    byte k[5];
    int i;

    lfsr1_lo = im[0] | 0x100;
    lfsr1_hi = im[1];

    lfsr0 = ((im[4] << 17) | (im[3] << 9) | (im[2] << 1)) + 8 - (im[2]&7);
    lfsr0 = (bit_reverse[lfsr0&0xff]<<24) | (bit_reverse[(lfsr0>>8)&0xff] << 16)
    | (bit_reverse[(lfsr0>>16)&0xff]<<8) | bit_reverse[(lfsr0>>24)&0xff];

    combined = 0;
    for (i = 0; i < 5; ++i) {
    o_lfsr1 = lfsr1_bits0[lfsr1_hi] ^ lfsr1_bits1[lfsr1_lo];
    lfsr1_hi = lfsr1_lo>>1;
    lfsr1_lo = ((lfsr1_lo&1)<<8) ^ o_lfsr1;
    o_lfsr1 = bit_reverse[o_lfsr1];

    /*o_lfsr0 = (lfsr0>>7)^(lfsr0>>10)^(lfsr0>>11)^(lfsr0>>19);*/
    o_lfsr0 = (((((((lfsr0>>8)^lfsr0)>>1)^lfsr0)>>3)^lfsr0)>>7);
    lfsr0 = (lfsr0>>8)|(o_lfsr0<<24);

    combined += (o_lfsr0 ^ invert) + o_lfsr1;
    k[i] = combined & 0xff;
    combined >>= 8;
    }

    key[4]=k[4]^csstab1[key[4]]^key[3];
    key[3]=k[3]^csstab1[key[3]]^key[2];
    key[2]=k[2]^csstab1[key[2]]^key[1];
    key[1]=k[1]^csstab1[key[1]]^key[0];
    key[0]=k[0]^csstab1[key[0]]^key[4];

    key[4]=k[4]^csstab1[key[4]]^key[3];
    key[3]=k[3]^csstab1[key[3]]^key[2];
    key[2]=k[2]^csstab1[key[2]]^key[1];
    key[1]=k[1]^csstab1[key[1]]^key[0];
    key[0]=k[0]^csstab1[key[0]];
    }

    /*
    *
    * this function decrypts a title key with the specified disk key
    *
    * tkey: the unobfuscated title key (XORed with BusKey)
    * dkey: the unobfuscated disk key (XORed with BusKey)
    * 2048 bytes in length (though only 5 bytes are needed, see below)
    * pkey: array of pointers to player keys and disk key offsets
    *
    *
    * use the result returned in tkey with css_descramble
    *
    */

    int css_decrypttitlekey(byte *tkey, byte *dkey, struct playkey **pkey)
    {
    byte test[5], pretkey[5];
    int i = 0;

    for (; *pkey; ++pkey, ++i) {
    memcpy(pretkey, dkey + (*pkey)->offset, 5);
    css_titlekey(pretkey, (*pkey)->key, 0);

    memcpy(test, dkey, 5);
    css_titlekey(test, pretkey, 0);

    if (memcmp(test, pretkey, 5) == 0) {
    fprintf(stderr, "Using Key %d\n", i+1);
    break;
    }
    }

    if (!*pkey) {
    fprintf(stderr, "Shit - Need Key %d\n", i+1);
    return 0;
    }

    css_titlekey(tkey, pretkey, 0xff);

    return 1;
    }

    /*
    *
    * this function does the actual descrambling
    *
    * sec: encrypted sector (2048 bytes)
    * key: decrypted title key obtained from css_decrypttitlekey
    *
    */
    void css_descramble(byte *sec,byte *key)
    {
    unsigned int lfsr1_lo,lfsr1_hi,lfsr0,combined;
    unsigned char o_lfsr0, o_lfsr1;
    unsigned char *end = sec + 0x800;
    #define SALTED(i) (key[i] ^ sec[0x54 + (i)])

    lfsr1_lo = SALTED(0) | 0x100;
    lfsr1_hi = SALTED(1);

    lfsr0 = ((SALTED(4) << 17) | (SALTED(3) << 9) | (SALTED(2) << 1)) + 8 - (SALTED(2)&7);
    lfsr0 = (bit_reverse[lfsr0&0xff]<<24) | (bit_reverse[(lfsr0>>8)&0xff] << 16)
    | (bit_reverse[(lfsr0>>16)&0xff]<<8) | bit_reverse[(lfsr0>>24)&0xff];

    sec+=0x80;
    combined = 0;
    while (sec != end) {
    o_lfsr1 = lfsr1_bits0[lfsr1_hi] ^ lfsr1_bits1[lfsr1_lo];
    lfsr1_hi = lfsr1_lo>>1;
    lfsr1_lo = ((lfsr1_lo&1)<<8) ^ o_lfsr1;
    o_lfsr1 = bit_reverse[o_lfsr1];

    /*o_lfsr0 = (lfsr0>>7)^(lfsr0>>10)^(lfsr0>>11)^(lfsr0>>19);*/
    o_lfsr0 = (((((((lfsr0>>8)^lfsr0)>>1)^lfsr0)>>3)^lfsr0)>>7);
    lfsr0 = (lfsr0>>8)|(o_lfsr0<<24);

    combined += o_lfsr0 + (byte)~o_lfsr1;
    *sec++ = csstab1[*sec] ^ (combined&0xff);
    combined >>= 8;
    }
    }

    1. Re:DeCSS mirror by Joe+Groff · · Score: 3
      Slashdot has already been hosting the css_descramble code in my User Info.

      - Joe

      --

      -Joe

  12. Story Originated from IDG LinuxWorld by ttyRazor · · Score: 3

    The story, and the links themselves, was written by someone from IDG, and was simply reposted on CNN.com. They also have some litle disclaimer: "External sites are not endorsed by CNN Interactive", blah, blah, blah. That famous Time-Warner media synergy finally kicked in and link appears to be gone now. This was probably just the doing of some retarded news script that doesn't understand the hypocrisy it just commited on behalf of its owners.

  13. It doesn't work that way... by Sir_Winston · · Score: 3

    News organizations, first of all, never report with impartiality. Sometimes they try, but most often they don't even make an effort to be impartial--reporters are people, and people are inherently biased and inclined to express those biases, even if only subconsciously.

    The problem I see is that news organizations these days try to *appear* impartial to the public, while in reality infusing their stories with either a liberal or conservative bias depending on the people running the show. Thus, the public thinks what they're hearing is impartial "fact" when the reality is that they're hearing subtle political propaganda.

    In the old days, newspapers came right out and proudly proclaimed their political beliefs. Think of the rampant jingoism of a Hurst (Hearst? sorry, my mind is asleep and I'm too lazy to go to Google to check) news organization. That was honesty about being biased. But now news organizations just lie about their biases, and that's dangerous: it indoctrinates the citizenry to have the same bias, through subtle manipulation of facts, instead of teaching them to form their own opinion.

    If you want an example, just look at the huge mistake CNN made when they ran the story two years ago about American forces using CS gas against civilians during the Vietnam War. It was a lie based on the ramblings of an unstable person with a bad memory, who when questioned by others couldn't even remember who some of his commanding officers were. There was no corroborating evidence at all, but they ran the story as if it were gospel truth. No one thought of pulling the plug, because everyone there had an inherent bias. Journalism is just a dangerous illusion--no one in the profession is impartial.

    Aside from which, if it were illegal to link to DeCSS code or binaries, CNN would be committing a crime by doing so just as if a private citizen were to do the same. I dare say that's doubtless why the link has been removed. A news person cannot break the law to get a story or in reporting a story. For example, a journalist who freelanced and did contract pieces for NPR and other organizations was arrested for child pornography when he was investigating it for a piece, because he retransmitted an image which he'd downloaded in a chat room (he got the image from a Fed shill, BTW--doesn't our government have better things to do than distribute child pornography? Entrapment, anyone?)...

    --


    "The more corrupt the state, the more numerous the laws."--Tacitus, *The Annals*
  14. Re:Not really a conflict of interest by ackthpt · · Score: 3

    The really sleazy thing would be for Time Warner to force an impartial news service like CNN to pull the article!

    And hardly a new idea. There are a number of laws on the books governing who can own media and how much, this to prevent undue influence and partiality upon news. But, hell, if I really want to know what's going on in the world, I just read the foreign press. It's not all filtered through the State Dept. or the uberdummies in the media.

    Vote Naked 2000

    --

    A feeling of having made the same mistake before: Deja Foobar
  15. Not really a conflict of interest by coupland · · Score: 3

    We all know news services have to have freedom to report impartially, so while this is a funny anecdote I don't see it by any means as a sign of hypocrisy. CNN must be able to report news regardless of Time-Warner's allegiances just like Slashdot needs to have the freedom to report things that even Andover.net doesn't like.

    The really sleazy thing would be for Time Warner to force an impartial news service like CNN to pull the article!

  16. Holy crap... by dbarclay10 · · Score: 4

    Wow, they're quick. 2 comments here on Slashdot.org, and the CNN story that was supposedly carrying the link has been changed. That's pretty blisteringly fast. So, here's a thought: They're watching everything closely. Remember that. If you have a thought, maybe a plan, that could *really* work, maybe you should contact the proper authorities(maybe the EFF or something) privately.

    Dave

    --

    Barclay family motto:
    Aut agere aut mori.
    (Either action or death.)
  17. Wired 8.09 on AOL-Time-Warner by HerrNewton · · Score: 4

    Has a really great article on the AOL-Time-Warner merger that specifically discusses Time-Warner's coporate culture of basically ongoing civil warfare between the departments. The crux of the issue is that it's gotten so damned big relatively quickly---even without the added factor of AOL---that its internal sectors might as well be separate companies. Lots of power struggles and penis measuring contests, apparently.

    Good read. Not online yet, as Wired doesn't post current magazine content, but for posterity, http://www.wired.com/wired/archive/8.09/ Definitely pick it up off the newstand for a bit of insight into intracorporate warfare.

    ----

    --

    ----
    Am I the only one who thinks Microsoft is a misnomer? Perhaps Macrosoft would be a better fit?
  18. Re:well, they DO own it. by molog · · Score: 3
    They don't own it. DeCSS has been deemed a device, which is made to bypass an access mechanism, in this case CSS. Therefore it is not copyrighted by Time Warner, it is merely and illegal tool in their eyes. That is what makes this so funny.
    Molog

    So Linus, what are we doing tonight?

    --
    So Linus, what are we going to do tonight?
    The same thing we do every night Tux. Try to take over the world!
  19. Re:Fixed? -- nope, it is just harder to find by Mr+Slushy · · Score: 3
    You can still get to the DeCSS source from CNN in 4 clicks:
    1. from the CNN page, click on berkman center link
    2. At the Berkman center page, click on the "2600 enjoined from posting..." link.
    3. on the OpenDVD page, click on the OpenDVD FAQ link
    4. on the FAQ page, scroll to section 4.2.1 "where can I get a copy of DeCSS" You have three URLs that lead to the DeCSS source.
    --

    S.E.S.S.D.E.N.E.E.NW from west end of hall of mists

  20. Re:I own rights to this link by NaughtyEddie · · Score: 3
    Hey man, that link pointed to my private intranet web server which contains the DeCSS code

    You're in BIG TROUBLE, mister.

    --

    --
    It's a .88 magnum -- it goes through schools.
    -- Danny Vermin
  21. Well, the link's gone now... by dizee · · Score: 3

    ...but they still look like idiots. The story has a screenshot of the link, plain as day, with the URL intact.

    On a side note, can screenshots be presented as legal evidence?

    Mike

    "I would kill everyone in this room for a drop of sweet beer."

  22. Free Speech for Programmers and New DeCSS Mirror by goingware · · Score: 4
    GoingWare is at last able to post on-topic by asserting that computer program source code is constitutionally protected free speech.

    http://www.goingware.com/decss

    When a law is unjust, it is just to disobey the law. Also, court judgements can only be made based on actual cases; the U.S. court system does not render "advisory opinions", so if you believe that your rights have been violated by Judge Kaplan's decision, it is your duty to mirror DeCSS too.

    --
    -- Could you use my software consulting serv
  23. Wrong money rules. by |deity| · · Score: 3

    As long as politicians and judges can be swayed by money, laws will always be biased. Money may not be the root of all that's evil but it is the root of all power in the US.

    When the average citizen can be swayed quite easily by high cost political adds and corporations provide the money to fuel those advertising campaigns, we get laws like the DMCA.

    I will vote when I don't feel that I'm choosing between the lesser of two evils. Let my voter apathy be my vote. None of the above.

    --
    Environmentalists are their own worst enemy. ~tricklenews.com
  24. Editorial vs. Business by Sudderth · · Score: 4

    Don't call it "hypocrisy" just yet. There is a long tradition in "legitimate" journalism of a wall of separation between the editorial (content) and business (financial) sides of news organizations. This wall is admittedly getting some chunks knocked out of it in today's corporate-driven media, but there are many journalists who will be damned if they'll let the suits spike their story.

    I wouldn't be surprised if some folks in the news division at CNN.com, or IDG, or LinuxWorld -- whoever's responsible -- included the link on the same basis as they would any other external link. Maybe they even thought that highlighting this worldwide list was important in driving a point home. They made their journalistic point. Then the lawyers for the Suits noticed; rather than have that inconsistency noted for all and sundry to see (too late -- thanks, Scripting News), and to keep themselves from violating the law as interpreted by Kaplan, the suits pulled the plug.