Can the Apple code be misused?
This post will respond to the tweet by Orin Kerr:
Tech help: What are the best responses to DOJ claims in new Apple/FBI brief re whether code could be misused? Thks. pic.twitter.com/V08EcV9Rev— Orin Kerr (@OrinKerr) March 11, 2016
The basic flaw in this picture is jailbreaks. This is a process of finding some hack that gets around Apple’s “signing” security layer. Jailbreaks are popular in the user community, especially China, when people want to run software not approved by Apple.
Each new version of iOS requires the discovery of some new hack to enable jailbreaking. Hacking teams compete to see who can ship a new jailbreak to users, and other companies sell jailbreaks to intelligence agencies. Once jailbroken, the signing is bypassed, as is the second technique of locking the software specifically to Farook’s phone.
Details are more complicated than this. Each jailbreak is different, and many won’t allow this secret Apple software to be run. Some will. The point is simply that that the prevalence of jailbreaks makes the leakage of these new secrets a serious concern for Apple, one that cannot be fully protected by signing and locking to Farook’s phone.
A more important flaw in this reasoning is the creation of the source code itself. This is the human readable form of the code written by the Apple engineers. This will later be compiled into “binary code” then signed. It’s at the source code stage that Apple is most in danger of losing secrets.
Let’s assume that Apple is infiltrated by spies from the NSA and the Chinese. Some secrets can still be kept, such as the signing keys for the software. Other secrets cannot be kept, such as source code. It’s likely the NSA and/or Chinese have stolen Apple’s source code multiple times. Indeed, most of the source is public anyway (the Darwin operating system, Webkit, etc.). It’s not something Apple is too concerned about — as long as the source doesn’t get published.
When Apple writes this specific tool for the FBI, it’ll be very hard to keep that source out of the hands of such spies. It’s possible to keep it secret, but only through burdonsome heroic efforts on Apple’s part that certainly weren’t part of its initial estimate.
More important than the source code, though, are the ideas. Code is expressive speech that communicates ideas. Even when engineers forget the details of source code, they can still retain these ideas. Years later, they can recall those ideas and use them. I give a real example of this in my previous post on expressiveness of code. Apple cannot contain these ideas. The engineers in question, after building the code, can immediately quit Apple and got to to work for Chinese jailbreak companies or American defense contractors for twice the salary. And it’s completely legal.
It’s like Hollywood puts together a team to develop a movie. In the end, they decide not to move forward with the project, shutting it down. The employees then go off to different companies, taking those ideas with them, using them in unrelated movie projects. That’s the story told in the award-winning documentary Jodorowsky’s Dune, which ties that production to other unrelated movies, like Alien, Star Wars, and Terminator.
Orin goes onto ask:
@ErrataRob Given that it only takes a few days to write the source code, isn’t that pretty much true now?— Orin Kerr (@OrinKerr) March 11, 2016
It will likely take more than a few days to write the code. The FBI misrepresents the task as consisting of only a few lines of code. But Apple estimates a much larger project. Though to be fair, some of that is testing, packaging, and documentation unrelated to the amount of code written.
The task will likely require different skills from multiple engineers, rather than being the output of a single engineer. That’s because it’s possible no single engineer has all the necessary skills. However, all the engineers involved will still walk away with the entire picture, able to recreate the work on their own when working for the Chinese or Booz-Allen.

