欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng)及方法

文檔序號(hào):6514516閱讀:273來(lái)源:國(guó)知局
一種嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng)及方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)了一種嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng),包括用于對(duì)嵌入式系統(tǒng)中單一組件的信息流安全屬性進(jìn)行驗(yàn)證的組件驗(yàn)證子系統(tǒng);用于對(duì)組件間信息流安全屬性進(jìn)行驗(yàn)證的可組合驗(yàn)證子系統(tǒng);用于存儲(chǔ)驗(yàn)證通過(guò)的組件驗(yàn)證證書(shū),向用戶(hù)、組件驗(yàn)證子系統(tǒng)及組合驗(yàn)證子系統(tǒng)提供證書(shū)更新、調(diào)用接口的組件證書(shū)庫(kù);用于接收驗(yàn)證引擎輸出的失敗信息,將嵌入式系統(tǒng)中失敗的反例輸出給用戶(hù),指導(dǎo)用戶(hù)修改嵌入式系統(tǒng)設(shè)計(jì)的失敗結(jié)果分析器;組件驗(yàn)證子系統(tǒng)和可組合驗(yàn)證子系統(tǒng)分別接組件證書(shū)庫(kù)和失敗結(jié)果分析器,組件證書(shū)庫(kù)與系統(tǒng)證書(shū)導(dǎo)入相接,失敗結(jié)果分析器輸出系統(tǒng)反例。本發(fā)明對(duì)組件間信息流安全進(jìn)行驗(yàn)證,從而保證組件組合后系統(tǒng)的信息流安全性。
【專(zhuān)利說(shuō)明】一種嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)嵌入式軟件工程領(lǐng)域,具體涉及一種嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng)及方法。
【背景技術(shù)】
[0002]嵌入式軟件廣泛應(yīng)用于航空電子、車(chē)載軟件、戰(zhàn)場(chǎng)單兵等領(lǐng)域的任務(wù)關(guān)鍵系統(tǒng)中。隨著任務(wù)關(guān)鍵系統(tǒng)信息化水平的提高,嵌入式軟件承擔(dān)的功能越來(lái)越多,尤其以車(chē)載、機(jī)載嵌入式軟件為主要應(yīng)用,美軍F22戰(zhàn)機(jī)的機(jī)載軟件規(guī)模約為170萬(wàn)行Ada代碼,而近期被多國(guó)停飛的波音787客機(jī),其機(jī)載軟件規(guī)模增至約1300萬(wàn)行。在此類(lèi)大規(guī)模嵌入式軟件中,必然存在大量缺陷。
[0003]隨著嵌入式軟件系統(tǒng)的規(guī)模日益擴(kuò)大,復(fù)雜性也越來(lái)越高,傳統(tǒng)的系統(tǒng)開(kāi)發(fā)方式效率低,無(wú)法滿(mǎn)足領(lǐng)域中應(yīng)用快速部署、豐富業(yè)務(wù)類(lèi)型的需求,因而用以降低開(kāi)發(fā)難度的通用組件化的思想在嵌入式軟件開(kāi)發(fā)中越來(lái)越受到關(guān)注。復(fù)雜嵌入式軟件系統(tǒng)所采用的將整個(gè)系統(tǒng)分解為多個(gè)異步并發(fā)的組件或子系統(tǒng),并通過(guò)不同組件間的協(xié)同工作來(lái)完成某個(gè)復(fù)雜的任務(wù)的軟件開(kāi)發(fā)方式也成為嵌入式系統(tǒng)軟件開(kāi)發(fā)過(guò)程的發(fā)展趨勢(shì)。在這一趨勢(shì)下,現(xiàn)有的軟件設(shè)計(jì)開(kāi)發(fā)方法難以適應(yīng)嵌入式軟件的安全性需求。組件化軟件開(kāi)發(fā)方法尚缺乏保證軟件組件組合結(jié)果安全性的開(kāi)發(fā)規(guī)程,尤其在任務(wù)關(guān)鍵系統(tǒng)(如航空電子系統(tǒng))的開(kāi)發(fā)過(guò)程中,要求滿(mǎn)足個(gè)體安全性的各個(gè)異構(gòu)組件的組合結(jié)果能夠克服其他功能屬性和非功能屬性疊加對(duì)整體安全性產(chǎn)生的負(fù)面影響,另外,還要求對(duì)組件的驗(yàn)證過(guò)程與對(duì)組合結(jié)果的驗(yàn)證過(guò)程低耦合,以達(dá)到增量式驗(yàn)證的效果。因此,研究如何驗(yàn)證單個(gè)組件的安全性在組合系統(tǒng)構(gòu)造過(guò)程中能否得到保持、以及高效的組合系統(tǒng)安全性驗(yàn)證方法就成為決定整個(gè)組件化嵌入式軟件系統(tǒng)安全性的關(guān)鍵。
[0004]與通用計(jì)算機(jī)系統(tǒng)相對(duì)地,嵌入式軟件系統(tǒng)在時(shí)序性、并發(fā)性、實(shí)時(shí)性、可靠性、資源管理、安全性等方面都有其自身的特點(diǎn)和要求。安全性是嵌入式軟件質(zhì)量和系統(tǒng)質(zhì)量的一個(gè)重要衡量指標(biāo),在傳統(tǒng)的計(jì)算模型抽象下,安全性屬于非功能屬性,在實(shí)際開(kāi)發(fā)過(guò)程中,嵌入式軟件的功能屬性與非功能屬性存在制約關(guān)系,安全性等非功能屬性可能對(duì)功能屬性的規(guī)約產(chǎn)生影響。
[0005]模型檢測(cè)的方法雖然能夠保證驗(yàn)證的精確性,但目前其需要通過(guò)對(duì)嵌入式系統(tǒng)整體建模來(lái)驗(yàn)證其信息流安全性,但由于現(xiàn)有的嵌入式系統(tǒng)存在代碼量大,使得軟件的建模過(guò)程變得更加復(fù)雜,導(dǎo)致人為主觀錯(cuò)誤更加容易發(fā)生,而過(guò)于復(fù)雜的模型在驗(yàn)證過(guò)程中也會(huì)帶來(lái)驗(yàn)證開(kāi)銷(xiāo)巨大的缺陷。
[0006]自動(dòng)化建模的方法能夠克服人為主觀失誤帶來(lái)的建模錯(cuò)誤,但該方法的原子模塊需要預(yù)先設(shè)計(jì)好,而嵌入式系統(tǒng)軟件的設(shè)計(jì)需求是動(dòng)態(tài)變化的,靜態(tài)原子模塊的組合往往導(dǎo)致所設(shè)計(jì)的模型較為復(fù)雜,從而很難適應(yīng)復(fù)雜嵌入式系統(tǒng)的建模需求,而且沒(méi)有結(jié)合現(xiàn)有嵌入式系統(tǒng)組件化開(kāi)發(fā)的特點(diǎn),檢測(cè)時(shí)仍首先需要由原子模塊組合成系統(tǒng)模型,然后再對(duì)整體模型進(jìn)行驗(yàn)證,并未實(shí)現(xiàn)增量式的驗(yàn)證,導(dǎo)致驗(yàn)證的開(kāi)銷(xiāo)仍很大。[0007]隨著云計(jì)算、物聯(lián)網(wǎng)技術(shù)的快速發(fā)展,信息化、智能化成為未來(lái)嵌入式系統(tǒng)軟件的主要發(fā)展方向,而其中涉及的信息安全問(wèn)題也越來(lái)越突出。目前,多樣化的嵌入式系統(tǒng)軟件在航空、交通、軍事、生活等不同領(lǐng)域起到了關(guān)鍵的作用。在使用這些軟件的過(guò)程中,由用戶(hù)提供輸入,經(jīng)過(guò)軟件處理,最后輸出計(jì)算結(jié)果。由于信息本身具有不同的敏感程度,輸入和輸出本身就包含了具有不同安全級(jí)別的數(shù)據(jù),如航空軟件中飛機(jī)的位置、飛行姿態(tài)等就具有較高安全級(jí),而飛機(jī)飛行過(guò)程中環(huán)境數(shù)據(jù),如風(fēng)向,溫度等安全級(jí)則相較較低;用戶(hù)的年齡、生活習(xí)慣等安全級(jí)較高,而用戶(hù)生活小區(qū)的環(huán)境數(shù)據(jù)則較低。在智能軟件處理過(guò)程中,軟件中的非法操作以及本身所存在的安全漏洞將導(dǎo)致高安全級(jí)數(shù)據(jù)信息的泄露,如飛機(jī)在自動(dòng)導(dǎo)航過(guò)程中,飛機(jī)的調(diào)整飛行姿態(tài)信息被攻擊者通過(guò)軟件漏洞竊??;用戶(hù)在定位過(guò)程中,定位軟件私自將用戶(hù)的位置信息上傳給后臺(tái)云服務(wù)器等等,從而造成了對(duì)用戶(hù)隱私信息的泄露。因此,對(duì)嵌入式系統(tǒng)軟件的信息處理過(guò)程進(jìn)行驗(yàn)證,即軟件中的信息流驗(yàn)證,是保證嵌入式系統(tǒng)軟件信息安全的必要手段。
[0008]隨著信息化水平的提高,嵌入式軟件承擔(dān)的功能越來(lái)越多,尤其以車(chē)載、機(jī)載嵌入式軟件為主要應(yīng)用,軟件系統(tǒng)的規(guī)模日益擴(kuò)大,復(fù)雜性也越來(lái)越高,傳統(tǒng)的信息流驗(yàn)證方法需要對(duì)系統(tǒng)整體進(jìn)行建模,建模過(guò)程復(fù)雜,錯(cuò)誤率高,驗(yàn)證開(kāi)銷(xiāo)大,無(wú)法滿(mǎn)足領(lǐng)域中應(yīng)用快速部署、豐富業(yè)務(wù)類(lèi)型的需求。

