TPM的細(xì)節(jié)
TPM芯片包含CPU、RAM和閃存,幾乎是一個(gè)完整的電腦。下面,我們將為大家介紹該芯片的構(gòu)造和TPM芯片如何確保Windows啟動(dòng)的安全。
芯片架構(gòu)分解
TPM芯片有一個(gè)CPU和一個(gè)易失性存儲(chǔ)器(RAM)和非易失性存儲(chǔ)器(閃存)。閃存中保存種子等,種子是用于輸入到加密算法中的大隨機(jī)數(shù),它們?cè)谶\(yùn)算單元進(jìn)行處理,嚴(yán)格區(qū)分為對(duì)稱、不對(duì)稱和散列,生成器產(chǎn)生大量的隨機(jī)數(shù),這是安全加密方法的基礎(chǔ)。執(zhí)行單元?jiǎng)t負(fù)責(zé)測(cè)試密鑰及芯片的初始化。
TPM檢測(cè)下啟動(dòng)
Windows
在Windows啟動(dòng)的過(guò)程中,TPM芯片將檢測(cè)存儲(chǔ)器中存儲(chǔ)的校驗(yàn)值和各個(gè)組件的校驗(yàn)值是否相符,只有在兩者相匹配的情況下,UEFI才會(huì)繼續(xù)執(zhí)行啟動(dòng)進(jìn)程。當(dāng)電腦開機(jī)時(shí),首先檢查的是UEFI固件和Windows的引導(dǎo)程序,如果兩者皆完好無(wú)損,則加載Windows內(nèi)核模塊,并檢查預(yù)先啟動(dòng)反惡意程序軟件的簽名,如果簽名正確,TMP的檢測(cè)步驟則結(jié)束,預(yù)先啟動(dòng)反惡意程序軟件將接管檢測(cè)任務(wù),檢查所有來(lái)自第三方的驅(qū)動(dòng)程序是否包含病毒,檢測(cè)通過(guò)后Windows服務(wù)將開始啟動(dòng)。
Windows管理控制臺(tái)TPM管理單元中顯示TPM芯片的狀態(tài)和版本。
TPM芯片生成可以用于Windows BitLocker硬盤加密功能的密鑰。
已經(jīng)有很長(zhǎng)一段時(shí)間沒(méi)人關(guān)注TPM了,這個(gè)稱為可信平臺(tái)模塊(Trusted Platform Modules)的小芯片多年來(lái)已經(jīng)被安裝到許多電腦、游戲機(jī)、智能手機(jī)、平板電腦和機(jī)頂盒上,目前,大約有10億臺(tái)設(shè)備配備了TPM芯片,其中大約有6億臺(tái)設(shè)備是桌面電腦,它們大部分被用于工作場(chǎng)所。自2001年以來(lái),“陰謀論者”認(rèn)為TPM芯片會(huì)被用作監(jiān)管工具,將削弱用戶的權(quán)利。從理論上講,TPM芯片確實(shí)可以被用于限制非法復(fù)制電影和音樂(lè),然而在過(guò)去的12年間,該芯片暫時(shí)沒(méi)有被用于實(shí)現(xiàn)類似的功能,它們更多的是被用于確保Windows的啟動(dòng)安全以及實(shí)現(xiàn)BitLocker硬盤加密功能。必須承認(rèn),使用TPM可以在防范惡意軟件和數(shù)據(jù)被盜上起到一定的作用,雖然其加密的主密鑰有可能掌握在美國(guó)國(guó)家安全局的手上。
近日,即將推出的TPM 2.0版本規(guī)范再次引起了不小的轟動(dòng),因?yàn)樵谛碌囊?guī)范中TPM芯片將在出廠時(shí)被激活,而目前的TPM芯片則是在用戶需要時(shí)才自己激活的。此外,更令人擔(dān)心的是用戶可能無(wú)法拒絕使用TPM芯片,因?yàn)樾乱?guī)范中沒(méi)有強(qiáng)制規(guī)定必須有一個(gè)“開關(guān)”。而且,用戶有可能很難買到?jīng)]有安裝TPM 2.0芯片的設(shè)備,因?yàn)槲④浺呀?jīng)修改了Windows的認(rèn)證標(biāo)準(zhǔn),從2015年起TPM 2.0將會(huì)是Windows認(rèn)證標(biāo)準(zhǔn)的強(qiáng)制性要求,不安裝TPM芯片的硬件廠商將無(wú)法獲得Windows的認(rèn)證標(biāo)簽。
TPM芯片提高了Windows的安全性
Windows的安全沒(méi)有保障,黑客與惡意程序在入侵系統(tǒng)之后,可以徹底地摧毀系統(tǒng)的安全措施。要確保系統(tǒng)的安全,最佳的方式是利用主板上的硬件芯片,例如TPM,因?yàn)楹诳屯耆珱](méi)有機(jī)會(huì)接觸到它。TPM實(shí)際上有點(diǎn)類似于電腦上的一臺(tái)小電腦,它有自己的CPU、內(nèi)存、存儲(chǔ)器和輸入輸出接口。TPM的核心功能之一就是為操作系統(tǒng)提供安全保障服務(wù),例如TPM可以用于存儲(chǔ)加密硬盤驅(qū)動(dòng)器的加密密鑰。此外,它也可以用于驗(yàn)證外部設(shè)備和平臺(tái)的完整性,確定設(shè)備是否被硬件黑客篡改。
在實(shí)際應(yīng)用中,TPM可以結(jié)合UEFI的安全啟動(dòng)功能,確保操作系統(tǒng)能夠在絕對(duì)安全的情況下啟動(dòng)。利用TPM芯片驗(yàn)證各組件完整性的功能,通過(guò)微軟所謂的“Measured Boot”機(jī)制,檢測(cè)并加載系統(tǒng)內(nèi)核,然后在加載任何第三方軟件供應(yīng)商的程序之前,檢驗(yàn)并加載經(jīng)過(guò)微軟簽名驗(yàn)證的預(yù)先啟動(dòng)的反惡意程序軟件(Early Launch Anti Malware,簡(jiǎn)稱ELAM),如果檢驗(yàn)ELAM的簽名失敗,那么UEFI將停止啟動(dòng)的進(jìn)程,如果ELAM的簽名成功通過(guò)驗(yàn)證,那么它將負(fù)責(zé)驗(yàn)證其他的驅(qū)動(dòng)程序。通過(guò)這種機(jī)制,早期肆虐Windows操作系統(tǒng)的Rootkit惡意程序?qū)⒉荒茉僮鲪骸?/p>
目前TPM 1.2規(guī)范使用的技術(shù)已經(jīng)過(guò)時(shí),內(nèi)置的硬件加密安全算法是RSA-2048和SHA-1,后者已經(jīng)被認(rèn)為是不安全的。而TPM 2.0將不再使用這些落后的算法,除了可以靈活地使用SHA-2、HMAC、ECC和AES等各種對(duì)稱和非對(duì)稱加密方法之外,TPM 2.0還可以通過(guò)更新支持其他新的加密算法。因此,TPM芯片也可以在中國(guó)和俄羅斯這些需要使用其他特定算法的地區(qū)使用。此外,TPM 2.0版本對(duì)于密鑰的處理方式也與此前不同,除了兩個(gè)固定的加密密鑰用于各種基礎(chǔ)服務(wù)之外,TPM 2.0還可以通過(guò)被稱為種子的大量隨機(jī)數(shù)值,通過(guò)數(shù)學(xué)函數(shù)生成新的密鑰,因而TPM 2.0還能夠生成供一次性使用的密鑰。
TPM 2.0的爭(zhēng)議
TPM 2.0標(biāo)準(zhǔn)的主要爭(zhēng)議是,在新的規(guī)范中TPM芯片將在出廠時(shí)被激活,不再是用戶需要時(shí)才自己激活。TPM的支持者認(rèn)為,安全機(jī)制應(yīng)該自動(dòng)打開為好,例如操作系統(tǒng)的防火墻和防病毒軟件也應(yīng)該默認(rèn)自動(dòng)啟動(dòng)。而另一個(gè)受到廣泛關(guān)注的問(wèn)題是,TPM芯片是否應(yīng)該有一個(gè)開關(guān),也就是用戶是否能夠禁用TPM。按照目前已知的信息,是否能夠通過(guò)BIOS或者UEFI控制TPM芯片,主要取決于硬件制造商。當(dāng)前的TPM 2.0技術(shù)規(guī)范僅僅只是一個(gè)聲明,而提供激活開關(guān)是明確被允許的。芯片廠商英飛凌認(rèn)為激活開關(guān)的問(wèn)題仍然存在變數(shù),但是否將在UEFI提供TPM芯片的激活選項(xiàng),決定權(quán)掌握在電腦制造商手上。對(duì)于制造商來(lái)說(shuō),只要有足夠大的市場(chǎng)需求,毫無(wú)疑問(wèn)將有大量用戶可以自己決定激活或停止使用TPM芯片的電腦出現(xiàn)。