架構和技術細節
一個完整的基於微軟產品並啟用了可信計算的系統不僅包含由微軟開發的軟體組件,還包含可信計算組開發的硬體組件。NGSCB引入的主要功能嚴重依賴於特殊的硬體,所以在2004年前出售的個人電腦上不能運作。
根據當前可信計算的規範,NGSCB有兩個硬體組件:提供安全密鑰存儲、安全密碼協處理器的
可信平台模組(TPM)和具有禁止記憶體特性的
中央處理器(CPU)。以及兩個軟體組件:Nexus——作業系統的安全核心,Nexus Computing Agents (NCAs)——啟用NGSCB的應用程式內部的可信模組。
安全存儲與驗證
在生產製造階段,密鑰就被產生並存儲在TPM中。此密鑰永遠都不會被傳送給其他的組件,而且TPM被設計成無論是採取
逆向工程還是其他任何方式都極難取出被存儲的密鑰,即使是密鑰的所有者。應用程式可以把用此密鑰加密過的數據傳送給TPM來進行解密,但是TPM只會在一些嚴格的條件下才這樣做。特別地,解密後的數據只會傳遞給被證明可信的應用程式,而且只存儲在受禁止的記憶體中,其他應用程式和作業系統都不能訪問。儘管TPM只能保障一條密鑰的安全存儲,但是從廣義上來講任何數據的安全存儲都是可能的,因為用安全存放的密鑰加密的數據只能用它來解密。
TPM也可以基於隱藏起來的密鑰產生加密簽名,這一簽名可以被用戶和任何第三方所證實,因此能夠用於遠程驗證計算機處於安全狀態。
禁止記憶體
NGSCB還依賴於CPU提供的禁止記憶體特性。位於禁止記憶體中的數據只能被屬於它的應用程式訪問,任何其他應用程式和作業系統都不可以。TPM提供驗證功能用於向受信任的應用程式證實其確實運行在禁止記憶體中,因此任何人,也包括所有者,試圖欺騙受信任的應用程式讓其運行在禁止記憶體之外都是極為困難的。
應用程式
啟用NGSCB的應用程式將分區為兩個截然不同的區塊:NCA——可以訪問有限
應用程式接口(API)的可信模組,以及可以訪問全部
Windows API的不可信部分。涉及到NGSCB功能的代碼必須位於NCA之中。
進行這種分區的原因是,Windows API已經開發了很多年而變得極為複雜,審查安全漏洞是非常困難的。為了實現最大程度的安全性,要求可信代碼只能使用一小部分已經過仔細審查的API。在安全性不是最重要的情況下,全部的API都可以使用。
用途
當前,NGSCB被設定成為一個用於創建可信計算應用程式的框架,因此有著廣泛的潛在套用領域,不過從用戶的角度來說它根本沒有提供任何功能。
數字著作權管理
利用
可信平台模組(TPM)提供的驗證、禁止記憶體和加密特性,可以開發出一種可靠的
數字著作權管理(DRM)形式。評論家們指責道,儘管NGSCB本身不提供DRM功能,但是研發它的主要動機就是DRM。
通過對受到DRM保護的檔案進行加密並且只允許可信應用程式得到解密密鑰,就能實現數字著作權管理。複製保護和眾多的類似功能,只要想像得到都可以實現。比如,可以創建一種只能在一個計算機上打開的檔案,或者是只能在一個組織內傳閱的檔案,甚至是一個只能閱讀三次的檔案。受DRM保護的檔案和不受保護的檔案一樣可以輕鬆複製和閱讀,但是在未得到授權的地方進行解密是極其困難的,使其變得沒有用處。
網路安全
在公司和教育機構的網路環境中,NGSCB提供了一個很有吸引力的特性:無論是對
工作站軟體還是硬體,沒有得到授權的修改都可以安全地避免。無法證明自己合法的工作站在接受檢查期間對網路服務的部分或全部訪問會被自動阻止。
多玩家遊戲
NGSCB提供的驗證和禁止記憶體功能有希望被套用於阻止大多數種類的網路遊戲作弊行為。在各種多人遊戲中行行色色的作弊方式十分普遍,損害了守法玩家在遊戲中的娛樂性。
常見的作弊手段有:
批評
NGSCB和可信計算可能被蓄意濫用以鎖定某些用戶,使他們無法使用某些檔案、產品和服務,例如,阻止用戶使用競爭對手的產品,這有可能導致嚴重的用戶鎖定。這類似於當前很多企業都不得不購買使用
Microsoft Word,以便和使用這個軟體的生意夥伴兼容。這個問題被
OpenOffice.org這類產品部分解決,它提供對微軟Office檔案格式的有限支持。使用NGSCB之後,如果Microsoft Word將生成的文檔加密了,任何其他軟體即便有能力解讀底層檔案格式也無法解密。
NGSCB和可信計算無益於解決當前大多數的安全問題,比如
計算機病毒和
木馬。儘管如此,微軟在過去曾宣稱為了抗擊未來病毒爆發對Microsoft Windows用戶造成的威脅,NGSCB不可或缺。當前微軟不再聲稱NGSCB可以解決這些病毒問題了。
可行性
最初公布的時候,NBSCB在預想之中將成為Windows作業系統下一個主要版本——
Windows Vista的一部分。然而,2004年五月的時候有報導稱微軟擱置了NGSCB項目,微軟很快召開新聞發布會進行了否定,宣稱他們正在重啟計畫。Windows Vista發布很久之後NGSCB的主要特性才有可能實現。不過,Vista包含了
BitLocker,可以利用
可信平台模組晶片來進行安全啟動和全分區加密。很多採用Intel Core 2 Duo處理器或者是使用AM2接口的AMD Athlon 64處理器的系統都已經集成了TPM。
命名歷史
微軟最初公布NGSCB技術的時候使用的代號是Palladium,指的是保衛
特洛伊城安全的守護神器。開發用名是“Next-Generation Secure Computing Base”,就像
.NET的開發用名是“Next-Generation Windows Services”。2006年初,微軟將自己的NGSCB團隊更名為
System Integrity Team。