可復用通用計算機人機交互設備的可信計算裝置的制造方法
【技術領域】
[0001]本發(fā)明公開一種能夠進行可信人機交互的可信計算裝置,具體涉及復用通用計算機人機交互設備的可信計算附件。
【背景技術】
[0002]很多場合下,人們在通用計算機上既運行普通應用,也運行可信應用,此時,如何保證可信應用的可信性成為一個重要問題。隨著Intel等處理器的發(fā)展,目前已經(jīng)可以保證純計算型任務的可信運行,但因可信應用仍然需要由運行在通用計算機上的操作系統(tǒng)來進行人機交互,而木馬、病毒等會造成操作系統(tǒng)的不可信,故很難保證具有人機交互需求的應用可信運行。
[0003]為了克服由通用計算機操作系統(tǒng)提供人機交互支持帶來的不可信問題,有的產(chǎn)品采用虛擬機的方式,在通用計算機上運行一個虛擬機監(jiān)控器,利用此虛擬機監(jiān)控器來控制人機交互設備,從而使得可信應用可以不依賴于通用計算機上的操作系統(tǒng)來進行人機交互。虛擬機監(jiān)控器對通用計算機顯卡的兼容性問題、以及虛擬機監(jiān)控器為操作系統(tǒng)提供的虛擬顯卡的性能問題,影響了此種實現(xiàn)方式的實用性。
[0004]在極端情況下,用戶可能不得不配置一個獨立的、專門用于可信計算的裝置來運行可信計算,但這時會造成用戶在人機交互設備上的重復投資。
【發(fā)明內(nèi)容】
[0005]為了解決“在通用計算機上運行的可信應用無法擁有可信的人機交互設備”和“使用具有獨立人機交互設備的可信應用計算裝置成本較高”的問題,本發(fā)明提出一種可以復用通用計算機人機交互設備的可信計算附件,既實現(xiàn)了應用可以可信的運行和人機交互,又降低了可信計算的實施成本。
[0006]本發(fā)明提出一種可復用通用計算機人機交互設備的可信計算裝置,包括運行于通用計算機的可信計算輔助軟件和可與通用計算機相連接的可信計算附件,其特征為,
[0007]I)所述可信計算附件的外部接口包括:用于連接人機輸入設備的人機輸入接口、用于連接人機輸出設備的人機輸出接口、用于接收通用計算機人機輸出接口的人機輸出接收接口、和與所述通用計算機進行信息交互的交互接口 ;
[0008]2)所述可信計算附件在加電后,在內(nèi)部創(chuàng)建可信代碼運行環(huán)境;
[0009]3)所述可信計算附件內(nèi)部具有人機輸出信號生成模塊和人機輸出選擇開關,所述人機輸出選擇開關可在所述可信計算附件內(nèi)部程序的控制下,選擇向所述人機輸出接口輸出所述人機輸出信號生成模塊產(chǎn)生的人機輸出信號,還是輸出從所述人機輸出接收接口輸入的人機輸出信號;
[0010]4)所述可信計算附件內(nèi)部具有人機輸入設備模擬模塊;在所述可信計算附件通過所述人機輸出接口輸出來自所述人機輸出接收接口的人機輸出信號時,所述可信計算附件從所述人機輸入接口獲得人機輸入事件,并通過所述人機輸入設備模擬模塊,經(jīng)由所述交互接口,向所述通用計算機提供模擬的人機輸入事件;在所述可信計算附件通過所述人機輸出接口輸出來自所述人機輸出信號生成模塊產(chǎn)生的人機輸出信號時,所述可信計算附件從所述人機輸入接口獲得人機輸入事件,并將此人機輸入事件作為可信代碼運行環(huán)境的本地輸入事件,而并不提交給所述人機輸入設備模擬模塊進行人機輸入事件的模擬;
[0011]5)所述可信計算輔助軟件通過所述交互接口與所述可信計算附件進行信息傳遞。
[0012]—般來說,所述人機輸入設備為非固定連接在所述通用計算機上的鍵盤、鼠標、觸摸球、指紋儀、麥克風等;所述人機輸出設備為VGA顯示器;所述可信計算附件采用USB接口連接鍵盤、鼠標等人機輸入設備;所述可信計算附件采用一個USB接口作為與所述通用計算機進行交互的交互接口,所述USB接口還負責向所述通用計算機傳遞鍵盤操作、鼠標操作等人機輸入事件。
[0013]在所述可信計算附件內(nèi)部有持久存儲模塊,負責存儲所述可信計算附件的固件和可信應用軟件包,在所述可信計算附件加電(如將所述交互接口與已加電的所述通用計算機USB接口相連)后,所述固件在所述可信計算附件內(nèi)部創(chuàng)建一個可信應用運行環(huán)境,并根據(jù)用戶需要的執(zhí)行相應的可信應用。
【附圖說明】
[0014]圖1為在典型實施方式下,本發(fā)明所述可信計算附件的部署使用方式。在使用時,將通用計算機的USB接口與所述可信計算附件的USB接口(圖中將此接口標為USB-H0ST)接口相連,將通用計算機的USB鍵盤、鼠標連接到所述可信計算附件的USB接口(圖中標為USB-1Nl和USB-1N2),將通用計算機的VGA輸出接口與所述可信計算附件的VGA接口(圖中標為VGA-H0ST)相連,將所述可信計算附件的VGA接口(圖中標為VGA-0UT)與通用計算機的顯示器相連。加電后,在所述可信計算附件內(nèi)部具有可信計算運行環(huán)境,可信應用可以在此運行環(huán)境中運行;在通用計算機內(nèi)部安裝運行了可信計算輔助軟件,所述可信計算輔助軟件通過USB-HOST接口與所述可信計算附件進行通信;通用計算機也從USB 口接收所述可信計算附件通過USB-HOST接口輸出的鍵盤鼠標事件。
[0015]圖2為在典型實施方式下,本發(fā)明所述可信計算附件的外部接口和內(nèi)部結構圖。圖中 USB-HOST、USB-1NU USB-1N2、VGA-HOST、VGA-OUT 接口與圖1 中相應名字的接口相對應。為避免用戶在使用時需要連接的線纜過多,在圖示的結構中,所述可信計算附件內(nèi)部具有USB集線器模塊,從而只需將USB-HOST接口連接到通用計算機的USB接口,即可對通用計算機提供鍵盤、鼠標、U盤、串口等設備。USB存儲模塊負責將部分Flash存儲器空間虛擬為通用計算機可訪問的U盤,在有的實施方式中,USB存儲模塊還負責將部分主存虛擬為通用計算機可訪問的U盤的一個分區(qū)。圖中的處理器負責執(zhí)行加載到主存中的固件和可信應用軟件。所述可信計算附件內(nèi)部還具有顯示適配器,負責將圖形顯示命令或點陣信息轉換為VGA視頻信號,視頻輸出選擇開關則用來控制最終通過VGA-OUT接口輸出何種VGA信號(是來自于VGA-HOST接口的信號,還是來自所述顯示適配器的信號),所述處理器可對視頻輸出選擇開關的行為進行控制。
[0016]圖3為所述可信計算附件中USB存儲模塊為通用計算機提供具有兩個分區(qū)的U盤的一種實現(xiàn)方式。在本實現(xiàn)方式中,U盤的分區(qū)表和第二個分區(qū)都位于Flash存儲器上,U盤的第一個分區(qū)則位于主存的一片連續(xù)區(qū)域。
[0017]圖4為與圖3對應,它顯示了所述可信計算附件中的USB存儲模塊固件所看到的、組成U盤的存儲塊的一種排列方法。所述USB存儲模塊固件根據(jù)該排列方法,來計算得出U盤的某個邏輯存儲塊具體對應的存儲地址是什么。
[0018]需要指出的是,圖3和圖4只是示意性質,本領域工程技術人員完全可以采用其他的邏輯塊與物理塊的對應方式來達到相同或相似目的。
[0019]圖5為當可信計算輔助軟件為可信計算附件提供通用計算機功能調(diào)用支持時,可信計算輔助軟件的一種可能的執(zhí)行流程。
【具體實施方式】
[0020]物理結構
[0021]圖1為本發(fā)明的一種典型實施方式。本發(fā)明所述可信計算附件在外部有3個USB接口和兩個VGA接口。其中USB-HOST接口用于與通用計算機的USB接口相連,USB-1Nl和USB-1N2用于連接USB鍵盤和鼠標,VGA-HOST用于連接通用計算機主機的VGA輸出接口,VGA-OUT用于連接VGA輸出設備。
[0022]本發(fā)明所述可信計算附件在內(nèi)部主要包括USB集線器