從 Secure Boot 電腦「越獄」
對組裝電腦有興趣的朋友,都會聽過所謂的 Secure Boot 。這是在電腦啟動時檢查作業系統數位簽章的機制,目的是防止作業系統的內容被惡意竄改。每台預載 Windows 8 的 PC ,都必然內置了支援 Secure Boot 的 BIOS,但其「副作用」就是令一些數位簽章與 Windows 不一樣的作業系統無法使用。
Secure Boot 其實是 BIOS 新規格 UEFI (Unified Extensible Firmware Interface) 的一部分,具體的做法是在負責載入作業系統的 Boot Loader 中,預先寫入利用私人金鑰生成的數位簽章,當電腦啟動時,UEFI韌體會利用公共金鑰還原出數位簽章,並與Boot Loader的作比對。當兩者的值相同時,便表示作業系統的內容沒有被竄改, Boot Loader 會繼續載入作業系統。如果兩者的值不一致, Boot Loader 便會停止載入作業系統,並顯示警告訊息。
Secure Boot 的設計的確可以令作業系統更安全,但在絕大部分電腦在出廠時都預載了 Windows 的今天,現時被 UEFI 認可為「安全」的,就只有由微軟提供的數位簽章。事實上微軟利用此等手段排除對手也不是第一次,早在2002年,微軟就已經提倡所謂的 Trustworthy Computing ,嘗試利用 NGSCB (Next-Generation Secure Computing Base),限制只有經過微軟認可的「安全」應用程式,才可在 Windows 下執行,但最後被認為是壟斷市場的工具而胎死腹中。10 年過去了,今天的 Secure Boot 其實是 NGSCB 「借屍還魂」的結果。