"If You Can Put It On A T-Shirt, It's Speech"
Carnegie Mellon Professor David Touretzky testified before the court on this very issue. (See his Gallery of CSS Descramblers.)
Here's Touretzky being questioned:
19 Q. The next item, the DeCSS T-shirt, why did you post this on
20 the website on the gallery?
21 A. Well, this is a photograph of a T-shirt that's offered for
22 sale by an outfit called CopyLeft, and I purchased one of
23 those shirts myself. And the point of including it here is it
24 seems to me that there is some confusion among all the parties
25 in this case about whether something is speech or not.
1 And my reaction is if you can put it on a T-shirt,
2 it's speech. And so the point of showing the T-shirt was to
3 illustrate that and, also, to raise the question if this
4 T-shirt, itself, would have to be prohibited, then I wonder
5 what would happen to me if I wore the shirt in public.
6 Wearing the shirt in public could, perhaps, be interpreted as
7 engaging in trafficking a circumvention device.
8 So if one really wants to afford the plaintiffs the
9 protection that they seek, I think I would only be able to
10 wear my shirt in the privacy of my own home and must not go
11 outdoors with it.
Touretzky drew up a lengthy argument showing that if the DeCSS source code were banned, the only way to prevent that knowledge from being transmitted would be to ban it in all its forms - image file, various perturbations of the code into forms similar to plain English, annotated commentary, even on t-shirts and hidden in image files - all of these would have to be banned because the source code is easily retrievable from all of them. The Technical Term for this is "opening up a can of worms". Touretzky was trying to show the court that the issue was hardly open-and-shut - if you look at it one way, it's a device which can perform a task, but if you look at it another, it's speech that's expressive and communicative. If you're a programmer who's never taken much of a look at the legal issues surrounding computer programs, it may be patently obvious to you that code is speech, but to the judicial system, it is not so clear.
The judge was apparently much impressed, and started seriously thinking about the free-speech implications of banning DeCSS, possibly for the first time in the case. He seemed to take Touretzky's argument to heart - either all would have to be banned, or none. Apparently the MPAA took Touretzky's argument to heart as well, and they're therefore doing what is necessary to remain consistent with their argument: going after the T-shirts.
Maybe they'll go after the New York Times as well. Perhaps if the Times gets dragged into the case for posting an image of the illegal shirt, it might finally become clear to all and sundry that this case is about much more than copyright infringement.
Subject: [CAFE-News] EFF DeCSS Trial Summary
DVD Update: July 31, 2000
Universal City Studios et al v. 2600 Magazine
EFF DeCSS Trial Summary:
Facts in EFF's Favor as MPAA Claims Collapse Under Scrutiny
EFF defense team established a solid record at trial that the major film studios are attempting to use the DMCA to ban DeCSS so it can monopolize the DVD player market. Despite its immense investigative resources and months of effort, the MPAA was forced to concede at trial that it could not find a single instance of piracy related to the software. The First Amendment rights of all citizens have been endangered because of the studios' panic and over reaction.
Norwegian teenager Jon Johansen testified for the defense that he was working to build a DVD player for the Linux operating system when he posted the program to the LiVid list that he and two others authored. LiVid Project Leader Matthew Pavlovich testified that his development group used DeCSS to create a Linux DVD player that can compete with the studios' and DVD-CCA's current monopoly on DVD players. The studios were hoping to ban the software before a competing DVD player could be created that is not required by a CSS license to restrict features which allow people to exercise their legal rights. Journalist Emmanuel Goldstein, the editor of 2600 Magazine testified that he published the code in his reporting of Hollywood's crazed reaction to the software's existence, when the studios launched this legal attack against him.
The high point of trial was the electrifying testimony of Professor David Touretzky of Carnegie Mellon University's Computer Science Department, EFF's final witness before resting its case. Touretzky explained to the court how computer programmers use computer code to communicate to one another with precision. He showed the court how an injunction against DeCSS chills his ability to express himself. Judge Lewis Kaplan stated Touretzky's testimony was "persuasive" and "educational" and would likely change his First Amendment analysis of the case. The judge did not indicate that he intends to rule in favor of defendants however, and EFF is prepared to take an immediate appeal to the Second Circuit Court of Appeals. Trial briefs are due August 8 and a short turn-around is expected for a ruling.
After the close of trial, DVD-CCA filed a motion to intervene in the NY litigation to fight EFF's challenge to unseal the Xing CSS license entered into evidence. DVD-CCA has requested to keep its CSS license out of the public record and Judge Kaplan will accept papers opposing DVD-CCA's intervention and secrecy request until August 2 at 5p.m.
You can subscribe to EFF's mailing list to receive the regular DVD updates. To subscribe, email majordomo@eff.org and put this in the text: subscribe cafe-news
EFF's archive of MPAA v 2600 litigation:
http://www.eff.org/IP/Video/MPAA_DVD_cases/
---------------------------------------------------------------
The Electronic Frontier Foundation (http://www.eff.org) is the leading global nonprofit organization linking technical architectures with legal frameworks to support the rights of individuals in an open society. Founded in 1990, EFF actively encourages and challenges industry and government to support free expression, privacy, and openness in the information society. EFF is a member-supported organization and maintains one of the most-linked-to Web sites in the world.
Break out the ol' black arm-bands, and print that three-line perl script to encrypt all our data, because the nerds are back...
;)
Maybe eventually we can get rid of "programming patents", since all programming is expressible as a discrete system, and therefore can be formalized as math, and math cannot be patented.
However, any piece of digital information can be expressed as, say, one big number, and that can't be patented either. But tell that to the MPAA/RIAA...
Actually, I'd love to post, say, an mpeg of "The Matrix" in base 10. See if anyone bothers to download it and convert it, *or* tries to sue me.
---
pb Reply or e-mail; don't vaguely moderate.
pb Reply or e-mail; don't vaguely moderate.
if they wish to restrain free speech, they have to do it across the board. I wonder if the judge has looked at the number of DeCSS mirrors on the Net. I wonder if he realizes what exactly he sets in motion by declaring this code illegal. Either way, I've still got my t-shirt on today, and if someday that's a felony, well, then this country is more fucked up than I thought.
--
+&x
Without the T-shirt, the court may have made the mistake of assuming that it was dealing with mere technology, rather than actual speech. Code is technology, and most technology is not speech. A car isn't free speech, is it? T-shirts show that, unlike most technology, software is speech.
T-shirts are just another medium, but it is a medium that non-geeks recognize as speech.
--The basis of all love is respect
I think we should get the code printed on the side of an 18" dildo. I'd like to see that introduced as evidence.
-Vercingetorix
-Vercingetorix
"Necessitas non habet legem." -St. Augustine
Sort of a related opinion piece by Dave Winer...
Software and the First Amendment
"There is no difference between code and writing. I think I can prove it. Manila, the content management system that I use, supports macros. When you put text in curly braces, as the page is rendered, the macro is evaluated. Such macros can be embedded in protected speech, ie prose. What goes inside the curly braces is program logic. So if I want First Amendment protection for my code all I have to do is embed it in a Web page."
John S. Rhodes
WebWord.com -- Usability Vortal and News Hub
How to Download YouTube Videos
I think the laws can be written to deal with intent, so anyone who creates something with the *intent* of distributing the source code could be charged.
Ob. Analogy: It is illegal to take a gun and murder someone, but it's *also* illegal to setup a little rube goldberg device so that when the person opens a door, a rope pulls something off a shelf, that lands on the remote, which turns on the tv, which scares the dog, whose leash is attached to the trigger, so that when he runs across the room, the gun goes off. If your intent was the murder, then you will end up in jail.
- Isaac =)
"Hey, baby, I can C right through your shirt!" Sorry, first story I checked today, and the first thing that popped into my head... *g*
Free music from Jack Merlot.
Not to get slashdot in trouble or anything but ...
, 0x36,0x2b,0x6e,0x2e,0x66,0x7b, , 0xd6,0x0b,0x4e,0x0e,0x46,0x9b, , 0x52,0x8f,0xca,0x8a,0xc2,0x1f, , 0xd0,0x01,0x48,0x08,0x40,0x91, , 0x34,0x25,0x6c,0x2c,0x64,0x75, , 0xd4,0x05,0x4c,0x0c,0x44,0x95, , 0x50,0x81,0xc8,0x88,0xc0,0x11, , 0xd2,0x0f,0x4a,0x0a,0x42,0x9f, , 0x56,0x8b,0xce,0x8e,0xc6,0x1b, , 0xb6,0xab,0xee,0xae,0xe6,0xfb, , 0x32,0x2f,0x6a,0x2a,0x62,0x7f, , 0xb0,0xa1,0xe8,0xa8,0xe0,0xf1, , 0x54,0x85,0xcc,0x8c,0xc4,0x15, , 0xb4,0xa5,0xec,0xac,0xe4,0xf5, , 0x30,0x21,0x68,0x28,0x60,0x71, , 0xb2,0xaf,0xea,0xaa,0xe2,0xff
, 0x0b,0x0a,0x0d,0x0c,0x0f,0x0e, , 0x19,0x18,0x1f,0x1e,0x1d,0x1c, , 0x2f,0x2e,0x29,0x28,0x2b,0x2a, , 0x3d,0x3c,0x3b,0x3a,0x39,0x38, , 0x42,0x43,0x44,0x45,0x46,0x47, , 0x50,0x51,0x56,0x57,0x54,0x55, , 0x66,0x67,0x60,0x61,0x62,0x63, , 0x74,0x75,0x72,0x73,0x70,0x71, , 0x99,0x98,0x9f,0x9e,0x9d,0x9c, , 0x8b,0x8a,0x8d,0x8c,0x8f,0x8e, , 0xbd,0xbc,0xbb,0xba,0xb9,0xb8, , 0xaf,0xae,0xa9,0xa8,0xab,0xaa, , 0xd0,0xd1,0xd6,0xd7,0xd4,0xd5, , 0xc2,0xc3,0xc4,0xc5,0xc6,0xc7, , 0xf4,0xf5,0xf2,0xf3,0xf0,0xf1, , 0xe6,0xe7,0xe0,0xe1,0xe2,0xe3
, 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff, , 0x49,0x6d,0x92,0xb6,0xdb,0xff
, 0x50,0xd0,0x30,0xb0,0x70,0xf0, , 0x58,0xd8,0x38,0xb8,0x78,0xf8, , 0x54,0xd4,0x34,0xb4,0x74,0xf4, , 0x5c,0xdc,0x3c,0xbc,0x7c,0xfc, , 0x52,0xd2,0x32,0xb2,0x72,0xf2, , 0x5a,0xda,0x3a,0xba,0x7a,0xfa, , 0x56,0xd6,0x36,0xb6,0x76,0xf6, , 0x5e,0xde,0x3e,0xbe,0x7e,0xfe, , 0x51,0xd1,0x31,0xb1,0x71,0xf1, , 0x59,0xd9,0x39,0xb9,0x79,0xf9, , 0x55,0xd5,0x35,0xb5,0x75,0xf5, , 0x5d,0xdd,0x3d,0xbd,0x7d,0xfd, , 0x53,0xd3,0x33,0xb3,0x73,0xf3, , 0x5b,0xdb,0x3b,0xbb,0x7b,0xfb, , 0x57,0xd7,0x37,0xb7,0x77,0xf7, , 0x5f,0xdf,0x3f,0xbf,0x7f,0xff
1 9);*/ ;
1 9);*/ ;
/*
* 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
#include
#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
0xd3,0x93,0xdb,0x06,0x43,0x03,0x4b,0x96,0xde,0x9e
0x57,0x17,0x5f,0x82,0xc7,0x87,0xcf,0x12,0x5a,0x1a
0xd9,0x99,0xd1,0x00,0x49,0x09,0x41,0x90,0xd8,0x98
0x3d,0x7d,0x35,0x24,0x6d,0x2d,0x65,0x74,0x3c,0x7c
0xdd,0x9d,0xd5,0x04,0x4d,0x0d,0x45,0x94,0xdc,0x9c
0x59,0x19,0x51,0x80,0xc9,0x89,0xc1,0x10,0x58,0x18
0xd7,0x97,0xdf,0x02,0x47,0x07,0x4f,0x92,0xda,0x9a
0x53,0x13,0x5b,0x86,0xc3,0x83,0xcb,0x16,0x5e,0x1e
0xb3,0xf3,0xbb,0xa6,0xe3,0xa3,0xeb,0xf6,0xbe,0xfe
0x37,0x77,0x3f,0x22,0x67,0x27,0x6f,0x72,0x3a,0x7a
0xb9,0xf9,0xb1,0xa0,0xe9,0xa9,0xe1,0xf0,0xb8,0xf8
0x5d,0x1d,0x55,0x84,0xcd,0x8d,0xc5,0x14,0x5c,0x1c
0xbd,0xfd,0xb5,0xa4,0xed,0xad,0xe5,0xf4,0xbc,0xfc
0x39,0x79,0x31,0x20,0x69,0x29,0x61,0x70,0x38,0x78
0xb7,0xf7,0xbf,0xa2,0xe7,0xa7,0xef,0xf2,0xba,0xfa
};
static byte lfsr1_bits0[256]=
{
0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x09,0x08
0x12,0x13,0x10,0x11,0x16,0x17,0x14,0x15,0x1b,0x1a
0x24,0x25,0x26,0x27,0x20,0x21,0x22,0x23,0x2d,0x2c
0x36,0x37,0x34,0x35,0x32,0x33,0x30,0x31,0x3f,0x3e
0x49,0x48,0x4b,0x4a,0x4d,0x4c,0x4f,0x4e,0x40,0x41
0x5b,0x5a,0x59,0x58,0x5f,0x5e,0x5d,0x5c,0x52,0x53
0x6d,0x6c,0x6f,0x6e,0x69,0x68,0x6b,0x6a,0x64,0x65
0x7f,0x7e,0x7d,0x7c,0x7b,0x7a,0x79,0x78,0x76,0x77
0x92,0x93,0x90,0x91,0x96,0x97,0x94,0x95,0x9b,0x9a
0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x89,0x88
0xb6,0xb7,0xb4,0xb5,0xb2,0xb3,0xb0,0xb1,0xbf,0xbe
0xa4,0xa5,0xa6,0xa7,0xa0,0xa1,0xa2,0xa3,0xad,0xac
0xdb,0xda,0xd9,0xd8,0xdf,0xde,0xdd,0xdc,0xd2,0xd3
0xc9,0xc8,0xcb,0xca,0xcd,0xcc,0xcf,0xce,0xc0,0xc1
0xff,0xfe,0xfd,0xfc,0xfb,0xfa,0xf9,0xf8,0xf6,0xf7
0xed,0xec,0xef,0xee,0xe9,0xe8,0xeb,0xea,0xe4,0xe5
};
static byte lfsr1_bits1[512]=
{
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
0x00,0x24,0x49,0x6d,0x92,0xb6,0xdb,0xff,0x00,0x24
};
/* Reverse the order of the bits within a byte.
*/
static byte bit_reverse[256]=
{
0x00,0x80,0x40,0xc0,0x20,0xa0,0x60,0xe0,0x10,0x90
0x08,0x88,0x48,0xc8,0x28,0xa8,0x68,0xe8,0x18,0x98
0x04,0x84,0x44,0xc4,0x24,0xa4,0x64,0xe4,0x14,0x94
0x0c,0x8c,0x4c,0xcc,0x2c,0xac,0x6c,0xec,0x1c,0x9c
0x02,0x82,0x42,0xc2,0x22,0xa2,0x62,0xe2,0x12,0x92
0x0a,0x8a,0x4a,0xca,0x2a,0xaa,0x6a,0xea,0x1a,0x9a
0x06,0x86,0x46,0xc6,0x26,0xa6,0x66,0xe6,0x16,0x96
0x0e,0x8e,0x4e,0xce,0x2e,0xae,0x6e,0xee,0x1e,0x9e
0x01,0x81,0x41,0xc1,0x21,0xa1,0x61,0xe1,0x11,0x91
0x09,0x89,0x49,0xc9,0x29,0xa9,0x69,0xe9,0x19,0x99
0x05,0x85,0x45,0xc5,0x25,0xa5,0x65,0xe5,0x15,0x95
0x0d,0x8d,0x4d,0xcd,0x2d,0xad,0x6d,0xed,0x1d,0x9d
0x03,0x83,0x43,0xc3,0x23,0xa3,0x63,0xe3,0x13,0x93
0x0b,0x8b,0x4b,0xcb,0x2b,0xab,0x6b,0xeb,0x1b,0x9b
0x07,0x87,0x47,0xc7,0x27,0xa7,0x67,0xe7,0x17,0x97
0x0f,0x8f,0x4f,0xcf,0x2f,0xaf,0x6f,0xef,0x1f,0x9f
};
/*
*
* 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] >8)&0xff] >16)&0xff]>24)&0xff];
combined = 0;
for (i = 0; i >1;
lfsr1_lo = ((lfsr1_lo&1)>7)^(lfsr0>>10)^(lfsr0>>11)^(lfsr0>>
o_lfsr0 = (((((((lfsr0>>8)^lfsr0)>>1)^lfsr0)>>3)^lfsr0)>>7)
lfsr0 = (lfsr0>>8)|(o_lfsr0>= 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) >8)&0xff] >16)&0xff]>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)>7)^(lfsr0>>10)^(lfsr0>>11)^(lfsr0>>
o_lfsr0 = (((((((lfsr0>>8)^lfsr0)>>1)^lfsr0)>>3)^lfsr0)>>7)
lfsr0 = (lfsr0>>8)|(o_lfsr0>= 8;
}
}
This Wiki Feeds You TV and Anime - vidwiki.org
I don't think that this is surprising at all. There's the old saying, "In for a penny, in for a pound." If the MPAA is really serious that DeCSS is a threat to their business, they have to be serious about tracking it down in all of its manifestations. Hell, it was the defense that made that point to start out with- they've basically dared the MPAA to do this very thing by bringing up the issue of the tee shirts in court.
If the defense is going to stand up and say, in essence, that it's vital to stop the tee shirts for the injunction to mean anything, it's pretty silly of them to complain when the plaintiff goes ahead and does exactly that. Personally, I think that this is a great thing for the defense. The plaintiff is left in the rather difficult position of either refusing to take all steps necessary to protect themselves, in which case their seriousness has to be questioned, or of grossly overreacting by going after apparently trivial and silly violators. Of course it looks that way because it's true.
IMO, this is a great demonstration of what is really meant by the statement, "Information wants to be free." That's free as in speech, not as in beer. Once you let information out of your tight control, it's out of anyone's control; you can't prevent its unlimited replication.
There's no point in questioning authority if you aren't going to listen to the answers.
I'm just waiting to hear this in the courtroom:
You want answers? /. reader? I have a greater responsibility than you can possibly fathom. You weep for 2600 and you curse the MPAA. You have that luxury. You have the luxury of not knowing what I know: that banning the DeCSS code, while tragic, probably makes people money. And my existence, while grotesque and incomprehensible to you, makes me a hell of a lot of money. You don't want the truth because, deep down in places you don't talk about at parties, you want me in your computer system, you need me on that computer system. We use words like copyright, code, royalty. We use these words as the backbone of defending a an ancient business model. You use them as a punchline. I have neither the time nor the inclination to explain myself to a man who rises and sleeps under the blanket of the very exorbitant prices that I charge and then questions the manner in which I charge them. I would rather you just said "thank you" and went on your way. Otherwise I suggest you pick up a DVD player and start buying movies at forty bucks a pop. Either way, I don't give a damn what you think you are entitled to!
I think I'm entitled--
You want answers?
I want the truth!
You can't handle the truth! The truth is that we live in a world that has source code, and that source code has to be guarded by men with guns. Who's going to do it? You? You Mr.
Our society (the US) is idiotic and selfish. I can't believe we've collectively sunk so low as to allow such ridiculous litigation into the public record. The fact that lawyers can constipate our justice system with such crap only verifies what I've longed feared. We're doomed as a society because we no longer have any brains or spines.
Somebody posted up a wonderful quote from Thomas Jefferson the other day. I'm sorry to say that I can't give credit directly to the person who posted this up, but I think it's absolutely wonderful. As for me, I can't wait to move to Sweden....
Quote follows:
Thomas Jefferson to Isaac McPherson
13 Aug. 1813Writings 13:333--34
It has been pretended by some, (and in England especially,) that inventors have a natural and exclusive right to their inventions, and not merely for their own lives, but inheritable to their heirs. But while it is a moot question whether the origin of any kind of property is derived from nature at all, it would be singular to admit a natural and even an hereditary right to inventors. It is agreed by those who have seriously considered the subject, that no individual has, of natural right, a separate property in an acre of land, for instance. By an universal law, indeed, whatever, whether fixed or movable, belongs to all men equally and in common, is the property for the moment of him who occupies it, but when he relinquishes the occupation, the property goes with it. Stable ownership is the gift of social law, and is given late in the progress of society. It would be curious then, if an idea, the fugitive fermentation of an individual brain, could, of natural right, be claimed in exclusive and stable property. If nature has made any one thing less susceptible than all others of exclusive property, it is the action of the thinking power called an idea, which an individual may exclusively possess as long as he keeps it to himself; but the moment it is divulged, it forces itself into the possession of every one, and the receiver cannot dispossess himself of it. Its peculiar character, too, is that no one possesses the less, because every other possesses the whole of it. He who receives an idea from me, receives instruction himself without lessening mine; as he who lights his taper at mine, receives light without darkening me. That ideas should freely spread from one to another over the globe, for the moral and mutual instruction ofman, and improvement of his condition, seems to have been peculiarly and benevolently designed by nature, when she made them, like fire, expansible over all space, without lessening their density in any point, and like the air in which we breathe, move, and have our physical being, incapable of confinement or exclusive appropriation. Inventions then cannot, in nature, be a subject of property. Society may give an exclusive right to the profits arising from them, as an encouragement to men to pursue ideas which may produce utility, but this may or may not be done, according to the will and convenience of the society, without claim or complaint from anybody. Accordingly, it is a fact, as far as I am informed, that England was, until we copied her, the only country on earth which ever, by a general law, gave a legal right to the exclusive use of an idea. In some other countries it is sometimes done, in a great case, and by a special and personal act, but, generally speaking, other nations have thought that these monopolies produce more embarrassment than advantage to society; and it may be observed that the nations which refuse monopolies of invention, are as fruitful as England in new and useful devices.
From http://www.pgpi.org/pgpi/project/scanning/ :
The heart of the issue is the US
Export Regulations, which classifies
cryptographic software as
munitions(!). Thus you need a
license in order to export PGP from
the USA. However, the Export
Regulations only covers software in
electronic form (e.g. on disks, or via
the Internet). PGP 5.0i, on the other
hand, was compiled from source
code that was printed in a book (well, actually 12
books - over 6000 pages!). The books were exported
from the USA in accordance with the US Export
Regulations, and the pages were then scanned and
OCRed to make the source available in electronic
form.
And this is all coming from the tech culture that has no shared political issues, if you belive Mr Katz.
/. the Copyleft site viewing it?
Perhaps you should have read Mr. Katz more carefully.
He never said we didn't have political issues, he just said that most of 'em weren't about concrete issues like food, clothing, and shelter; they're about more esoteric issues, like speech and freedom. And that we don't do anything substantive about them.
How many of us have actually *DONE* something about this issue? Not buying a damn t-shirt, actually showing up at political fundraisers and asking your Congressman what his position is?
Actually writing a letter to your Senator, not just yet another completely ignored form email?
The biggest political stand most geeks take is changing their fucking signature line, or the background color of their web page.
And most of us won't even do that much; how many people are taking this opportunity to actually BUY one of those t-shirts, not just
--
To remind you the PGP code was published as a book, shipped out of the US, scanned and reentered by volunteers. This is the way US export controls were circumvented.
If the T-shirt case is won by MPAA someone may rise the old Fred Zimmerman case again. And this has much wider implications than we can actually imagine.
disclaimer: I bought one of the T-shirts and I am wearing it from time to timeBaker's Law: Misery no longer loves company. Nowadays it insists on it
http://www.sigsegv.cx/
it's rather hilarious that the overall sentiment on slashdot is that
1 - Spam should be outlawed, while source code is speech.
2 - Music is just bits, and should not afforded any protection, yet again, source code is a constitutional right.
As long as the mentality is so lopsided like that, anyone who looks in to the community will think that everyone is utterly confused.
I can rewrite the quote as, ... even on t-shirts and hidden in image files - all of these would have to be banned because the pictures are so easily retrievable from all of them."
"Someone [said] if the calvin & Hobbes comics were banned, the only way to prevent that knowledge from being transmitted would be to ban it in all its forms
But what if you had Mssr. Watersons (IIRC) permission? Then why would a 3rd party be allowed to ban it? DeCSS is not copyrighted by the MPAA, but they are trying to control distribution of it.
There are cases where this is allowed:
1) Copyright infringement. But only a copyright holder can prosecute this (IANAL)
2) Obscenity. Um... this stuff turns you on???
BTW: I'm mostly paraphrasing from other posts. I have no thoughts of my own...
-- IANAEG - I am not an elder god.
If it is decided that mere source code is illegal, then its propogation via T-shirt print is, sadly, as illegal. There's nothing special about T-Shirts, they're merely another medium.
/. anyway) can identify with. Suddenly it's not "This piece of software is breaking our copyprotection, and is illegal", it's "This T-shirt is breaking our copyprotection, and is therefore illegal". This latter arguement sounds considerably more ludicrous, don't you think? Most people will, and if the judge supports the MPAA on this one, he's going to sound the same, to say nothing of the Congressmen who continue to support this law. And (hopefully) the voters might pay attention, and pick some less ludicrous people in the future... or at least that's what we want the politicians to think, so that they STOP the MPAA.
I'm not sure if you simply missed the point, or if you're attempting to show that T-shirts are no different than electrons on a screen. In either case: the principal difference is that a T-shirt is something this judge (and ALL the American people, excluding the Amish, who probably don't frequent
So if one really wants to afford the plaintiffs the protection that they seek, I think I would only be able to wear my shirt in the privacy of my own home and must not go outdoors with it.
What if you wore a jumper over the t-shirt? Is that a form of steganography? Or would that just be considered smuggling? :)
hmmmm .... I wonder where I'll put it ..... is the judge a prude?
"Exhibit A, your honour!"
Should garner even more press coverage...
Strong data typing is for those with weak minds.
Strong data typing is for those with weak minds.
There is a difference between a subpoena and a summons, the former being what compels testimony from a witness, the latter being what brings a person into a lawsuit as a party.
If we're talking about the New York DeCSS case, which just was tried, then it makes no sense that a new entity could be brought in as a defendant, after trial, especially since the issues surrounding distribution of printed source are quite different than those surrouning compiled object.
On the other hand, this could refer to one of the two other DeCSS cases, the ones in California and Connecticut, respectively, but the article gives no indication.
If anyone does know whether it is a subpoena or a summons, and in which case, please do post, because as a lawyer who has been following the cases, I am having trouble making any logical sense of this.
Also, for what it's worth, export regs on crypto have now significantly been loosened, and it is now legally possible to export "machine readable" crypto code without an explicit license.
There is nothing illegal about writing a free public, source code on T-shirts. Should I be arrested for putting the source code of Quicksort on a T-Shirt. Yes, Quicksort was discovered by C.A.R. Hoare. But by publishing it, Hoare has "given" that knowledge to the public. Just like DeCSS, which as effectively the same status.
This isn't even about their damned DVD's anymore, it's about control. Who the heck is going to buy a T-Shirt just so they can copy the source code into their computer. You can download it for free off the net. People who are buying the t-shirt are making a statement. Either these people want to completely stamp out any thought that they could ever be beaten, or they want to stamp out EVERY COPY EVERYWHERE. Why worry about a freaking t-shirt when you can get it all over the net? These people are really, litterally, making a federal case over their ability to stamp out independant thought.
Eh...
Not mentioned in the story: who is issuing the subpoena, the defense or the prosecution? And exactly what is being subpoened. The shirt? Sales records (in which case will the MPAA SS be kicking in the doors of anyone who bought one)?
Let's say for the sake of argument that the code itself could be banned. How about a program that generated the code (for example a perl script that output the C source when invoked)? How about a program that generated that program? How about a story containing sentences whose first letters contain the source code? I can't conceive of a way that the judge could possibly ban all of the ways in which this knowledge could be represented. The MPAA is trying to command the tides to recede.
Sytax Error - Line 1 - Parameter "boom chakalaka" not recognized.
-
Starsucks
forget one click ordering® - we've got zero click ordering®. www.ridiculopathy.com