一種可信計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
時(shí)間:2022-07-15 05:13:00
導(dǎo)語:一種可信計(jì)算機(jī)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)一文來源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。
摘要:可信計(jì)算機(jī)是目前計(jì)算機(jī)安全領(lǐng)域研究的熱點(diǎn),結(jié)合嵌入式系統(tǒng)的研究,在通用計(jì)算機(jī)的主板上內(nèi)置一個(gè)嵌入式安全系統(tǒng)ESM,通過在通用計(jì)算機(jī)內(nèi)部增加硬件和軟件控制來增強(qiáng)通用計(jì)算機(jī)的安全性,從而達(dá)到建立一個(gè)可信計(jì)算機(jī)系統(tǒng)的要求。ESM包括一個(gè)硬件模塊和一個(gè)微型的操作系統(tǒng),設(shè)計(jì)靈活,擴(kuò)充性好,能將計(jì)算機(jī)的功能進(jìn)一步地?cái)U(kuò)大和延伸,使其成為一個(gè)更加安全可靠,并且適用范圍更廣的安全計(jì)算機(jī)系統(tǒng)。
關(guān)鍵詞:嵌入式系統(tǒng);可信計(jì)算機(jī);計(jì)算機(jī)安全
計(jì)算機(jī)的安全涉及從計(jì)算機(jī)底層硬件一直到應(yīng)用程序的各個(gè)環(huán)節(jié)。為了增強(qiáng)計(jì)算的安全性,從計(jì)算機(jī)底層到應(yīng)用程序、從硬件到軟件必須有一套完整的安全設(shè)計(jì)方案。如何從計(jì)算機(jī)底層硬件體系結(jié)構(gòu)入手,增強(qiáng)計(jì)算機(jī)的安全性,是研究熱點(diǎn)之一。通過對可信技術(shù)[122]的研究,結(jié)合嵌入式技術(shù),設(shè)計(jì)并實(shí)現(xiàn)了一種基于嵌入式方式的可信計(jì)算機(jī)方案,該方案在通用計(jì)算機(jī)主板上嵌入一個(gè)嵌入式安全模塊ESM(EmbeddedSecurityModule),從而能夠從硬件底層到操作系統(tǒng)、從硬件到軟件都做出改進(jìn),構(gòu)成一個(gè)較完整的安全體系結(jié)構(gòu)。ESM模塊將計(jì)算機(jī)的功能進(jìn)一步地?cái)U(kuò)大和延伸?;谶@一系統(tǒng),能夠開發(fā)出一個(gè)更加安全可靠,并且適用范圍更廣的可信計(jì)算機(jī)。
1ESM概述
目前嵌入式系統(tǒng)在計(jì)算機(jī)的各個(gè)領(lǐng)域都有廣泛的應(yīng)用[324]。ESM也是一個(gè)成功應(yīng)用的嵌入式系統(tǒng)。畢業(yè)論文從結(jié)構(gòu)上來說,ESM主要由一個(gè)嵌入式硬件模塊和一個(gè)微型的嵌入式操作系統(tǒng)JetOS組成。ESM是嵌入在主板上的,并從硬件上增加了對主板上南橋芯片的直接控制能力。同時(shí),它還控制著一個(gè)智能卡接口,任何用戶使用計(jì)算機(jī)必須插入表明其身份的智能卡以后才能正常加電啟動(dòng)計(jì)算機(jī)。通過這2個(gè)重要的硬件改進(jìn),結(jié)合其內(nèi)部的JetOS,ESM能夠自如地控制主機(jī)上的資源以及使用者的權(quán)限。從而使整個(gè)系統(tǒng)的安全性得到了很大的增強(qiáng)。ESM的軟件核心是JetOS。JetOS本身采用了一定的安全策略以達(dá)到用戶安全使用計(jì)算機(jī)的目的,JetOS與主機(jī)采用雙向通訊的方式。JetOS通過接收主機(jī)OS的各種命令調(diào)用,然后返回處理結(jié)果來提供相應(yīng)的安全功能;同時(shí),JetOS能夠主動(dòng)控制主機(jī),通過這種主動(dòng)控制,可以更好地監(jiān)控用戶對通用計(jì)算機(jī)使用中的不安全因素。圖1顯示了軟件的層次結(jié)構(gòu)。
前面提到了ESM還提供了智能卡操作的接口,圖2表示增加了智能卡接口以后的三級結(jié)構(gòu)。當(dāng)前,智能卡可以提供諸如身份認(rèn)證,電子簽名、權(quán)限管理等諸多安全功能。智能卡應(yīng)用也是嵌入式系統(tǒng)應(yīng)用的一個(gè)發(fā)展趨勢。ESM通過提供智能卡結(jié)口,使得主機(jī)能夠很好地利用智能卡開發(fā)出各種應(yīng)用程序,擴(kuò)展了計(jì)算機(jī)的應(yīng)用范圍。
通過實(shí)驗(yàn),ESM對系統(tǒng)的影響非常小,用戶在日常使用中根本感覺不到ESM的存在??傊?ESM模塊將計(jì)算機(jī)的功能進(jìn)一步地?cái)U(kuò)大和延伸。嵌入式的ESM模塊其本身就像一個(gè)小型的控制和管理系統(tǒng),通過把它嵌入在主機(jī)主板上控制相關(guān)資源,并與主機(jī)雙向通訊,使得普通計(jì)算機(jī)能夠成為一個(gè)更加安全可靠,并且適用范圍更廣的安全計(jì)算機(jī)。
2ESM的嵌入式硬件設(shè)計(jì)
ESM的硬件部分是一個(gè)單芯片系統(tǒng)。它主要是采用一個(gè)微處理器[5]進(jìn)行主控制及處理工作,外部連接有各種外部設(shè)備和I/O,這些外部設(shè)備用來提供各種接口及I/O操作,比如USB接口、智能卡接口、以及同主板之間的接口。ESM本身提供了2個(gè)大容量的存儲設(shè)備用來裝載和運(yùn)行相應(yīng)的控制程序。同時(shí),ESM和主板也有直接的連接,并且采用了2種不同的連接方式:GPIO方式和I2C方式。這2種方式分別完成2種不同的功能。GPIO用來進(jìn)行數(shù)據(jù)傳輸,I2C用來控制主板外設(shè)。
在ESM模塊內(nèi)部采用了幾種不同的總線方式,采用多總線復(fù)合的結(jié)構(gòu),可以帶來2個(gè)明顯的好處:不同的應(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ū)動(dòng)接口,它控制內(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è)的同時(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ù)信號線和時(shí)鐘信號線。它的另一端直接連接在主板的南橋引腳上,南橋的引腳同樣也是可編程的GPIO信號線,操作原理一致,從而可以實(shí)現(xiàn)雙向的數(shù)據(jù)通訊。GPIO協(xié)議主要一個(gè)慢速的數(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中利用一個(gè)標(biāo)準(zhǔn)的I2C接口芯片,可以將并行數(shù)據(jù)輸入轉(zhuǎn)換為I2C格式的數(shù)據(jù)輸出,輸出數(shù)據(jù)用來控制一個(gè)I2C的從設(shè)備,如圖5所示。
4)PCI總線在總線結(jié)構(gòu)圖上可以看到,CPU并沒有提供PCI的接口控制電路,ESM是通過一個(gè)具有PCI接口的密碼協(xié)處理器來使用PCI總線同主機(jī)通訊的,這也是硬件體系結(jié)構(gòu)一個(gè)創(chuàng)新的地方。ESM提供的安全功能中有數(shù)據(jù)加解密功能,而數(shù)據(jù)加解密涉及到大量數(shù)據(jù)的交換,自定義的GPIO協(xié)議通訊方式或低速USB方式都很難滿足速度上的要求,這就必然要引入一個(gè)高速總線接口,密碼協(xié)處理器就是一個(gè)很好的切入點(diǎn)。它本身并不是為此而引入的,密碼協(xié)處理器主要提供對非對稱密碼運(yùn)算的支持,通過它可以快速實(shí)現(xiàn)電子簽名、運(yùn)行認(rèn)證算法以及密鑰的生成等。使用帶PCI接口的密碼協(xié)處理器可以很好地解決ESM的速度瓶頸,可以有效地緩解利用低速GPIO接口帶來的傳輸方面的限制。
3ESM的嵌入式操作系統(tǒng)JetOS設(shè)計(jì)
ESM還包括一個(gè)嵌入式操作系統(tǒng)JetOS,主要負(fù)責(zé)對嵌入式模塊的管理。JetOS的軟件模塊主要分為6大部分:主控系統(tǒng)、通訊系統(tǒng)、命令處理系統(tǒng)、智能卡接口模塊、文件系統(tǒng)、密鑰管理系統(tǒng)。每一個(gè)都和其他的模塊有一定的聯(lián)系,但并不是全互聯(lián)的。圖6表明了其結(jié)構(gòu)。
1)主控系統(tǒng)主控系統(tǒng)負(fù)責(zé)監(jiān)控通訊通道,同時(shí)要控制ESM自身系統(tǒng)的安全和穩(wěn)定運(yùn)行。與它有聯(lián)系的有3個(gè)子系統(tǒng):通訊子系統(tǒng)、命令處理子系統(tǒng)和智能卡接口子系統(tǒng)。因此它要控制并管理這3個(gè)子系統(tǒng)的正常運(yùn)行,他們之間主要是調(diào)用和被調(diào)用的關(guān)系:醫(yī)學(xué)論文主控系統(tǒng)會監(jiān)控系統(tǒng)異常和正常事件的發(fā)生,一旦被激活,它會調(diào)用通訊系統(tǒng)與主機(jī)通訊,接收命令,轉(zhuǎn)而調(diào)用命令處理子系統(tǒng),對主機(jī)的要求做出響應(yīng)。如果是和智能卡相關(guān)的,它會直接調(diào)用智能卡接口模塊。主控模塊并不直接和文件系統(tǒng)以及密鑰管理系統(tǒng)關(guān)聯(lián),它只是通過命令處理系統(tǒng)來調(diào)用。主控系統(tǒng)還執(zhí)行有權(quán)限的開關(guān)機(jī)功能,這也是通過對智能卡接口模塊和通訊系統(tǒng)的調(diào)用來實(shí)現(xiàn)的。
2)通訊系統(tǒng)通訊系統(tǒng)是ESM和主機(jī)之間的唯一接口,是控制和主機(jī)相互通訊和傳送控制命令的通道。它包含一個(gè)命令通道、一個(gè)輔助的數(shù)據(jù)通道以及一個(gè)控制用通道。命令通道提供了和主機(jī)的函數(shù)調(diào)用接口、輔助的數(shù)據(jù)通道通過PCI總線方式來傳輸大容量數(shù)據(jù),主要是加解密數(shù)據(jù)、控制用通道利用I2C總線來傳輸控制信號控制主機(jī)外設(shè)。
3)命令處理子系統(tǒng)JetOS提供給主機(jī)的命令調(diào)用功能都是通過命令處理子系統(tǒng)來實(shí)現(xiàn)。命令處理子系統(tǒng)連接了4個(gè)主要的系統(tǒng)模塊。由于命令處理模塊要執(zhí)行各種安全功能或操作,它必須能夠自主調(diào)用所需要的資源。但在超循環(huán)結(jié)構(gòu)中,命令處理子系統(tǒng)是不能自主運(yùn)行的,它屬于前臺系統(tǒng),它必須通過主控系統(tǒng)的調(diào)用來激活。同時(shí)它要受到主控系統(tǒng)的監(jiān)控,英語論文一旦命令處理模塊執(zhí)行異常或碰到非法操作,主控系統(tǒng)會直接采取相應(yīng)措施來控制主機(jī),這是通過檢測命令處理系統(tǒng)的返回應(yīng)答碼來實(shí)現(xiàn)的。
4)智能卡接口模塊智能卡的硬件接口是用GPIO實(shí)現(xiàn)的,在JetOS中,需要用純軟件模擬的方式來控制智能卡設(shè)備,需要一個(gè)專門的智能卡接口模塊。它通過控制GPIO信號來與智能卡通訊,提供了一個(gè)標(biāo)準(zhǔn)的智能卡軟件接口。它受主控系統(tǒng)的調(diào)用,同時(shí)也受命令處理系統(tǒng)的調(diào)用。主控系統(tǒng)在執(zhí)行開關(guān)機(jī)權(quán)限檢測或身份認(rèn)證,卡異常監(jiān)控等功能時(shí),會直接調(diào)用智能卡接口來執(zhí)行卡操作。而碰到通用性智能卡應(yīng)用比如卡驗(yàn)證,加解密,圈存圈提(銀行應(yīng)用)時(shí),會由命令處理模塊來發(fā)出調(diào)用命令。
5)文件系統(tǒng)在JetOS管理ESM并執(zhí)行各項(xiàng)功能時(shí),需要一個(gè)簡單的文件系統(tǒng)來存貯各種重要的JetOS系統(tǒng)文件和應(yīng)用參數(shù)。文件系統(tǒng)同時(shí)考慮了密鑰管理系統(tǒng)的實(shí)現(xiàn),因?yàn)槊荑€管理系統(tǒng)的一部分需要文件系統(tǒng)的支持,同時(shí)文件系統(tǒng)也給ESM系統(tǒng)本身功能和應(yīng)用的升級留下了擴(kuò)充的余地,可以在文件系統(tǒng)中建立多個(gè)應(yīng)用文件或多個(gè)功能性文件等等。
6)密鑰管理系統(tǒng)密鑰管理[627]是實(shí)現(xiàn)整個(gè)ESM系統(tǒng)安全的一個(gè)重要組成部分,這里考慮在JetOS中實(shí)現(xiàn)一個(gè)簡單的密鑰管理功能,實(shí)現(xiàn)除了能夠?qū)ψ陨硭峁┑募咏饷芎驼J(rèn)證簽名系統(tǒng)提供支持外,還一定程度上實(shí)現(xiàn)整個(gè)系統(tǒng)環(huán)境下的密鑰管理系統(tǒng)的局部功能。
應(yīng)注意在JetOS的模塊圖中并沒有內(nèi)存管理模塊,并不是完全沒有內(nèi)存管理,只是內(nèi)存管理的實(shí)現(xiàn)十分簡單,而且由于ESM的資源有限,實(shí)現(xiàn)一個(gè)完整的內(nèi)存管理并沒有必要,因此考慮了一種很簡單的內(nèi)存管理方式,在設(shè)計(jì)中采用順序存儲的方式,利用鏈表域來查找內(nèi)存區(qū)域,內(nèi)存并沒有分配和回收,由于應(yīng)用的特殊性,職稱論文產(chǎn)生的碎片對系統(tǒng)性能的影響并不大。
JetOS的總體結(jié)構(gòu)設(shè)計(jì)中采用了超循環(huán)結(jié)構(gòu),那么相應(yīng)的在實(shí)現(xiàn)策略上就應(yīng)該是一種被動(dòng)的方式,即ESM系統(tǒng)處于一個(gè)空閑等待狀態(tài),除了一些系統(tǒng)自身的例行操作之外,其余時(shí)間是等待事件的發(fā)生,主要是接收主機(jī)OS的命令,然后進(jìn)入命令處理系統(tǒng)進(jìn)行處理,并返回結(jié)果給OS,這是超循環(huán)結(jié)構(gòu)所規(guī)定的模式。但這樣的模式不能實(shí)現(xiàn)主動(dòng)控制主機(jī)的功能,所以需要改進(jìn),考慮的一種方式就是采用主動(dòng)和被動(dòng)相結(jié)合,JetOS可以被動(dòng)地接收主機(jī)發(fā)送的命令,也可以主動(dòng)向主機(jī)發(fā)送控制信號,但主要是以被動(dòng)式為主的輔助以主動(dòng)控制模式,這樣ESM同時(shí)扮演主設(shè)備和從設(shè)備。這種策略的好處主要是靈活,可以很好地滿足功能設(shè)計(jì)上的各種應(yīng)用需求。主動(dòng)控制模式可以有效地增強(qiáng)主機(jī)的安全性能??梢哉f主動(dòng)控制模式才真正體現(xiàn)了硬件一級的安全功能。
4結(jié)語
ESM可以將計(jì)算機(jī)的功能進(jìn)一步地?cái)U(kuò)大和延伸,再通過對操作系統(tǒng)Linux內(nèi)核的改造,加入嵌入式模塊的主機(jī)就成為一個(gè)真正安全、體系嚴(yán)密的可信計(jì)算機(jī)。該設(shè)計(jì)基于對嵌入式系統(tǒng)的深入研究和應(yīng)用,設(shè)計(jì)思想承前啟后,既繼承和保留現(xiàn)有通用計(jì)算機(jī)的體系和優(yōu)點(diǎn),又極大地增強(qiáng)了其安全性,有很強(qiáng)的應(yīng)用價(jià)值。
參考文獻(xiàn)
[1]TCGSpecificationArchitectureOverview.SpecificationRevision1.2[EB/OL]./downloads/TCG-1-0-Architecture-Overview.pdf,2004204228.
[2]ZhangXiaolan,JaegerTrent,DoornLeendertVan.DesignandImplementationofaTCG2basedIntegrityMeasurementArchitecture[EB/OL].www.ece.cmu.edu/~adrian/7312sp04/readings/rc23064.pdf,2007204229.
[3]LabrosseJeanJ.uC/OS2II源碼公開的實(shí)時(shí)嵌入式操作系統(tǒng)[M].北京:中國電力出版社,2001.
[4]WolfWayne.嵌入式系統(tǒng)設(shè)計(jì)原理[M].北京:機(jī)械工業(yè)出版社,2002.
[5]BarryBarryB.Intel微處理器全系列:結(jié)構(gòu)、編程、與接口[M].5版.北京:電子工業(yè)出版社,2001.
[6]周學(xué)廣,劉藝.信息安全學(xué)[M].北京:機(jī)械工業(yè)出版社,2003.
[7]闕喜戎,孫銳,龔向陽,等.信息安全原理及應(yīng)用[M].北京:清華大學(xué)出版社,2003.