Computer code as free speech is a relatively new legal concept but has a complicated history. Marketplace’s Kimberly Adams spoke with technology lawyer Kendra Albert, a clinical instructor at Harvard Law School’s Cyberlaw Clinic, about the history of code as protected expression.
The following is an edited transcript of their conversation.
Kendra Albert: The seminal case on this is the 1995 case involving a cryptographer named Daniel Bernstein, who sued the United States government for restrictions called export controls on encryption. And at the time, the United States made it illegal to export cryptography. And it was regulated actually as a munition, like a weapon. And what he said was that the U.S. government was making it impossible for him to share his academic work on cryptography with colleagues in other countries. The district court and the 9th Circuit both agreed that there was expressive, important, you know, First Amendment value in the speech that he wanted to get out there in the world and his scientific ideas and the code that sort of proved that he could do what he said he wanted to do.
Kimberly Adams: How important has that decision been for coding languages and the development of technology since then?
Albert: So I think that it is very important, especially for encryption and online security. I think in some ways, the case represents, I think, also a moment in which the United States government’s approach to certain kinds of technological regulation change quite significantly. I don’t want to suggest it was a foregone conclusion. But I think that the reality was that the position that code was a form of expression is in fact supported by a long history of First Amendment law. And that it, you know, is very consistent with how we see the First Amendment interpreted across a variety of contexts.
Adams: I think a lot of people, who maybe aren’t involved in coding or even thinking about the back end of how our computers run and how the Internet runs, don’t necessarily think of code as a language that could be protected as speech.
Albert: Yeah. You know, in the case of something like Daniel Bernstein, in cryptography it was sort of this was a way of expressing the idea that he had presented in his paper, right, showing how you would do the thing and sort of laying it out in a level of sort of detail and specificity. You know, there’s all kinds of even less, sort of, functional, maybe more expressive things people do with computer code. I have a friend, actually, who I think wrote a marriage proposal in Perl. But it doesn’t necessarily mean, like, oh my gosh, no regulation possible. It just means that the fact that something is source code does not mean that it’s outside the realm of First Amendment protection.
Adams: What are some of the differences when you’re thinking about free speech and expression, when you’re expressing yourself in code, versus expressing yourself in writing, or speaking in English or Spanish or French or something like that?
Albert: So one of the questions courts ask is whether a regulation or legislation or a government action is specifically targeting speech, or whether the restrictions on speech are incidental, but not the overall intention. And that’s actually one of the places you see kind of a lot of these difficulties around code as speech. The nature of many kinds of regulation may mean that they restrict code because of the things that particular forms of software code do in the world. But they weren’t specifically meant to restrict the expressive conduct. And courts end up then having to sort of go through a test that was originally developed in the context of someone burning a draft card to figure out — OK, is this regulation, is the burden that it has on this form of expressive speech so significant that we can’t regulate in this way? Or is this just not the focus, and the fact that there are some restrictions on speech as a result of the government attempting to regulate something else should not be the focus of the analysis?
Adams: Congress and federal agencies as well as some states are looking to tighten regulations around cryptocurrencies and blockchain technology. What role do you think the idea of code as speech will play in this environment moving forward?
Albert: The reality is that the First Amendment is not a total bar to regulation of speech. It requires the government meet a higher standard for regulating certain kinds of speech. That runs, to some extent, in conflict with how people imagine what “code is speech” does as sort of a total restriction on the regulation of software, of code, because it has expressive content. It just means that we treat code similarly to how we treat other forms of expression, and that the government can regulate them under certain circumstances.
Related links: More insight from Kimberly Adams
That case Albert was talking about — Bernstein v. United States Department of State — is way more detailed than we can get into, so feel free to read more about it here.
As Albert mentioned, the First Amendment doesn’t provide blanket protections to code as speech. There are nuances to how this can be applied in court, just like any other kind of speech.
For example, in the case Universal City Studios v. Corley, Universal sued programmer Eric Corley for reverse engineering a decryption code used in DVDs, then posting it online.
The court sided with Universal, deciding that while the decryption code itself was covered under free speech, the act of posting it violated the Digital Millennium Copyright Act.
Another, more serious example involves the aftermath of a mass shooting in San Bernardino, California, in 2015, when the FBI gave Apple a court order to write code that would unlock the shooter’s iPhone.
Apple fought back, arguing that compelling the company to write code would violate its First Amendment rights. The FBI and the government later dropped the request because the FBI figured out a way into the phone without Apple’s help.