Switching gears a bit (at last), another paper I can't do, censored censorware reports, is one I call:
Code == Speech, or The DMCA As Technical Obscenity
The title is a pun, a multilayered meaning between "technical obscenity" in the sense of being an abomination in the eyes of tech-types, and "technical obscenity" as a (somewhat metaphorical!) type of obscenity law applied to technological speech. This idea was impressive (if that's the word) in the recent Bunner decision in the DVD trade-secret case where the ruling stated "Thus, these trade secrets, ... address matters of purely private concern and not matters of public importance.". Note that's trade-secret law. But I'm trying to express the concept that the determination seems very much like a kind of obscenity test, with the values in that test being applied to technical communications rather than sexual ones.
And make no mistake, it is a speech issue. As I've discussed before:
The ROT13 algorithm explained ("Caesar Cipher"):
1) The decryption algorithm for ROT13 is to take the range of letters from a-z, and for those twenty-six letters, replace the first thirteen of them with the range of letters from n-z and the second thirteen of them with the range of letters from a-m
2) To un-ROT13, do a tr/a-z/n-za-m/ over each character in the file
3) perl -pe 'tr/a-z/n-za-m/;' < infile > outfile
Where did I step over the line, from "speech" to "code"?
Now, the difficulty with this paper is the "shouting to the wind"/"tell it to the judge" problem. As one entry in the vast amounts of pontification on the topic of code, speech, and the DMCA, it won't get read. If I put in a real, relevant example, which might get noticed - such as an unpublished censorware decryption - well, be careful what you wish for, because you might get it (here, getting noticed by the censorware company taking action from the decryption program).
Note a similar thought was done in the "Programmers' & Academics' Amici Brief in NY MPAA DeCSS Case" (which I had something to do with):
While an example of the Perl programming language might look like this:
my ($xor_len) = $key_length{$request} ;
my ($file_key) = substr($cipher_key, 0, $xor_len);
while (read(FILE, $xor_block, $xor_len)) {
$plain_text = $file_key ^ $xor_block;
$plain_text =~ s/+$//;
$plain_text =~ tr/A-Z/a-z/;
print $plain_text,"";
}
}We chose this snippet of Perl for two reasons. Fi rst, when compared to the Visual BASIC, it is apparent that more symbolic characters and fewer natural-looking words are used, illustrating the variety of programming languages. Though it looks less like a natural text language, its meaning is as clear to those who read Perl as is this sentence to those who read English. ...
The second reason is the more thematic. The snippet is from a program which decrypts the encrypted list of URLs blocked by the filtering software application known as X-Stop, the use of which in a public library was found to be unconstitutional in Mainstream Loudoun v. Board of Trustees, 24 F.Supp.2d 552 (E.D.Va 1998). In part by showing that X-Stop blocked valuable Internet speech, Plaintiffs prevailed, but on the face of 17 U.S.C. SS 1201(a)(1), such a decoder might be unlawful as a circumvention measure. In October 2000, the Librarian of Congress completed the first rulemaking mandated by §1201(a)(1). One exemption was for "[c]ompilations consisting of lists of websites blocked by filtering software applications." 37 CFR Part 201. If the LOC rulemaking now legitimizes the use of a program such as the X-stop decoder to compile such lists, it makes no sense under any theory of copyright law that §1201(a)(2) proscribes the distribution of such a program, but that is the effect of §1201(a)(2), the section at issue in this action.
Note "such a decoder might be unlawful as a circumvention measure". I don't want to play Russian-Roulette-plus-snipers these days to find out :-(
By Seth Finkelstein | posted in censorware , legal , memoirs | on October 02, 2003 11:57 PM (Infothought permalink) | Followups