本發(fā)明涉及一種基于可信芯片的可信操作系統(tǒng)創(chuàng)建可信進(jìn)程的系統(tǒng)及方法,屬于信息安全技術(shù)領(lǐng)域。
背景技術(shù):
當(dāng)今時(shí)代,信息網(wǎng)絡(luò)技術(shù)飛速發(fā)展,信息數(shù)據(jù)已成為事關(guān)全局的戰(zhàn)略資源,重要的網(wǎng)絡(luò)信息系統(tǒng)已成為國(guó)家命脈。操作系統(tǒng)作為底層平臺(tái)支撐,其安全性顯得尤為重要。
進(jìn)程是操作系統(tǒng)結(jié)構(gòu)的基礎(chǔ)單元,是程序的實(shí)體,執(zhí)行進(jìn)程時(shí)需要系統(tǒng)中各種資源(內(nèi)存、存儲(chǔ)器、配置文件等)的共同協(xié)調(diào)動(dòng)作才能保證系統(tǒng)的正常運(yùn)行,一旦惡意進(jìn)程、木馬病毒等侵入系統(tǒng),將對(duì)正常進(jìn)程及其資源造成安全威脅,另一方面,一旦出現(xiàn)內(nèi)存泄露問題,將泄露明文形式的敏感數(shù)據(jù)。
技術(shù)實(shí)現(xiàn)要素:
鑒于上述原因,本發(fā)明的目的在于提供一種基于可信芯片的可信操作系統(tǒng)創(chuàng)建可信進(jìn)程的系統(tǒng)及方法,該方法從硬件、操作系統(tǒng)、應(yīng)用進(jìn)程方面為系統(tǒng)提供安全保障,能夠有效防止普通進(jìn)程對(duì)可信進(jìn)程造成安全威脅。
為實(shí)現(xiàn)上述目的,本發(fā)明采用以下技術(shù)方案:
一種基于可信芯片的可信操作系統(tǒng)創(chuàng)建可信進(jìn)程的系統(tǒng),包括:
內(nèi)存單元?jiǎng)澐钟羞\(yùn)行可信進(jìn)程的可信內(nèi)存區(qū),可信進(jìn)程經(jīng)過可信芯片生成的密鑰加密后運(yùn)行于該可信內(nèi)存區(qū),
可信進(jìn)程監(jiān)控模塊,用于監(jiān)控、管理可信進(jìn)程之間的通信,發(fā)送方可信進(jìn)程可與完整性未發(fā)生變化接收方可信進(jìn)程實(shí)現(xiàn)通信,
該可信進(jìn)程為具有安全性保護(hù)需要的進(jìn)程。
進(jìn)一步的,
系統(tǒng)還包括進(jìn)程管理模塊,用于管理可信進(jìn)程及其對(duì)應(yīng)的標(biāo)志位,該標(biāo)志位包括可信標(biāo)志位、共享數(shù)據(jù)段標(biāo)志位。
通過應(yīng)用層設(shè)定進(jìn)程的可信屬性,可信標(biāo)志位置位的進(jìn)程為可信進(jìn)程,可信標(biāo)志位未置位的進(jìn)程為普通進(jìn)程。
若所述可信進(jìn)程的進(jìn)程間通信方式為共享內(nèi)存方式,其共享數(shù)據(jù)段標(biāo)志位置位。
基于上述系統(tǒng)實(shí)現(xiàn)的基于可信芯片的可信操作系統(tǒng)創(chuàng)建可信進(jìn)程的方法,包括步驟:
s1:創(chuàng)建init進(jìn)程,利用可信芯片生成的密鑰對(duì)該init進(jìn)程進(jìn)行加密后運(yùn)行于可信內(nèi)存區(qū),
s2:創(chuàng)建可信父進(jìn)程,利用可信芯片為該可信父進(jìn)程生成可信密鑰,該可信父進(jìn)程經(jīng)其可信密鑰加密后運(yùn)行于可信內(nèi)存區(qū),同時(shí),根據(jù)該可信父進(jìn)程的進(jìn)程間通信方式判斷是否生成該可信父進(jìn)程的共享數(shù)據(jù)段標(biāo)志位,
s3:創(chuàng)建可信子進(jìn)程,判斷可信子進(jìn)程的父進(jìn)程是可信進(jìn)程還是普通進(jìn)程,若是可信進(jìn)程,執(zhí)行步驟s4,若是普通進(jìn)程,執(zhí)行步驟s6,
s4:判斷父進(jìn)程的共享數(shù)據(jù)標(biāo)志位,若置位,執(zhí)行步驟s5,若未置位,執(zhí)行步驟s6,
s5:該可信子進(jìn)程繼承其父進(jìn)程的可信密鑰,利用該可信密鑰對(duì)該可信子進(jìn)程加密后運(yùn)行于可信內(nèi)存區(qū),同時(shí)根據(jù)該可信子進(jìn)程的進(jìn)程間通信方式判斷是否需要置共享數(shù)據(jù)段標(biāo)志位;方法結(jié)束,
s6:利用可信芯片為該可信子進(jìn)程生成可信密鑰,利用該可信密鑰對(duì)該可信子進(jìn)程加密后運(yùn)行于可信內(nèi)存區(qū),同時(shí),根據(jù)該可信子進(jìn)程的進(jìn)程間通信方式判斷是否需要置共享數(shù)據(jù)段標(biāo)志位。
6、根據(jù)權(quán)利要求5所述的基于可信芯片的可信操作系統(tǒng)創(chuàng)建可信進(jìn)程的方法,其特征在于,可信進(jìn)程的進(jìn)程間通信方式為共享內(nèi)存方式,該可信進(jìn)程的共享數(shù)據(jù)段標(biāo)志位置位。
可信進(jìn)程之間的通信方法是:驗(yàn)證接收方可信進(jìn)程的完整性,發(fā)送方可信進(jìn)程可與完整性未發(fā)生變化的接收方可信進(jìn)程建立通信,禁止與完整性發(fā)生變化的接收方可信進(jìn)程建立通信。
驗(yàn)證接收方可信進(jìn)程完整性的方法是:將接收方可信進(jìn)程的可信密鑰與可信芯片中備份的該接收方可信進(jìn)程的可信密鑰進(jìn)行比對(duì),若一致則驗(yàn)證通過,若不一致則驗(yàn)證未通過。
發(fā)起方可信進(jìn)程與接收方可信進(jìn)程將各自的可信密鑰發(fā)送至所述可信進(jìn)程監(jiān)控模塊,所述可信進(jìn)程監(jiān)控模塊驗(yàn)證接收方可信進(jìn)程的完整性,若驗(yàn)證未通過,禁止二者通信,若驗(yàn)證通過,所述可信進(jìn)程監(jiān)控模塊將接收方可信進(jìn)程的可信密鑰發(fā)送至發(fā)送方可信進(jìn)程,同時(shí)將發(fā)送方可信進(jìn)程的可信密鑰發(fā)送至接收方可信進(jìn)程,二者利用對(duì)方的可信密鑰實(shí)現(xiàn)數(shù)據(jù)通信。
本發(fā)明的優(yōu)先是:
1、系統(tǒng)基于可信芯片實(shí)現(xiàn),保證了系統(tǒng)硬件方面的安全性;
2、操作系統(tǒng)采用可信操作系統(tǒng),保證了操作系統(tǒng)的安全性;
3、基于可信芯片的可信操作系統(tǒng)創(chuàng)建可信進(jìn)程,將普通進(jìn)程與可信進(jìn)程相隔離,能夠有效避免普通進(jìn)程對(duì)可信進(jìn)程造成安全威脅,保證數(shù)據(jù)的保密性和隱私性;
4、可信進(jìn)程經(jīng)過加密后運(yùn)行于可信內(nèi)存區(qū),即使發(fā)生內(nèi)存泄露,也能夠保證敏感數(shù)據(jù)的安全性;
5、基于本發(fā)明構(gòu)建的系統(tǒng)平臺(tái),既能夠滿足普通用戶的使用需要,也能夠滿足對(duì)數(shù)據(jù)安全具有較高要求的機(jī)構(gòu)用戶的特定需要。
附圖說明
圖1是本發(fā)明的系統(tǒng)組成框圖。
圖2是本發(fā)明的創(chuàng)建可信進(jìn)程的方法流程圖。
圖3是本發(fā)明的可信進(jìn)程之間通信的方法流程圖。
具體實(shí)施方式
以下結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)的描述。
圖1是本發(fā)明的系統(tǒng)組成框圖,如圖所示,本發(fā)明公開的基于可信芯片的可信操作系統(tǒng)創(chuàng)建可信進(jìn)程的系統(tǒng),基于可信芯片實(shí)現(xiàn),系統(tǒng)安裝可信操作系統(tǒng),系統(tǒng)包括用于監(jiān)控、管理可信進(jìn)程之間通信的可信進(jìn)程監(jiān)控模塊,用于管理普通進(jìn)程、可信進(jìn)程及其標(biāo)志位的進(jìn)程管理模塊,內(nèi)存單元中劃分有運(yùn)行可信進(jìn)程的可信內(nèi)存區(qū),可信進(jìn)程經(jīng)過加密后運(yùn)行于可信內(nèi)存區(qū),能夠與內(nèi)存單元中運(yùn)行普通進(jìn)程的普通內(nèi)存區(qū)實(shí)現(xiàn)隔離。
圖2是本發(fā)明的創(chuàng)建可信進(jìn)程的方法流程圖,如圖所示,本發(fā)明公開的基于可信芯片的可信操作系統(tǒng)創(chuàng)建可信進(jìn)程的方法,包括以下步驟:
s1:創(chuàng)建init進(jìn)程,利用可信芯片生成的密鑰對(duì)init進(jìn)程加密后生成可信的init進(jìn)程,該可信的init進(jìn)程運(yùn)行于可信內(nèi)存區(qū);
init進(jìn)程為可信進(jìn)程,其子進(jìn)程可以是普通進(jìn)程也可以是可信進(jìn)程。
s2:創(chuàng)建除init進(jìn)程外的可信父進(jìn)程,利用可信芯片為該可信父進(jìn)程生成可信密鑰,該可信父進(jìn)程經(jīng)其可信密鑰加密后運(yùn)行于可信內(nèi)存區(qū),同時(shí),若該可信父進(jìn)程的進(jìn)程間通信方式為共享內(nèi)存方式,則為該可信父進(jìn)程置共享數(shù)據(jù)段標(biāo)志位;
除init進(jìn)程外的可信進(jìn)程可由應(yīng)用層設(shè)定,如通過api接口設(shè)定具有安全性保護(hù)需要的進(jìn)程(如,涉及用戶賬戶、密碼的應(yīng)用等)為可信進(jìn)程,進(jìn)程管 理模塊為設(shè)定為可信的進(jìn)程置可信標(biāo)志位,創(chuàng)建該進(jìn)程時(shí),讀取該可信標(biāo)志位即將該進(jìn)程作為可信進(jìn)程創(chuàng)建。
進(jìn)程間通信包括管道、信息隊(duì)列、信號(hào)、共享內(nèi)存等方式,對(duì)于支持共享內(nèi)存方式實(shí)現(xiàn)進(jìn)程間通信的可信進(jìn)程,進(jìn)程管理模塊為其置共享數(shù)據(jù)段標(biāo)志位。
s3:創(chuàng)建可信子進(jìn)程,判斷可信子進(jìn)程的父進(jìn)程為可信進(jìn)程還是普通進(jìn)程,如果是可信進(jìn)程,執(zhí)行步驟s4,如果是普通進(jìn)程,執(zhí)行步驟s6,
s4:父進(jìn)程為可信進(jìn)程,判斷父進(jìn)程的共享數(shù)據(jù)標(biāo)志位,若置位,執(zhí)行步驟s5,若未置位,執(zhí)行步驟s6
s5:父進(jìn)程設(shè)定有共享數(shù)據(jù)段標(biāo)志位,該可信子進(jìn)程繼承其父進(jìn)程的可信密鑰,利用該可信密鑰對(duì)該可信子進(jìn)程加密后運(yùn)行于可信內(nèi)存區(qū),同時(shí)根據(jù)該可信子進(jìn)程的進(jìn)程間通信方式判斷是否需要置共享數(shù)據(jù)段標(biāo)志位;
s6:利用可信芯片為該可信子進(jìn)程生成可信密鑰,利用該可信密鑰對(duì)該可信子進(jìn)程加密后運(yùn)行于可信內(nèi)存區(qū),同時(shí),根據(jù)該可信子進(jìn)程的進(jìn)程間通信方式判斷是否需要置共享數(shù)據(jù)段標(biāo)志位。
利用上述方法創(chuàng)建可信進(jìn)程后,實(shí)現(xiàn)進(jìn)程間通信的方法是:
對(duì)于可信進(jìn)程與普通進(jìn)程之間的通信,普通進(jìn)程獲取到的可信進(jìn)程的數(shù)據(jù)為經(jīng)可信密鑰加密后的密文數(shù)據(jù),因此,普通進(jìn)程無法與可信進(jìn)程實(shí)現(xiàn)通信,普通進(jìn)程無法獲取可信進(jìn)程的數(shù)據(jù),實(shí)現(xiàn)了普通進(jìn)程與可信進(jìn)程于內(nèi)存空間、數(shù)據(jù)通信上的隔離,能夠避免普通進(jìn)程(如惡意進(jìn)程)獲取或篡改可信進(jìn)程的敏感數(shù)據(jù),而對(duì)可信進(jìn)程造成的安全隱患;
如圖3所示,對(duì)于可信進(jìn)程之間的通信,需要先驗(yàn)證可信進(jìn)程的完整性,然后判斷是否可以進(jìn)行通信,具體的說,發(fā)起方可信進(jìn)程與接收方可信進(jìn)程將各自的可信密鑰發(fā)送至可信進(jìn)程監(jiān)控模塊,可信進(jìn)程監(jiān)控模塊將接收方可信進(jìn)程的可信密鑰與保存于可信芯片中對(duì)應(yīng)接收方可信進(jìn)程的可信密鑰(可信芯片為可信進(jìn)程生成可信密鑰的同時(shí),備份可信密鑰)進(jìn)行比對(duì),若不一致,表示接收方可信進(jìn)程的完整性被破壞,禁止二者通信;若一致則接收方可信進(jìn)程的完整性驗(yàn)證通過,可信進(jìn)程監(jiān)控模塊將接收方可信進(jìn)程的可信密鑰發(fā)送至發(fā)送方可信進(jìn)程,同時(shí)將發(fā)送方可信進(jìn)程的可信密鑰發(fā)送至接收方可信進(jìn)程,后續(xù)發(fā)送方可信進(jìn)程與接收方可信進(jìn)程可利用獲取到的對(duì)方的可信密鑰解密出明文,從而實(shí)現(xiàn)數(shù)據(jù)通信。
本發(fā)明的基于可信芯片的可信操作系統(tǒng)創(chuàng)建可信進(jìn)程的系統(tǒng)及方法,于基 于可信芯片的硬件系統(tǒng)上安裝可信操作系統(tǒng),同時(shí)將可信進(jìn)程與普通進(jìn)程于內(nèi)存空間、數(shù)據(jù)通信方面有效隔離,能夠有效避免普通進(jìn)程對(duì)可信進(jìn)程造成安全隱患,可信進(jìn)程經(jīng)過加密后運(yùn)行與可信內(nèi)存區(qū),即使發(fā)生內(nèi)存泄露,仍可保證敏感數(shù)據(jù)的安全性,本發(fā)明從硬件到操作系統(tǒng)到應(yīng)用進(jìn)程,全面保障了系統(tǒng)的安全性,基于本發(fā)明構(gòu)建的系統(tǒng)平臺(tái),既能夠滿足普通用戶的使用需要,也能夠滿足對(duì)數(shù)據(jù)安全具有較高要求的機(jī)構(gòu)用戶的特定需要。
以上所述是本發(fā)明的較佳實(shí)施例及其所運(yùn)用的技術(shù)原理,對(duì)于本領(lǐng)域的技術(shù)人員來說,在不背離本發(fā)明的精神和范圍的情況下,任何基于本發(fā)明技術(shù)方案基礎(chǔ)上的等效變換、簡(jiǎn)單替換等顯而易見的改變,均屬于本發(fā)明保護(hù)范圍之內(nèi)。