一種可信計算機(jī)系統(tǒng)的設(shè)計與實(shí)現(xiàn)
摘 要:可信計算機(jī)是目前計算機(jī)安全領(lǐng)域研究的熱點(diǎn),結(jié)合嵌入式系統(tǒng)的研究,在通用計算機(jī)的主板上內(nèi)置一個嵌入式安全系統(tǒng)ESM ,通過在通用計算機(jī)內(nèi)部增加硬件和軟件控制來增強(qiáng)通用計算機(jī)的安全性,從而達(dá)到建立一個可信計算機(jī)系統(tǒng)的要求。ESM 包括一個硬件模塊和一個微型的操作系統(tǒng),設(shè)計靈活,擴(kuò)充性好,能將計算機(jī)的功能進(jìn)一步地擴(kuò)大和延伸,使其成為一個更加安全可靠,并且適用范圍更廣的安全計算機(jī)系統(tǒng)。
本文引用地址:http://m.butianyuan.cn/article/202314.htm計算機(jī)的安全涉及從計算機(jī)底層硬件一直到應(yīng)用程序的各個環(huán)節(jié)。為了增強(qiáng)計算的安全性,從計算機(jī)底層到應(yīng)用程序、從硬件到軟件必須有一套完整的安全設(shè)計方案。如何從計算機(jī)底層硬件體系結(jié)構(gòu)入手,增強(qiáng)計算機(jī)的安全性,是研究熱點(diǎn)之一。通過對可信技術(shù)[122 ]的研究,結(jié)合嵌入式技術(shù),設(shè)計并實(shí)現(xiàn)了一種基于嵌入式方式的可信計算機(jī)方案,該方案在通用計算機(jī)主板上嵌入一個嵌入式安全模塊ESM ( Embedded Security Module) ,從而能夠從硬件底層到操作系統(tǒng)、從硬件到軟件都做出改進(jìn),構(gòu)成一個較完整的安全體系結(jié)構(gòu)。ESM 模塊將計算機(jī)的功能進(jìn)一步地擴(kuò)大和延伸?;谶@一系統(tǒng),能夠開發(fā)出一個更加安全可靠,并且適用范圍更廣的可信計算機(jī)。
1 ESM 概述
目前嵌入式系統(tǒng)在計算機(jī)的各個領(lǐng)域都有廣泛的應(yīng)用[324 ] 。ESM 也是一個成功應(yīng)用的嵌入式系統(tǒng)。代寫畢業(yè)論文從結(jié)構(gòu)上來說,ESM 主要由一個嵌入式硬件模塊和一個微型的嵌入式操作系統(tǒng)JetOS 組成。ESM 是嵌入在主板上的,并從硬件上增加了對主板上南橋芯片的直接控制能力。同時,它還控制著一個智能卡接口,任何用戶使用計算機(jī)必須插入表明其身份的智能卡以后才能正常加電啟動計算機(jī)。通過這2 個重要的硬件改進(jìn),結(jié)合其內(nèi)部的JetOS ,ESM 能夠自如地控制主機(jī)上的資源以及使用者的權(quán)限。從而使整個系統(tǒng)的安全性得到了很大的增強(qiáng)。ESM 的軟件核心是JetOS。JetOS 本身采用了一定的安全策略以達(dá)到用戶安全使用計算機(jī)的目的,JetOS 與主機(jī)采用雙向通訊的方式。JetOS 通過接收主機(jī)OS 的各種命令調(diào)用,然后返回處理結(jié)果來提供相應(yīng)的安全功能;同時,JetOS 能夠主動控制主機(jī),通過這種主動控制,可以更好地監(jiān)控用戶對通用計算機(jī)使用中的不安全因素。圖1 顯示了軟件的層次結(jié)構(gòu)。
前面提到了ESM 還提供了智能卡操作的接口,圖2 表示增加了智能卡接口以后的三級結(jié)構(gòu)。當(dāng)前,智能卡可以提供諸如身份認(rèn)證,電子簽名、權(quán)限管理等諸多安全功能。智能卡應(yīng)用也是嵌入式系統(tǒng)應(yīng)用的一個發(fā)展趨勢。ESM 通過提供智能卡結(jié)口,使得主機(jī)能夠很好地利用智能卡開發(fā)出各種應(yīng)用程序,擴(kuò)展了計算機(jī)的應(yīng)用范圍。
通過實(shí)驗(yàn),ESM 對系統(tǒng)的影響非常小,用戶在日常使用中根本感覺不到ESM 的存在。總之,ESM 模塊將計算機(jī)的功能進(jìn)一步地擴(kuò)大和延伸。嵌入式的ESM 模塊其本身就像一個小型的控制和管理系統(tǒng),通過把它嵌入在主機(jī)主板上控制相關(guān)資源,并與主機(jī)雙向通訊,使得普通計算機(jī)能夠成為一個更加安全可靠,并且適用范圍更廣的安全計算機(jī)。
2 ESM 的嵌入式硬件設(shè)計
ESM 的硬件部分是一個單芯片系統(tǒng)。它主要是采用一個微處理器[5 ]進(jìn)行主控制及處理工作,外部連接有各種外部設(shè)備和I/ O ,這些外部設(shè)備用來提供各種接口及I/ O 操作,比如USB 接口、智能卡接口、以及同主板之間的接口。ESM 本身提供了2 個大容量的存儲設(shè)備用來裝載和運(yùn)行相應(yīng)的控制程序。同時, ESM和主板也有直接的連接,并且采用了2 種不同的連接方式: GPIO 方式和I2C方式。這2 種方式分別完成2種不同的功能。GPIO 用來進(jìn)行數(shù)據(jù)傳輸, I2C用來控制主板外設(shè)。
在ESM 模塊內(nèi)部采用了幾種不同的總線方式,采用多總線復(fù)合的結(jié)構(gòu),可以帶來2 個明顯的好處:不同的應(yīng)用采用不同的協(xié)議傳輸,使得各種不同的應(yīng)用能夠滿足自己的一套標(biāo)準(zhǔn)和速率要求;利用不同速率的總線協(xié)議傳輸可以有效地改善系統(tǒng)的傳輸效率。通過對傳輸數(shù)據(jù)類型的分類,比如慢速量小的命令控制類數(shù)據(jù)采用自定義的GPIO 協(xié)議,而快速量大的數(shù)據(jù)操作則采用USB 或PCI 方式,這樣數(shù)據(jù)傳輸之間不需要相互等待,有效彌補(bǔ)慢速設(shè)備帶來的速度缺陷。
1) 內(nèi)部總線 微控制器內(nèi)部提供了內(nèi)部總線驅(qū)動接口,它控制內(nèi)部的地址、數(shù)據(jù)和控制總線,如圖3 所示。從總線結(jié)構(gòu)圖可以看到,幾乎所有的外部設(shè)備都是通過CPU 的內(nèi)部總線同CPU 進(jìn)行交互的,但是通過CPU 內(nèi)部寄存器的設(shè)置,可以調(diào)整總線寬度,從而可以實(shí)現(xiàn)8 位和16 位外設(shè)的同時操作。內(nèi)部總線是ESM的基本架構(gòu),它將承載ESM 內(nèi)部的絕大多數(shù)的數(shù)據(jù)流和指令流。
2) GPIO 協(xié)議通訊 GPIO 協(xié)議是ESM 自定義的,代寫留學(xué)生論文用來和主機(jī)進(jìn)行通訊的一種特殊的總線形式。它的基本架構(gòu)如圖4 所示。利用CPU 提供的可編程的PIO 引腳引出3 根GPIO 信號線,代寫碩士論文分別用來作為中斷信號線、數(shù)據(jù)信號線和時鐘信號線。它的另一端直接連接在主板的南橋引腳上,南橋的引腳同樣也是可編程的GPIO 信號線,操作原理一致,從而可以實(shí)現(xiàn)雙向的數(shù)據(jù)通訊。GPIO 協(xié)議主要一個慢速的數(shù)據(jù)通訊協(xié)議,用來處理低速少量數(shù)據(jù)流。在ESM 中,GPIO 是主機(jī)和ESM 之間的控制命令通道,對于少量的命令數(shù)據(jù)來說,GPIO 協(xié)議已經(jīng)足夠了。
3) I2C協(xié)議通訊 I2C總線是用于低速設(shè)備互聯(lián)的一種串行總線協(xié)議。它是一種雙總線結(jié)構(gòu),通過定義掛接在總線上的設(shè)備的地址,主從關(guān)系,可以很容易地實(shí)現(xiàn)多設(shè)備之間的訪問。ESM 中利用一個標(biāo)準(zhǔn)的I2C接口芯片,可以將并行數(shù)據(jù)輸入轉(zhuǎn)換為I2C格式的數(shù)據(jù)輸出,輸出數(shù)據(jù)用來控制一個I2C的從設(shè)備,如圖5所示。
4) PCI 總線 在總線結(jié)構(gòu)圖上可以看到,CPU 并沒有提供PCI 的接口控制電路,ESM 是通過一個具有PCI 接口的密碼協(xié)處理器來使用PCI 總線同主機(jī)通訊的,這也是硬件體系結(jié)構(gòu)一個創(chuàng)新的地方。ESM 提供的安全功能中有數(shù)據(jù)加解密功能,而數(shù)據(jù)加解密涉及到大量數(shù)據(jù)的交換,自定義的GPIO 協(xié)議通訊方式或低速USB 方式都很難滿足速度上的要求,這就必然要引入一個高速總線接口,密碼協(xié)處理器就是一個很好的切入點(diǎn)。它本身并不是為此而引入的,密碼協(xié)處理器主要提供對非對稱密碼運(yùn)算的支持,通過它可以快速實(shí)現(xiàn)電子簽名、運(yùn)行認(rèn)證算法以及密鑰的生成等。使用帶PCI 接口的密碼協(xié)處理器可以很好地解決ESM 的速度瓶頸,可以有效地緩解利用低速GPIO 接口帶來的傳輸方面的限制。
3 ESM 的嵌入式操作系統(tǒng)JetOS 設(shè)計
評論