【發(fā)明內(nèi)容】

[0009]本發(fā)明的目的在于提供一種嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng)及方法,通過(guò)結(jié)合現(xiàn)有嵌入式系統(tǒng)組件化開(kāi)發(fā)的特點(diǎn),提出低耦合、增量式的可組合信息流驗(yàn)證方法,該方法以單一組件信息流驗(yàn)證為基礎(chǔ),結(jié)合經(jīng)理論證明的組件安全可組合條件對(duì)組件間信息流安全進(jìn)行驗(yàn)證,從而保證組件組合后系統(tǒng)的信息流安全性。
[0010]本發(fā)明的目的是通過(guò)下述技術(shù)方案來(lái)實(shí)現(xiàn)的。
[0011]一種嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng),包括:
[0012]—組件驗(yàn)證子系統(tǒng),用于對(duì)嵌入式系統(tǒng)中單一組件的信息流安全屬性進(jìn)行驗(yàn)證;
[0013]—可組合驗(yàn)證子系統(tǒng),用于對(duì)存在組合關(guān)系的組件間的信息流安全屬性進(jìn)行驗(yàn)證;
[0014]—組件證書(shū)庫(kù),用于存儲(chǔ)驗(yàn)證通過(guò)的組件驗(yàn)證證書(shū),并向用戶(hù)、組件驗(yàn)證子系統(tǒng)及組合驗(yàn)證子系統(tǒng)提供證書(shū)更新、調(diào)用接口 ;
[0015]——失敗結(jié)果分析器,用于接收驗(yàn)證引擎輸出的失敗原因,將嵌入式系統(tǒng)中失敗的反例輸出給用戶(hù),指導(dǎo)用戶(hù)修改嵌入式系統(tǒng)設(shè)計(jì);
[0016]所述組件驗(yàn)證子系統(tǒng)和可組合驗(yàn)證子系統(tǒng)分別連接組件證書(shū)庫(kù)和失敗結(jié)果分析器,組件證書(shū)庫(kù)與系統(tǒng)證書(shū)導(dǎo)入相接,失敗結(jié)果分析器輸出系統(tǒng)反例。
[0017]優(yōu)選地,所述組件驗(yàn)證子系統(tǒng)包括Promela語(yǔ)言編輯器、Promela語(yǔ)言編譯器、Assert斷言編輯器和模型檢測(cè)驗(yàn)證引擎,所述Promela語(yǔ)言編輯器連接Promela語(yǔ)言編譯器,Promela語(yǔ)言編譯器和Assert斷言編輯器分別連接至模型檢測(cè)驗(yàn)證引擎,模型檢測(cè)驗(yàn)證引擎將驗(yàn)證信息分別輸出至組件證書(shū)庫(kù)和失敗結(jié)果分析器。
[0018]優(yōu)選地,所述Promela語(yǔ)言編輯器采用文本框的圖形化界面接收用戶(hù)輸入,并提供文件管理、文本編輯、Assert斷言編輯器、編譯及運(yùn)行接口 ;
[0019]所述文件管理包括新文件創(chuàng)建、打開(kāi)、保存和系統(tǒng)退出;
[0020]所述文本編輯包括文本查找和替換;
[0021]所述Assert斷言編輯器接口則調(diào)用生成新的Assert編輯窗口 ;
[0022]所述編譯及運(yùn)行接口則分別調(diào)用Promela語(yǔ)言編譯器和模型檢測(cè)驗(yàn)證引擎完成模型編譯及驗(yàn)證運(yùn)行。
[0023]優(yōu)選地,所述Promela語(yǔ)言編譯器接收Promela語(yǔ)言編輯器提交的模型輸入,并按照Promela語(yǔ)法規(guī)則對(duì)該模型輸入進(jìn)行檢測(cè),若存在語(yǔ)法錯(cuò)誤,返回該錯(cuò)誤類(lèi)型和地址;若無(wú)錯(cuò)誤,則編譯成可執(zhí)行文件;
[0024]所述Assert斷言編輯器采用對(duì)話(huà)框圖形化界面接收用戶(hù)輸入,并存入輸入模型的描述文件中,在運(yùn)行時(shí)有模型檢測(cè)驗(yàn)證引擎調(diào)用讀??;
[0025]所述模型檢測(cè)驗(yàn)證引擎負(fù)責(zé)調(diào)用編譯通過(guò)的可執(zhí)行文件,并結(jié)合Assert斷言檢測(cè)模型執(zhí)行過(guò)程中是否符合信息流安全要求;若驗(yàn)證通過(guò),結(jié)合組件描述生成組件證書(shū);若驗(yàn)證失敗,將出錯(cuò)的信息報(bào)告給失敗結(jié)果分析器。
[0026]優(yōu)選地,所述可組合驗(yàn)證子系統(tǒng)包括組合關(guān)系編輯器、驗(yàn)證條件生成器、組件證書(shū)分析器和可組合信息流安全驗(yàn)證引擎,所述組合關(guān)系編輯器連接驗(yàn)證條件生成器,驗(yàn)證條件生成器和組件證書(shū)分析器分別連接至可組合信息流安全驗(yàn)證引擎,可組合信息流安全驗(yàn)證引擎和組件證書(shū)分析器將驗(yàn)證信息分別輸出至組件證書(shū)庫(kù)和失敗結(jié)果分析器。
[0027]優(yōu)選地,所述組合關(guān)系編輯器采用文本框的圖形化界面接收用戶(hù)輸入,并提供文件管理、文本編輯及運(yùn)行驗(yàn)證接口 ;
[0028]所述文件管理包括新文件創(chuàng)建、打開(kāi)和保存和編輯器關(guān)閉;
[0029]所述文本編輯功能包括文本查找和替換;
[0030]所述運(yùn)行驗(yàn)證接口將調(diào)用驗(yàn)證條件生成器和可組合信息流安全驗(yàn)證引擎完成驗(yàn)證工作,在運(yùn)行之前以對(duì)話(huà)框形式要求用戶(hù)手動(dòng)輸入?yún)⑴c組合驗(yàn)證組件的證書(shū)文件的路徑。
[0031]優(yōu)選地,所述驗(yàn)證條件生成器接收BPEL (Bussiness Process ExecutionLanguage)語(yǔ)言描述的組合關(guān)系;生成相鄰組件間保證信息流安全的驗(yàn)證條件;
[0032]所述組件證書(shū)分析器根據(jù)用戶(hù)輸入的組件證書(shū)路徑讀取相應(yīng)的證書(shū)交給驗(yàn)證引擎進(jìn)行驗(yàn)證;
[0033]所述可組合信息流驗(yàn)證引擎根據(jù)組件間信息流安全驗(yàn)證條件以及組件證書(shū)對(duì)組件間的信息傳遞過(guò)程進(jìn)行驗(yàn)證;若驗(yàn)證成功,輸出驗(yàn)證通過(guò)結(jié)果;若驗(yàn)證失敗,將出錯(cuò)的信息報(bào)告給失敗結(jié)果分析器。
[0034]優(yōu)選地,所述組件證書(shū)庫(kù)包括與系統(tǒng)證書(shū)導(dǎo)入相接的證書(shū)儲(chǔ)存單元、證書(shū)存儲(chǔ)單元分別連接至證書(shū)生成接口模塊和證書(shū)讀取接口模塊,證書(shū)生成接口模塊連接至組件驗(yàn)證子系統(tǒng),證書(shū)讀取接口模塊連接至可組合驗(yàn)證子系統(tǒng)。
[0035]優(yōu)選地,所述組件證書(shū)存儲(chǔ)單元將生成的組件證書(shū)以xml文件形式存儲(chǔ)在磁盤(pán)中,同時(shí)提供證書(shū)導(dǎo)入\導(dǎo)出功能,實(shí)現(xiàn)證書(shū)的可遷移;
[0036]所述證書(shū)生成接口模塊由模型檢測(cè)驗(yàn)證引擎進(jìn)行調(diào)用,當(dāng)組件驗(yàn)證通過(guò)后,模型檢測(cè)引擎結(jié)合組件描述信息調(diào)用該接口生成證書(shū)并存儲(chǔ)在證書(shū)存儲(chǔ)單元中;[0037]所述證書(shū)讀取接口模塊由可組合驗(yàn)證子系統(tǒng)中的組件證書(shū)分析器進(jìn)行調(diào)用,讀取證書(shū)中關(guān)于組件輸入輸出及其相應(yīng)安全級(jí)的信息。
[0038]相應(yīng)地,本發(fā)明還給出了一種基于嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng)的方法,該方法包括下述步驟:
[0039](I)用戶(hù)通過(guò)Promela語(yǔ)言編輯器輸入待驗(yàn)證嵌入式系統(tǒng)的組件描述;
[0040](2) Promela語(yǔ)言編譯器對(duì)輸入的組件描述進(jìn)行編譯,生成檢測(cè)可執(zhí)行文件;編譯成功,執(zhí)行步驟(3);若編譯錯(cuò)誤,返回步驟(I)對(duì)組件輸入進(jìn)行修改;
[0041](3)用戶(hù)通過(guò)Assert語(yǔ)言編輯器輸入組件信息流安全斷言;
[0042](4)結(jié)合生成的可執(zhí)行文件和安全斷言,模型檢測(cè)驗(yàn)證引擎開(kāi)始進(jìn)行驗(yàn)證;若驗(yàn)證成功,執(zhí)行步驟(3);若驗(yàn)證失敗,跳轉(zhuǎn)至步驟(12);
[0043](5)生成組件證書(shū)并存儲(chǔ)至組件證書(shū)庫(kù)中;
[0044](6)判斷嵌入式系統(tǒng)中的所有組件驗(yàn)證是否完成,若未完成,返回步驟(I)繼續(xù)下一組件驗(yàn)證;若已完成,執(zhí)行步驟(7);
[0045](7)用戶(hù)通過(guò)組合關(guān)系編輯器輸入待驗(yàn)證嵌入式系統(tǒng)組件間的組合關(guān)系;
[0046](8)驗(yàn)證條件生成器根據(jù)組合關(guān)系生成相鄰組件間信息流安全驗(yàn)證條件;
[0047](9)組件證書(shū)分析器讀取驗(yàn)證所需的組件證書(shū);
[0048](10)可組合信息流安全驗(yàn)證引擎驗(yàn)證組件間信息流安全性;若驗(yàn)證成功,執(zhí)行步驟(11);若驗(yàn)證失敗,執(zhí)行步驟(12);
[0049](11)輸出驗(yàn)證成功結(jié)果,執(zhí)行步驟(13);
[0050](12)將出錯(cuò)信息報(bào)告?zhèn)鬏斨潦〗Y(jié)果分析器,輸出失敗反例;
[0051](13)驗(yàn)證工作結(jié)束。
[0052]在嵌入式系統(tǒng)中,本發(fā)明所涉及的安全性主要關(guān)注實(shí)時(shí)數(shù)據(jù)和系統(tǒng)配置的認(rèn)證性和完整性、以及系統(tǒng)禁止對(duì)信息或服務(wù)進(jìn)行非授權(quán)訪(fǎng)問(wèn)的能力,相應(yīng)的安全策略必須規(guī)定哪些進(jìn)程可以讀取或修改實(shí)時(shí)數(shù)據(jù)并使用服務(wù),對(duì)應(yīng)的安全模型為信息流安全模型。實(shí)際上,在嵌入式軟件環(huán)境下,系統(tǒng)關(guān)鍵任務(wù)通常對(duì)信息流安全性有嚴(yán)格要求,因而信息流安全是嵌入式軟件安全性需要考慮的重要問(wèn)題。一般意義上的信息流安全研究多級(jí)安全環(huán)境下高安全級(jí)機(jī)密信息向低安全級(jí)環(huán)境釋放的合法性及釋放方式問(wèn)題,它定義了信息安全地通過(guò)系統(tǒng)并最終流向外部的流動(dòng)方式,要求對(duì)機(jī)密信息具有特定訪(fǎng)問(wèn)權(quán)限的主體不會(huì)以不恰當(dāng)?shù)姆绞綄C(jī)密信息泄露給未被授權(quán)接收該信息的主體,或來(lái)自低完整性數(shù)據(jù)源的信息不會(huì)流向高完整性主體。因此,本發(fā)明以組件化嵌入式軟件的安全性問(wèn)題以多級(jí)安全環(huán)境下的信息流安全問(wèn)題為核心。
[0053]模型檢測(cè)是一種通過(guò)對(duì)軟件建模和符號(hào)執(zhí)行來(lái)檢測(cè)軟件設(shè)計(jì)是否滿(mǎn)足屬性需求的驗(yàn)證方法,現(xiàn)廣泛應(yīng)用于軟件屬性的驗(yàn)證。本發(fā)明從原理上講采用模型檢測(cè)方法來(lái)對(duì)信息流的安全屬性進(jìn)行驗(yàn)證,針對(duì)傳統(tǒng)模型檢測(cè)方法中存在的對(duì)大規(guī)模的組合嵌入式系統(tǒng)建模困難,驗(yàn)證開(kāi)銷(xiāo)大的缺點(diǎn),結(jié)合信息流安全可組合定理,提出了一種可組合的嵌入式軟件驗(yàn)證方法,從而保障組合嵌入式系統(tǒng)的信息流安全屬性。
[0054]本發(fā)明的有益效果包括以下兩個(gè)方面:
[0055]I)首先,提出一種針對(duì)嵌入式軟件中安全屬性的驗(yàn)證方法,實(shí)現(xiàn)了對(duì)嵌入式系統(tǒng)軟件中信息流安全的保護(hù),防止高安全級(jí)的信息通過(guò)低安全級(jí)對(duì)象泄露給攻擊者,保證了嵌入式軟件運(yùn)行的安全;
[0056]2)另一方面,對(duì)基于模型檢測(cè)的嵌入式軟件信息流安全驗(yàn)證進(jìn)行改進(jìn),在保證驗(yàn)證精確性的同時(shí),結(jié)合嵌入式軟件組合的特點(diǎn),通過(guò)分離組件驗(yàn)證和組合驗(yàn)證過(guò)程,實(shí)現(xiàn)了低耦合,增量式的驗(yàn)證方法,從而減小了系統(tǒng)整體建模的復(fù)雜度和驗(yàn)證的開(kāi)銷(xiāo);此外,通過(guò)建立組件證書(shū)庫(kù),簡(jiǎn)化了對(duì)重用組件的驗(yàn)證過(guò)程,進(jìn)一步減小了驗(yàn)證的開(kāi)銷(xiāo)。
【專(zhuān)利附圖】

