What prevents the iOS image from being loaded onto another device?
Apple isn't magic; the code they write to verify device identity isn't going to be the first perfect, unbuggy, unexploitable code written in human history. if(device_udid == terrorist_id) {...} might seem infallible, to you, but the reality is that the device_udid is just SHA1(Wifi MAC + Bluetooth MAC + ECID + Serial). All of those are writable, some via the Baseband and some via physical access. Generating SHA1 collisions is completely feasible for ~$1,000,000 of computing time, which is chump change to nation states.
There is no infallible way for Apple to make an iOS version for one single device.
Edit: And stories like http://abcnews.go.com/Technology/york-da-access-175-iphones-... make it absolutely clear that this is not stoping at a single device.
This is not mysterious. Can the FBI require a software company to subvert their own security guarantees? Should they? Do bank vaults have back doors for the FBI?
That's a bit of a specious argument though – of course, if they produce different software in the future, it could be used again!
If the FBI want their own ability to sign Apple updates, then that's obviously a different situation. But the point you were making – that it's not possible to write software that will run on only one device – is not true in this case.
This is not mysterious. Can the FBI require a software company to subvert their own security guarantees? Should they? Do bank vaults have back doors for the FBI?
I don't really know the right answer.
An earlier comment with more technical detail: https://news.ycombinator.com/item?id=11141499
UDID lock is good enough for tying development builds to specific devices but is not an unbreakable guarantee the software cannot be run on another device.
Yes, if you can do that, then you can flash anything to the phone. When someone shows me that happening, then I'll believe in this technology.
Even then you cannot "flash anything" to the phone. But you can flash a build signed by Apple which hard-codes a UDID check.
For example changing the WiFi or Bluetooth MAC is not locked down and effects the UDID. Because the UDID was never intended to be a way to bypass the device encryption it was not designed with anywhere near the same level of care and sophistication as handling the encryption key itself.
I never suggested the UDID. Please don't ascribe a claim to me that was never made. SHA512 the serial and macs independently. Job done.
It is foolish to assume that the FBI would stop at this special version of iOS, especially given how they have been arguing and fighting to break encryption for over two decades.
edit, on icebraining's interpretation:
That's exactly right - once the difficult part about targeting an individual phone is finished, it's easy to take the iOS signing key and target any device you want.
Clearly it is not, otherwise they would have done this. They did not.
This is what I understood, at least, from the parent's post.
The question is can you change one devices ID to exactly match another. This might require hacking the BPP or finding a SHA1 hash collision, both of which are absolutely possible but not necessarily trivial.
Possible? Maybe, but if it was that simple the FBI could simply change the signing key. It's not, and they can't.