Apple Fingerprints, Keychain: Why Randomness Matters
This week, Apple's announcement of the new iPhone 5S with an integrated biometric fingerprint reader for device access has got a lot of attention. Instead of requiring users to type a password to get access to their devices, the fingerprint reader, dubbed "Touch ID" is the password.
I've been using biometric devices for authentication for a long time, and the sad reality is that in large-scale deployments, they often fail for a number of reasons. I see Touch ID as a convenience and usability feature, rather than as a new security feature.
All fingerprint readers share a common flaw, and Apple's Touch ID is no different. At the core of the solution is the fingerprint, which is a static, non-changing form of identification—and that's the problem. Anything that doesn't change can be copied or pilfered. Sometimes, it's just a matter of time.
The fingerprint—whether stored as an image or in some exotic file format—is still something that is stored. Sure, Apple (and every other biometric authentication vendor) does the best they can to protect that image storage, but it's still something that must be saved, and it doesn't change.
A best practice that security professionals have long advocated is using rotating passwords on a regular basis. The idea is that even if one password is hacked or stolen, you're updating the password regularly, which will limit the risk. You can't change your fingerprint. If that information is hacked somehow, you can't simply change it.
I'm also a big advocate of two-factor authentication schemes. The basic idea behind two-factor authentication is that, in addition to the password, there is also a random token (or password) that is generated on a per-access basis. A single fingerprint swipe does not have that same randomness, and it doesn't have two-layers of authentication. Though I suppose if Apple really wanted to, it could pair Touch ID with its own two-factor authentication system, which in fact would make the system more secure.
Touch ID is only on the iPhone 5S, and it's applicability to apps beyond those that Apple controls is limited. Microsoft tried a similar approach eight years ago, and it too was tied to only Microsoft's own software. That effort (mostly) failed. I suspect that Touch ID will suffer a similar fate because it, too, is far too limited. It is an easier way for users to access their device, but just don't think of it as a be-all security regimen.
With all the hoopla around Touch ID, not enough focus has been placed on Apple's new iCloud Keychain, which is a pivotal security component in the upcoming iOS 7 release.
The basic idea behind the iCloud Keychain is that the Apple iCloud service will be able to store and remember usernames and password information. All that information with be secured with 256-bit AES encryption.
In Apple's initial release about the iCloud Keychain features, they also included mention of a password generator capability.
"Every time you create an account, you can have Safari generate a unique, hard‑to‑guess password. And remember it for you," Apple's iOS 7 features page states.
I like randomness. It's a key part of security. Things that are not random—like fingerprints—are interesting for criminal investigations and ease-of-use applications and less so for functional IT security.
Sean Michael Kerner is a senior editor at eWEEK and InternetNews.com. Follow him on Twitter @TechJournalist.