【附圖說(shuō)明】
[0057]圖1是本發(fā)明系統(tǒng)框圖。
[0058]圖2是本發(fā)明組件內(nèi)信息流驗(yàn)證方法流程圖。
[0059]圖3是本發(fā)明組件間可組合信息流驗(yàn)證方法流程圖。
[0060]圖4是本發(fā)明嵌入式軟件的信息流驗(yàn)證方法的總體流程圖。
【具體實(shí)施方式】
[0061]下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明做進(jìn)一步說(shuō)明。
[0062]如圖1所示,該嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng)包括組件驗(yàn)證子系統(tǒng)、組件證書(shū)庫(kù)、可組合驗(yàn)證子系統(tǒng)三個(gè)部分。組件驗(yàn)證子系統(tǒng)負(fù)責(zé)對(duì)嵌入式軟件中設(shè)計(jì)實(shí)現(xiàn)的不同組件中的信息流安全屬性進(jìn)行驗(yàn)證,驗(yàn)證結(jié)果以證書(shū)形式進(jìn)行表示并存儲(chǔ)在相應(yīng)的組件證書(shū)庫(kù)中;可組合驗(yàn)證子系統(tǒng)則根據(jù)嵌入式軟件中不同組件間的組合關(guān)系,通過(guò)信息流安全可組合條件對(duì)相鄰的組件間信息流進(jìn)行驗(yàn)證,保證組合后信息流安全。下面對(duì)不同子系統(tǒng)的構(gòu)成以及工作流程進(jìn)行細(xì)述。
[0063]1.組件驗(yàn)證子系統(tǒng)
[0064]組件驗(yàn)證子系統(tǒng)以模型檢測(cè)引擎為核心,Promela作為嵌入式軟件組件的輸入描述語(yǔ)言,采用模型自合成方法對(duì)嵌入式軟件中的每個(gè)組件中的信息流進(jìn)行驗(yàn)證。該組件驗(yàn)證子系統(tǒng)中包含了 Promela語(yǔ)言編輯器、Promela語(yǔ)言編譯器、Assert斷言編輯器和模型檢測(cè)驗(yàn)證引擎四個(gè)部分。
[0065]I) Promela語(yǔ)言編輯器
[0066]Promela語(yǔ)言編輯器向用戶(hù)提供了對(duì)輸入的嵌入式軟件組件描述的接口,用戶(hù)通過(guò)圖形化可視界面對(duì)輸入的組件進(jìn)行建模和描述。作為與用戶(hù)交互的界面,同時(shí)提供了文件管理、文本編輯、Assert斷言編輯器、編譯及運(yùn)行接口 ;
[0067]文件管理功能包括新文件創(chuàng)建、打開(kāi)、保存和系統(tǒng)退出,文件以文本模式存儲(chǔ)在系統(tǒng)工程文件夾下,并采用后綴名.model標(biāo)識(shí);
[0068]文本編輯功能包括文本查找和替換;
[0069]Assert斷言編輯器接口則調(diào)用生成新的Assert編輯窗口 ;
[0070]編譯接口調(diào)用Promela語(yǔ)言編譯器完成語(yǔ)言編譯功能;
[0071]運(yùn)行接口調(diào)用模型檢測(cè)驗(yàn)證引擎完成模型驗(yàn)證運(yùn)行功能。
[0072]2) Promela語(yǔ)言編譯器
[0073]Promela語(yǔ)言編譯器是驗(yàn)證系統(tǒng)將用戶(hù)輸入的模型進(jìn)行編譯,生成可執(zhí)行程序,然后交給模型檢測(cè)驗(yàn)證引擎進(jìn)行驗(yàn)證。Promela語(yǔ)言編譯器主要檢測(cè)模型描述中是否存在語(yǔ)法錯(cuò)誤,接收Promela語(yǔ)言編輯器提交的模型輸入,并按照Promela語(yǔ)法規(guī)則對(duì)該模型輸入進(jìn)行檢測(cè),若存在語(yǔ)法錯(cuò)誤,返回該錯(cuò)誤類(lèi)型和地址;若無(wú)錯(cuò)誤,則編譯成可執(zhí)行文件;并生成模型檢測(cè)驗(yàn)證引擎可以執(zhí)行的程序,以后綴名.exec標(biāo)識(shí)。
[0074]3) Assert斷言編輯器
[0075]Assert斷言編輯器采用對(duì)話(huà)框圖形化界面接收用戶(hù)輸入,并存入輸入模型的描述文件中,在運(yùn)行時(shí)有模型檢測(cè)驗(yàn)證引擎調(diào)用讀取;
[0076]Assert斷言描述了對(duì)程序?qū)傩则?yàn)證進(jìn)行判定的條件,用戶(hù)根據(jù)實(shí)際系統(tǒng)信息流安全需求輸入不同數(shù)量的斷言的條件表達(dá)式,不同表達(dá)式通過(guò)“與”和“或”操作符連接。
[0077]“與”操作符,當(dāng)兩個(gè)條件表達(dá)式同時(shí)為真時(shí)返回真,否則為假。
[0078]“或”操作符,當(dāng)兩個(gè)條件表達(dá)式中任一為真即返回真,否則為假。
[0079]4)模型檢測(cè)驗(yàn)證引擎
[0080]模型檢測(cè)驗(yàn)證引擎負(fù)責(zé)調(diào)用編譯通過(guò)的可執(zhí)行文件,提供了編譯后的驗(yàn)證程序的運(yùn)行環(huán)境,并結(jié)合Assert斷言檢測(cè)模型執(zhí)行過(guò)程中是否符合信息流安全要求;對(duì)運(yùn)行過(guò)程中的程序變量進(jìn)行實(shí)時(shí)的斷言判定,若程序執(zhí)行過(guò)程中滿(mǎn)足所有斷言,結(jié)合組件描述生成組件證書(shū),返回驗(yàn)證成功結(jié)果;當(dāng)不滿(mǎn)足斷言條件時(shí),返回驗(yàn)證失敗結(jié)果,將出錯(cuò)的信息報(bào)告給失敗結(jié)果分析器。
[0081]組件驗(yàn)證子系統(tǒng)工作流程如圖2所示,具體包含以下4步:
[0082]I)模型輸入:用戶(hù)采用Promela語(yǔ)言對(duì)高級(jí)語(yǔ)言編寫(xiě)好的被驗(yàn)證系統(tǒng)的組件程序進(jìn)行描述。
[0083]2)模型預(yù)處理:用戶(hù)對(duì)建模好的程序P進(jìn)行自合成處理,生成P*,具體包括:
[0084]a.復(fù)制輸入程序P,生成P’,即將所有變量重新命名,程序流程不變;
[0085]b.對(duì)初始狀態(tài)下對(duì)P和P’中的所有低安全級(jí)輸入變量逐一交叉賦值。
[0086]3) assert斷言輸入:結(jié)合嵌入式軟件信息流安全需求,斷言表達(dá)式的條件為P和P’中所有低安全級(jí)的輸出值相等。
[0087]4)模型檢測(cè):對(duì)輸入模型進(jìn)行編譯,生成可執(zhí)行的被驗(yàn)證程序,將斷言條件加入模型檢測(cè)引擎,檢測(cè)引擎調(diào)用執(zhí)行被驗(yàn)證程序,并在程序運(yùn)行過(guò)程中實(shí)時(shí)檢測(cè)程序是否滿(mǎn)足斷言描述。
[0088]2.組件證書(shū)庫(kù)
[0089]組件證書(shū)庫(kù)包括與系統(tǒng)證書(shū)導(dǎo)入相接的證書(shū)儲(chǔ)存單元、證書(shū)存儲(chǔ)單元分別連接至證書(shū)生成接口模塊和證書(shū)讀取接口模塊,證書(shū)生成接口模塊連接至組件驗(yàn)證子系統(tǒng),證書(shū)讀取接口模塊連接至可組合驗(yàn)證子系統(tǒng)。證書(shū)生成接口模塊由模型檢測(cè)驗(yàn)證引擎進(jìn)行調(diào)用,當(dāng)組件驗(yàn)證通過(guò)后,模型檢測(cè)引擎結(jié)合組件描述信息調(diào)用該接口生成證書(shū)并存儲(chǔ)在證書(shū)存儲(chǔ)單元中;證書(shū)讀取接口模塊由可組合驗(yàn)證子系統(tǒng)中的組件證書(shū)分析器進(jìn)行調(diào)用,讀取證書(shū)中關(guān)于組件輸入輸出及其相應(yīng)安全級(jí)的信息。
[0090]組件驗(yàn)證通過(guò)后,生成驗(yàn)證通過(guò)的證書(shū)并存儲(chǔ)在組件證書(shū)庫(kù)中,用于在組合過(guò)程中的信息流安全驗(yàn)證。
[0091]驗(yàn)證證書(shū)采用xml格式表示,以xml文件形式存儲(chǔ)在磁盤(pán)中,同時(shí)提供證書(shū)導(dǎo)入\導(dǎo)出功能,實(shí)現(xiàn)證書(shū)的可遷移;包含組件信息、組合后的嵌入式軟件信息、組件輸入、輸出集合以及輸入輸出與安全級(jí)的映射;此外,在證書(shū)最后還包含了驗(yàn)證工具采用自身私鑰的簽名,防止攻擊者偽造組件證書(shū)。[0092]證書(shū)生成完成后,所有文件存儲(chǔ)在系統(tǒng)工程文件的cert文件夾下,并建立相應(yīng)的索引數(shù)據(jù)庫(kù),便于日后的查找和更新。建立證書(shū)庫(kù)的優(yōu)勢(shì)在于,當(dāng)此組件在其他嵌入式軟件中重復(fù)使用時(shí),可無(wú)需再次對(duì)組件自身進(jìn)行驗(yàn)證,組合驗(yàn)證子系統(tǒng)結(jié)合其組合關(guān)系可直接進(jìn)行組件間驗(yàn)證即可。且證書(shū)可以通過(guò)導(dǎo)入形式引入組件庫(kù),便于在不同驗(yàn)證系統(tǒng)間組件驗(yàn)證結(jié)果的共享和使用。
[0093]3.可組合驗(yàn)證子系統(tǒng)
[0094]可組合驗(yàn)證子系統(tǒng)以可組合信息流安全驗(yàn)證引擎為核心,包括組合關(guān)系編輯器、驗(yàn)證條件生成器和組件證書(shū)分析器三個(gè)外圍支撐模塊。還包括一可組合信息流安全驗(yàn)證引擎。組合關(guān)系編輯器連接驗(yàn)證條件生成器,驗(yàn)證條件生成器和組件證書(shū)分析器分別連接至可組合信息流安全驗(yàn)證引擎,可組合信息流安全驗(yàn)證引擎和組件證書(shū)分析器將驗(yàn)證信息分別輸出至組件證書(shū)庫(kù)和失敗結(jié)果分析器。
[0095]I)組合關(guān)系編輯器
[0096]組合關(guān)系編輯器采用文本框的圖形化界面接收用戶(hù)輸入,并提供文件管理、文本編輯及運(yùn)行驗(yàn)證接口 ;文件管理包括新文件創(chuàng)建、打開(kāi)和保存和編輯器關(guān)閉;文本編輯功能包括文本查找和替換;運(yùn)行驗(yàn)證接口將調(diào)用驗(yàn)證條件生成器和可組合信息流安全驗(yàn)證引擎完成驗(yàn)證工作,在運(yùn)行之前以對(duì)話(huà)框形式要求用戶(hù)手動(dòng)輸入?yún)⑴c組合驗(yàn)證組件的證書(shū)文件的路徑。
[0097]組合關(guān)系編輯器負(fù)責(zé)對(duì)嵌入式軟件中各組件間的組合關(guān)系進(jìn)行描述,在此采用BPEL業(yè)務(wù)流程成語(yǔ)言實(shí)現(xiàn)對(duì)其的描述,支持順序、條件、并行以及循環(huán)4種基本的組合結(jié)構(gòu)。
[0098]2)驗(yàn)證條件生成器
[0099]通過(guò)接收BPEL描述好的組件間的組合關(guān)系,驗(yàn)證條件生成器生成相應(yīng)的組件驗(yàn)證條件:在任意相鄰的兩個(gè)組件間,前一組件的輸出的安全級(jí)不低于后一組件接收該輸出的輸入的安全級(jí)。
[0100]3)組件證書(shū)分析器
[0101]組件證書(shū)分析器負(fù)責(zé)從組件證書(shū)庫(kù)中讀取相應(yīng)組件的證書(shū),并分解其中關(guān)于組件輸入輸出及其對(duì)應(yīng)安全級(jí)的信息,存入相應(yīng)的變量中,供可組合信息流安全驗(yàn)證引擎使用。在讀取過(guò)程中,分析器首先需要通過(guò)驗(yàn)證系統(tǒng)的簽名來(lái)證明證書(shū)的有效性。
[0102]4)可組合信息流安全驗(yàn)證引擎
[0103]可組合信息流安全驗(yàn)證引擎根據(jù)生成的驗(yàn)證條件,結(jié)合組件提供的輸入輸出信息進(jìn)行自動(dòng)化驗(yàn)證。接收輸入包括各組件證書(shū)、信息流安全驗(yàn)證條件;若驗(yàn)證成功,輸出驗(yàn)證通過(guò)結(jié)果;若驗(yàn)證失敗,將出錯(cuò)的信息報(bào)告給失敗結(jié)果分析器。
[0104]該可組合驗(yàn)證子系統(tǒng)工作流程如圖3所示,具體包含以下幾個(gè)步驟:
[0105]I)采用BPEL語(yǔ)言描述嵌入式軟件中各組件的組合關(guān)系;
[0106]2)根據(jù)描述的組合關(guān)系生成順序組合驗(yàn)證條件;
[0107]3)可組合信息流安全驗(yàn)證引擎通過(guò)組件證書(shū)分析器讀取需要驗(yàn)證組件的證書(shū)信息;
[0108]4)結(jié)合組件輸入輸出及其對(duì)應(yīng)的安全級(jí)信息,驗(yàn)證其是否滿(mǎn)足信息流安全組合條件,即該組件接收前一組件輸出的輸入的安全級(jí)大于等于前一組件輸出的安全級(jí)。若不滿(mǎn)足,返回驗(yàn)證失敗結(jié)果,并交給失敗結(jié)果分析器,輸出相應(yīng)的反例;若滿(mǎn)足,則繼續(xù)執(zhí)行;
[0109]5)判定該組件是否是驗(yàn)證的最后一個(gè)組件,若不是,返回步驟3);若是,輸出驗(yàn)證成功結(jié)果。
[0110]下面給出本發(fā)明嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng)的方法,見(jiàn)圖4所示,該方法包括下述步驟:
[0111](I)用戶(hù)通過(guò)Promela語(yǔ)言編輯器輸入待驗(yàn)證嵌入式系統(tǒng)的組件描述;
[0112](2) Promela語(yǔ)言編譯器對(duì)輸入的組件描述進(jìn)行編譯,生成檢測(cè)可執(zhí)行文件;編譯成功,執(zhí)行步驟(3);若編譯錯(cuò)誤,返回步驟(I)對(duì)組件輸入進(jìn)行修改;
[0113](3)用戶(hù)通過(guò)Assert語(yǔ)言編輯器輸入組件信息流安全斷言;
[0114](4)結(jié)合生成的可執(zhí)行文件和安全斷言,模型檢測(cè)驗(yàn)證引擎開(kāi)始進(jìn)行驗(yàn)證;若驗(yàn)證成功,執(zhí)行步驟(3);若驗(yàn)證失敗,跳轉(zhuǎn)至步驟(12);
[0115](5)生成組件證書(shū)并存儲(chǔ)至組件證書(shū)庫(kù)中;
[0116](6)判斷嵌入式系統(tǒng)中的所有組件驗(yàn)證是否完成,若未完成,返回步驟(I)繼續(xù)下一組件驗(yàn)證;若已完成,執(zhí)行步驟(7);
[0117](7)用戶(hù)通過(guò)組合關(guān)系編輯器輸入待驗(yàn)證嵌入式系統(tǒng)組件間的組合關(guān)系;
[0118](8)驗(yàn)證條件生成器根據(jù)組合關(guān)系生成相鄰組件間信息流安全驗(yàn)證條件;
[0119](9)組件證書(shū)分析器讀取驗(yàn)證所需的組件證書(shū);
[0120](10)可組合信息流安全驗(yàn)證引擎驗(yàn)證組件間信息流安全性;若驗(yàn)證成功,執(zhí)行步驟(11);若驗(yàn)證失敗,執(zhí)行步驟(12);
[0121](11)輸出驗(yàn)證成功結(jié)果,執(zhí)行步驟(13);
[0122](12)將出錯(cuò)信息報(bào)告?zhèn)鬏斨潦〗Y(jié)果分析器,輸出失敗反例;
[0123](13)驗(yàn)證工作結(jié)束。
【權(quán)利要求】
1.一種嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng),其特征在于,包括: —組件驗(yàn)證子系統(tǒng),用于對(duì)嵌入式系統(tǒng)中單一組件的信息流安全屬性進(jìn)行驗(yàn)證;—可組合驗(yàn)證子系統(tǒng),用于對(duì)存在組合關(guān)系的組件間的信息流安全屬性進(jìn)行驗(yàn)證;—組件證書(shū)庫(kù),用于存儲(chǔ)驗(yàn)證通過(guò)的組件驗(yàn)證證書(shū),并向用戶(hù)、組件驗(yàn)證子系統(tǒng)及組合驗(yàn)證子系統(tǒng)提供證書(shū)更新、調(diào)用接口 ; —失敗結(jié)果分析器,用于接收驗(yàn)證引擎輸出的失敗原因,將嵌入式系統(tǒng)中失敗的反例輸出給用戶(hù),指導(dǎo)用戶(hù)修改嵌入式系統(tǒng)設(shè)計(jì); 所述組件驗(yàn)證子系統(tǒng)和可組合驗(yàn)證子系統(tǒng)分別連接組件證書(shū)庫(kù)和失敗結(jié)果分析器,組件證書(shū)庫(kù)與系統(tǒng)證書(shū)導(dǎo)入相接,失敗結(jié)果分析器輸出系統(tǒng)反例。
2.根據(jù)權(quán)利要求1所述的嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng),其特征在于,所述組件驗(yàn)證子系統(tǒng)包括Promela語(yǔ)言編輯器、Promela語(yǔ)言編譯器、Assert斷言編輯器和模型檢測(cè)驗(yàn)證引擎,所述Promela語(yǔ)言編輯器連接Promela語(yǔ)言編譯器,Promela語(yǔ)言編譯器和Assert斷言編輯器分別連接至模型檢測(cè)驗(yàn)證引擎,模型檢測(cè)驗(yàn)證引擎將驗(yàn)證信息分別輸出至組件證書(shū)庫(kù)和失敗結(jié)果分析器。
3.根據(jù)權(quán)利要求2所述的嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng),其特征在于,所述Promela語(yǔ)言編輯器采用文本框的圖形化界面接收用戶(hù)輸入,并提供文件管理、文本編輯、Assert斷言編輯器、編譯及運(yùn)行接口 ; 所述文件管理包括新文件創(chuàng)建、打開(kāi)、保存和系統(tǒng)退出; 所述文本編輯包括文本查找和替換; 所述Assert斷言編輯器接口 則調(diào)用生成新的Assert編輯窗口 ; 所述編譯及運(yùn)行接口則分別調(diào)用Promela語(yǔ)言編譯器和模型檢測(cè)驗(yàn)證引擎完成模型編譯及驗(yàn)證運(yùn)行。
4.根據(jù)權(quán)利要求2所述的嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng),其特征在于,所述PiOmela語(yǔ)言編譯器接收Promela語(yǔ)言編輯器提交的模型輸入,并按照Promela語(yǔ)法規(guī)則對(duì)該模型輸入進(jìn)行檢測(cè),若存在語(yǔ)法錯(cuò)誤,返回該錯(cuò)誤類(lèi)型和地址;若無(wú)錯(cuò)誤,則編譯成可執(zhí)行文件; 所述Assert斷言編輯器采用對(duì)話(huà)框圖形化界面接收用戶(hù)輸入,并存入輸入模型的描述文件中,在運(yùn)行時(shí)有模型檢測(cè)驗(yàn)證引擎調(diào)用讀取; 所述模型檢測(cè)驗(yàn)證引擎負(fù)責(zé)調(diào)用編譯通過(guò)的可執(zhí)行文件,并結(jié)合Assert斷言檢測(cè)模型執(zhí)行過(guò)程中是否符合信息流安全要求;若驗(yàn)證通過(guò),結(jié)合組件描述生成組件證書(shū);若驗(yàn)證失敗,將出錯(cuò)的信息報(bào)告給失敗結(jié)果分析器。
5.根據(jù)權(quán)利要求1所述的嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng),其特征在于,所述可組合驗(yàn)證子系統(tǒng)包括組合關(guān)系編輯器、驗(yàn)證條件生成器、組件證書(shū)分析器和可組合信息流安全驗(yàn)證引擎,所述組合關(guān)系編輯器連接驗(yàn)證條件生成器,驗(yàn)證條件生成器和組件證書(shū)分析器分別連接至可組合信息流安全驗(yàn)證引擎,可組合信息流安全驗(yàn)證引擎和組件證書(shū)分析器將驗(yàn)證信息分別輸出至組件證書(shū)庫(kù)和失敗結(jié)果分析器。
6.根據(jù)權(quán)利要求5所述的嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng),其特征在于,所述組合關(guān)系編輯器采用文本框的圖形化界面接收用戶(hù)輸入,并提供文件管理、文本編輯及運(yùn)行驗(yàn)證接口 ;所述文件管理包括新文件創(chuàng)建、打開(kāi)和保存和編輯器關(guān)閉; 所述文本編輯功能包括文本查找和替換; 所述運(yùn)行驗(yàn)證接口將調(diào)用驗(yàn)證條件生成器和可組合信息流安全驗(yàn)證引擎完成驗(yàn)證工作,在運(yùn)行之前以對(duì)話(huà)框形式要求用戶(hù)手動(dòng)輸入?yún)⑴c組合驗(yàn)證組件的證書(shū)文件的路徑。
7.根據(jù)權(quán)利要求5所述的嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng),其特征在于,所述驗(yàn)證條件生成器接收BPEL語(yǔ)言描述的組合關(guān)系;生成相鄰組件間保證信息流安全的驗(yàn)證條件; 所述組件證書(shū)分析器根據(jù)用戶(hù)輸入的組件證書(shū)路徑讀取相應(yīng)的證書(shū)交給驗(yàn)證引擎進(jìn)行驗(yàn)證; 所述可組合信息流驗(yàn)證引擎根據(jù)組件間信息流安全驗(yàn)證條件以及組件證書(shū)對(duì)組件間的信息傳遞過(guò)程進(jìn)行驗(yàn)證;若驗(yàn)證成功,輸出驗(yàn)證通過(guò)結(jié)果;若驗(yàn)證失敗,將出錯(cuò)的信息報(bào)告給失敗結(jié)果分析器。
8.根據(jù)權(quán)利要求1所述的嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng),其特征在于,所述組件證書(shū)庫(kù)包括與系統(tǒng)證書(shū)導(dǎo)入相接的證書(shū)儲(chǔ)存單元、證書(shū)存儲(chǔ)單元分別連接至證書(shū)生成接口模塊和證書(shū)讀取接口模塊,證書(shū)生成接口模塊連接至組件驗(yàn)證子系統(tǒng),證書(shū)讀取接口模塊連接至可組合驗(yàn)證子系統(tǒng)。
9.根據(jù)權(quán)利要求8所述的嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng),其特征在于,所述組件證書(shū)存儲(chǔ)單元將生成的組件證書(shū)以xml文件形式存儲(chǔ)在磁盤(pán)中,同時(shí)提供證書(shū)導(dǎo)入\導(dǎo)出功能,實(shí)現(xiàn)證書(shū)的可遷移; 所述證書(shū)生成接口模塊由模型檢測(cè)驗(yàn)證引擎進(jìn)行調(diào)用,當(dāng)組件驗(yàn)證通過(guò)后,模型檢測(cè)引擎結(jié)合組件描述信息調(diào)用該接口生成證書(shū)并存儲(chǔ)在證書(shū)存儲(chǔ)單元中;` 所述證書(shū)讀取接口模塊由可組合驗(yàn)證子系統(tǒng)中的組件證書(shū)分析器進(jìn)行調(diào)用,讀取證書(shū)中關(guān)于組件輸入輸出及其相應(yīng)安全級(jí)的信息。
10.一種基于嵌入式軟件的可組合信息流驗(yàn)證系統(tǒng)的方法,其特征在于,該方法包括下述步驟: (1)用戶(hù)通過(guò)Promela語(yǔ)言編輯器輸入待驗(yàn)證嵌入式系統(tǒng)的組件描述; (2)Promela語(yǔ)言編譯器對(duì)輸入的組件描述進(jìn)行編譯,生成檢測(cè)可執(zhí)行文件;編譯成功,執(zhí)行步驟(3);若編譯錯(cuò)誤,返回步驟(1)對(duì)組件輸入進(jìn)行修改; (3)用戶(hù)通過(guò)Assert語(yǔ)言編輯器輸入組件信息流安全斷言; (4)結(jié)合生成的可執(zhí)行文件和安全斷言,模型檢測(cè)驗(yàn)證引擎開(kāi)始進(jìn)行驗(yàn)證;若驗(yàn)證成功,執(zhí)行步驟(3);若驗(yàn)證失敗,跳轉(zhuǎn)至步驟(12); (5)生成組件證書(shū)并存儲(chǔ)至組件證書(shū)庫(kù)中; (6)判斷嵌入式系統(tǒng)中的所有組件驗(yàn)證是否完成,若未完成,返回步驟(1)繼續(xù)下一組件驗(yàn)證;若已完成,執(zhí)彳丁步驟(7); (7)用戶(hù)通過(guò)組合關(guān)系編輯器輸入待驗(yàn)證嵌入式系統(tǒng)組件間的組合關(guān)系; (8)驗(yàn)證條件生成器根據(jù)組合關(guān)系生成相鄰組件間信息流安全驗(yàn)證條件; (9)組件證書(shū)分析器讀取驗(yàn)證所需的組件證書(shū); (10)可組合信息流安全驗(yàn)證引擎驗(yàn)證組件間信息流安全性;若驗(yàn)證成功,執(zhí)行步驟(11);若驗(yàn)證失敗,執(zhí)行步驟(12);(11)輸出驗(yàn)證成功結(jié)果,執(zhí)行步驟(13);(12)將出錯(cuò)信息報(bào)告?zhèn)鬏斨潦〗Y(jié)果分析器,輸出失敗反例; (13)驗(yàn)證工作結(jié)束。
【文檔編號(hào)】G06F11/36GK103488570SQ201310462831
【公開(kāi)日】2014年1月1日 申請(qǐng)日期:2013年9月29日 優(yōu)先權(quán)日:2013年9月29日
【發(fā)明者】習(xí)寧, 馬建峰, 孫聰, 李亞暉, 牛文生, 張濤, 宣杭, 郭鵬 申請(qǐng)人:西安電子科技大學(xué), 中國(guó)航空工業(yè)集團(tuán)公司第六三一研究所
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
峨边| 施秉县| 双桥区| 西乌珠穆沁旗| 武宣县| 荥阳市| 富源县| 贵阳市| 都安| 且末县| 石楼县| 尚志市| 酉阳| 临漳县| 印江| 东台市| 呼和浩特市| 清远市| 邵阳市| 镶黄旗| 曲靖市| 靖安县| 沅陵县| 武功县| 梅州市| 大渡口区| 响水县| 新民市| 且末县| 平和县| 和平区| 建水县| 吉林省| 温泉县| 梨树县| 安新县| 勐海县| 道孚县| 东源县| 肥乡县| 肥城市|