That's quite a resume. Ozzie has a new proposal out for a secure universal backdoor to allow Law Enforcement to unlock iPhones. It's an excellent example of the way that great software engineers are spectacular failures as security engineers.
The Geek With Guns has background on how it's supposed to work:
Well, so what's the problem? After all, the keys used to sign software are incredibly sensitive - if someone gains access to your keys they could sign all sorts of malware which people's computers would recognize as coming from you. So keeping these keys on the same secure system solves the problem, right? Well, no:Dubbed “Clear,” Ozzie’s idea was first detailed Wednesday in an article published in Wired and described in general terms last month.[…]
- Apple and other manufacturers would generate a cryptographic keypair and would install the public key on every device and keep the private key in the same type of ultra-secure storage vault it uses to safeguard code-signing keys.
- The public key on the phone would be used to encrypt the PIN users set to unlock their devices. This encrypted PIN would then be stored on the device.
- In cases where “exceptional access” is justified, law enforcement officials would first obtain a search warrant that would allow them to place a device they have physical access over into some sort of recovery mode. This mode would (a) display the encrypted PIN and (b) effectively brick the phone in a way that would permanently prevent it from being used further or from data on it being erased.
- Law enforcement officials would send the encrypted PIN to the manufacturer. Once the manufacturer is certain the warrant is valid, it would use the private key stored in its secure vault to decrypt the PIN and provide it to the law enforcement officials.
Yes, Apple has a vault where they've successfully protected important keys. No, it doesn't mean this vault scales. The more people and the more often you have to touch the vault, the less secure it becomes. We are talking thousands of requests per day from 100,000 different law enforcement agencies around the world. We are unlikely to protect this against incompetence and mistakes. We are definitely unable to secure this against deliberate attack.
Ozzie makes an assumption that makes sense only if you don't understand operational procedure. Yes, we've secured the keys under Scenario A. Ozzie spends absolutely no time at all showing how his Scenario B is similar to Scenario A. Quite frankly, it's not even in the same ballpark. A procedure that is performed a few dozen times a year can be handled quite well by a small group of highly security savvy people; the same procedure performed thousands of times a year simply cannot be. I myself have been part of these teams, and there is a very high level of awareness of the implications of any screwup, and so team members need joint simultaneous access to the system to make it work. Think of it as sort of like ICMBs where there are two launch keys that have to be turned simultaneously, with the locks on opposite sides of the room. The Launch Operators have to work together to make it happen.
That works for a few launches, but couldn't possibly work for a dozen a day or more, which is what Law Enforcement would want. The system will collapse - or be intentionally subverted - a thousand different ways:
We have a mathematically pure encryption algorithm called the "One Time Pad". It can't ever be broken, provably so with mathematics.Nope. This isn't about hardware or software, it's about wetware (sometimes called "peopleware"). People, as we all know, are prone to make mistakes or to be corruptible. And this is where the Geek With Guns makes his point:
It's also perfectly useless, as it's not something humans can use. That's why we use AES, which is vastly less secure (anything you encrypt today can probably be decrypted in 100 years). AES can be used by humans whereas One Time Pads cannot be. (I learned the fallacy of One Time Pad's on my grandfather's knee -- he was a WW II codebreaker who broke German messages trying to futz with One Time Pads).
The same is true with Ozzie's scheme. It focuses on the mathematical model but ignores the human element. We already know how to solve the mathematical problem in a hundred different ways. The part we don't know how to secure is the human element.
How do we know the law enforcement person is who they say they are? How do we know the "trusted Apple employee" can't be bribed? How can the law enforcement agent communicate securely with the Apple employee?
You think these things are theoretical, but they aren't.
What’s noteworthy in regards to this post is the fact that nowhere does the Fourth Amendment state that measures have to be taken to make information easily accessible to the government once a warrant is issued. This omission is noteworthy because a lot of the political debates revolving around computer security are argued as if the Fourth Amendment contains or implies such languageWe are often asked "Why do you need an AR-15?" The question implies that we need to justify ourselves to some government authority and get permission before we can do something. You could easily rephrase the question to "Why do you need a phone that keeps your secrets from everyone"*
The answer to both questions, of course, is identical. Because fuck you is why.
* Assuming you can get one of these today. Which you can't. But while Law Enforcement could indeed collect all your data from the companies who collect it, it would be a royal pain in the behind for them to go to Apple, Google, Facebook, Twitter, and all the other companies with warrants. Which is why they want backdoors.