UEFI secure booting (part 2)
Sep. 23rd, 2011 07:57 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Updated: Three things happened to defuse this situation:
As a result, the worst case scenario did not come to pass and it's still possible for users to install Linux on their systems.
Original content follows:
Microsoft have responded to suggestions that Windows 8 may make it difficult to boot alternative operating systems. What's interesting is that at no point do they contradict anything I've said. As things stand, Windows 8 certified systems will make it either more difficult or impossible to install alternative operating systems. But let's have some more background.
We became aware of this issue in early August. Since then, we at Red Hat have been discussing the problem with other Linux vendors, hardware vendors and BIOS vendors. We've been making sure that we understood the ramifications of the policy in order to avoid saying anything that wasn't backed up by facts. These are the facts:
Microsoft have a dominant position in the desktop operating system market. Despite Apple's huge comeback over the past decade, their worldwide share of the desktop market is below 5%. Linux is far below that. Microsoft own well over 90% of the market. Competition in that market is tough, and vendors will take every break they can get. That includes the Windows logo program, in which Microsoft give incentives to vendors to sell hardware that meets their certification requirements. Vendors who choose not to follow the certification requirements will be at a disadvantage in the marketplace. So while it's up to vendors to choose whether or not to follow the certification requirements, Microsoft's dominant position means that they'd be losing sales by doing so.
Why is this a problem? Because there's no central certification authority for UEFI signing keys. Microsoft can require that hardware vendors include their keys. Their competition can't. A system that ships with Microsoft's signing keys and no others will be unable to perform secure boot of any operating system other than Microsoft's. No other vendor has the same position of power over the hardware vendors. Red Hat is unable to ensure that every OEM carries their signing key. Nor is Canonical. Nor is Nvidia, or AMD or any other PC component manufacturer. Microsoft's influence here is greater than even Intel's.
What does this mean for the end user? Microsoft claim that the customer is in control of their PC. That's true, if by "customer" they mean "hardware manufacturer". The end user is not guaranteed the ability to install extra signing keys in order to securely boot the operating system of their choice. The end user is not guaranteed the ability to disable this functionality. The end user is not guaranteed that their system will include the signing keys that would be required for them to swap their graphics card for one from another vendor, or replace their network card and still be able to netboot, or install a newer SATA controller and have it recognise their hard drive in the firmware. The end user is no longer in control of their PC.
If Microsoft were serious about giving the end user control, they'd be mandating that systems ship without any keys installed. The user would then have the ability to make an informed and conscious decision to limit the flexibility of their system and install the keys. The user would be told what they'd be gaining and what they'd be giving up.
The final irony? If the user has no control over the installed keys, the user has no way to indicate that they don't trust Microsoft products. They can prevent their system booting malware. They can prevent their system booting Red Hat, Ubuntu, FreeBSD, OS X or any other operating system. But they can't prevent their system from running Windows 8.
Microsoft's rebuttal is entirely factually accurate. But it's also misleading. The truth is that Microsoft's move removes control from the end user and places it in the hands of Microsoft and the hardware vendors. The truth is that it makes it more difficult to run anything other than Windows. The truth is that UEFI secure boot is a valuable and worthwhile feature that Microsoft are misusing to gain tighter control over the market. And the truth is that Microsoft haven't even attempted to argue otherwise.
- Microsoft mandated that it be possible to disable Secure Boot on any Windows certified systems
- Microsoft mandated that it be possible for the user to replace the original Secure Boot keys on any Windows certified systems
- Microsoft were willing to sign alternative OS bootloaders with their signing keys
As a result, the worst case scenario did not come to pass and it's still possible for users to install Linux on their systems.
Original content follows:
Microsoft have responded to suggestions that Windows 8 may make it difficult to boot alternative operating systems. What's interesting is that at no point do they contradict anything I've said. As things stand, Windows 8 certified systems will make it either more difficult or impossible to install alternative operating systems. But let's have some more background.
We became aware of this issue in early August. Since then, we at Red Hat have been discussing the problem with other Linux vendors, hardware vendors and BIOS vendors. We've been making sure that we understood the ramifications of the policy in order to avoid saying anything that wasn't backed up by facts. These are the facts:
- Windows 8 certification requires that hardware ship with UEFI secure boot enabled.
- Windows 8 certification does not require that the user be able to disable UEFI secure boot, and we've already been informed by hardware vendors that some hardware will not have this option.
- Windows 8 certification does not require that the system ship with any keys other than Microsoft's.
- A system that ships with UEFI secure boot enabled and only includes Microsoft's signing keys will only securely boot Microsoft operating systems.
Microsoft have a dominant position in the desktop operating system market. Despite Apple's huge comeback over the past decade, their worldwide share of the desktop market is below 5%. Linux is far below that. Microsoft own well over 90% of the market. Competition in that market is tough, and vendors will take every break they can get. That includes the Windows logo program, in which Microsoft give incentives to vendors to sell hardware that meets their certification requirements. Vendors who choose not to follow the certification requirements will be at a disadvantage in the marketplace. So while it's up to vendors to choose whether or not to follow the certification requirements, Microsoft's dominant position means that they'd be losing sales by doing so.
Why is this a problem? Because there's no central certification authority for UEFI signing keys. Microsoft can require that hardware vendors include their keys. Their competition can't. A system that ships with Microsoft's signing keys and no others will be unable to perform secure boot of any operating system other than Microsoft's. No other vendor has the same position of power over the hardware vendors. Red Hat is unable to ensure that every OEM carries their signing key. Nor is Canonical. Nor is Nvidia, or AMD or any other PC component manufacturer. Microsoft's influence here is greater than even Intel's.
What does this mean for the end user? Microsoft claim that the customer is in control of their PC. That's true, if by "customer" they mean "hardware manufacturer". The end user is not guaranteed the ability to install extra signing keys in order to securely boot the operating system of their choice. The end user is not guaranteed the ability to disable this functionality. The end user is not guaranteed that their system will include the signing keys that would be required for them to swap their graphics card for one from another vendor, or replace their network card and still be able to netboot, or install a newer SATA controller and have it recognise their hard drive in the firmware. The end user is no longer in control of their PC.
If Microsoft were serious about giving the end user control, they'd be mandating that systems ship without any keys installed. The user would then have the ability to make an informed and conscious decision to limit the flexibility of their system and install the keys. The user would be told what they'd be gaining and what they'd be giving up.
The final irony? If the user has no control over the installed keys, the user has no way to indicate that they don't trust Microsoft products. They can prevent their system booting malware. They can prevent their system booting Red Hat, Ubuntu, FreeBSD, OS X or any other operating system. But they can't prevent their system from running Windows 8.
Microsoft's rebuttal is entirely factually accurate. But it's also misleading. The truth is that Microsoft's move removes control from the end user and places it in the hands of Microsoft and the hardware vendors. The truth is that it makes it more difficult to run anything other than Windows. The truth is that UEFI secure boot is a valuable and worthwhile feature that Microsoft are misusing to gain tighter control over the market. And the truth is that Microsoft haven't even attempted to argue otherwise.
Appealing to the wrong authority
Date: 2011-09-23 11:30 pm (UTC)There's a problem. MS are in-scope to define the hardware features necessary to their own software. They would be out of scope to mandate even one iota more than that. Imho, a healthy market does not want MS (or any other vendor) mandating the set of keys which must be installed, even if 'the mandated set of keys' == 'no keys'. Similarly, MS should not be choosing the UEFI featureset delivered. Why should such this power be ceded to Microsoft? Answer - it should not. MS should only say which features are necessary to get its own products running. OEMs can deliver those features if they want MS software to work, but beyond that, no OEM should be taking its marching orders from MS.
There needs to be some other authority which provides mandates for things within this higher scope. Right now that authority is "the market" - but apparently you have little confidence that the market will demand the sort of openness you want to see. So I suppose you should start lobbying governments. Don't lobby MS to flex its muscles for you, because that cedes future power to them, which you might not want them to have.
Re: Appealing to the wrong authority
Date: 2011-09-24 06:27 pm (UTC)You are right, we don't want MS, or any other vendor including OEMs for that matter, mandating what keys go on a PC. The market wants for OEMs to give complete control of a PC to the purchaser/user. Isn't that what users want, to use their purchased PC any way they choose?Many don't trust the OEMS just as much as they don't trust any other software vendor, especially MS since it has a well know recorded history in monopolizing and controlling the market.
Re: Appealing to the wrong authority
Date: 2011-09-25 05:37 am (UTC)Microsoft cannot charge an OEM for Windows on PCs that don't ship with Windows.
That being said, Microsoft does sell them bulk-discount Windows licenses. The more PCs they sell with Windows, the cheaper each license is for them. It is in the OEMs best interest to attempt to ship as many Windows licenses as possible.
Re: Appealing to the wrong authority
Date: 2011-09-25 05:01 pm (UTC)Why not OEMs just ship without any OS installed? It's cheaper for the OEMs too. Let the user decide what OS to install into his newly-purchased PC (and let him do the installation). There will be those who still insist on MS, they can go to MS's website and purchase for themselves a license (without involving OEMs). I specifically told my PC vendor to ship without any OS.
Re: Appealing to the wrong authority
Date: 2011-09-26 01:10 am (UTC)Two reasons. First, because the cost of buying Windows after the event is significantly higher than buying it with a machine, so if a user is offered a Windows-less machine for £400 or one with Windows 7 for £420, and they could possibly need Windows in the future, then it makes much more sense to buy the second machine than to pay £150 for Retail windows.
Secondly and relatedly, the price of Windows on new computers is subsidized by the crapware on there - as well as paying a heavily discounted unit rate for the OS, companies like Dell and HP are paid to include various demo apps - such as 3-month demos of antivirus apps - by the app vendors. Why throw away that money?
Re: Appealing to the wrong authority
Date: 2011-09-26 08:38 am (UTC)- users expect a working system out of the box
- 99% of users are going to install Windows anyway
Re: Appealing to the wrong authority
Date: 2011-09-27 11:26 am (UTC)- Most users can't install Windows themselves.
Despite the prowess that we all have that causes us to believe that an OS install is no big deal, fact is that most people wouldn't even know where to begin to install an OS.
Re: Appealing to the wrong authority
Date: 2011-09-27 11:54 am (UTC)1) MS does not have any contract with any OEM to, as you say "deliver no PC without an OS/Windows on it." That practice was outlawed (for MS) a decade ago.
2) You say "When Windows 8 starts shipping, the UEFI on all OEM PCs, as mandated by Microsoft, will require a CA key to install Linux. Practically speaking, the bottom line is, MS is indirectly but effectively preventing Linux from being installed on any PC that comes with Windows 8." This statement appears to hinge on the unstated assumptions that only a Win8 key can be loaded into the UEFI config, and additionally that the UEFI will be configured such that the system owner cannot add keys or shut off the secure boot function. None of these assumptions make much sense. UEFI easily supports both multiple keys, and the ability to turn off the secure boot function.
Since it is to any vendor's benefit to make every system appeal to as many buyers as possible, it's quite likely that OEMs will do what they can to not lockout other operating systems. Why would they leave money on the table when it is very easy to include an off switch (software or hardware) or to add signing keys from any other OS maker who deigns to provide them?