一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法及裝置制造方法
【專利摘要】本發(fā)明公開(kāi)一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法及裝置,包括外部殼體和內(nèi)部電路模塊兩部分,內(nèi)部電路模塊包括:分別與MCU模塊連接的加密解密模塊、閃存模塊、RAM模塊、USB接口豐旲塊、串口検塊和顯不検塊,以及連接在串口検塊上的3G移動(dòng)通信模塊。裝置以不可繞過(guò)方式對(duì)虛擬儀器測(cè)量軟件進(jìn)行有效監(jiān)控,執(zhí)行用戶身份認(rèn)證、測(cè)量軟件保護(hù)、標(biāo)定參數(shù)保護(hù)與操作日志記錄等工作,將虛擬儀器工作狀況實(shí)時(shí)發(fā)送給后臺(tái)監(jiān)控中心,保證了虛擬儀器始終運(yùn)行經(jīng)過(guò)檢定的測(cè)量軟件,以預(yù)期方式執(zhí)行測(cè)量功能,保證了虛擬儀器測(cè)量過(guò)程的準(zhǔn)確性和可靠性。
【專利說(shuō)明】一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法及裝置
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種可與虛擬儀器共同使用的增強(qiáng)虛擬儀器測(cè)量軟件計(jì)量支持方法 及裝置,屬于虛擬儀器和計(jì)量領(lǐng)域。
【背景技術(shù)】
[0002] 虛擬儀器以通用計(jì)算機(jī)或嵌入式計(jì)算機(jī)為計(jì)算平臺(tái),以模塊化硬件為采集設(shè)備, 利用軟件實(shí)現(xiàn)靈活強(qiáng)大的計(jì)量功能。其功能靈活、體積小、開(kāi)發(fā)周期短、開(kāi)發(fā)成本低,在計(jì) 量、測(cè)量和控制領(lǐng)域得到了廣泛的應(yīng)用。
[0003] 虛擬儀器使用時(shí),作為其基礎(chǔ)的軟件自身具有先天的脆弱性,當(dāng)虛擬儀器工作于 貿(mào)易結(jié)算、安全防護(hù)、環(huán)境監(jiān)測(cè)、法定評(píng)價(jià)、公正計(jì)算等場(chǎng)合時(shí),容易遭受非法篡改軟件、計(jì) 量參數(shù)和非正常操作的攻擊,使得測(cè)控結(jié)果發(fā)生偏差,甚至發(fā)生錯(cuò)誤,給虛擬儀器的正常使 用帶來(lái)較大麻煩。
[0004] 在測(cè)控領(lǐng)域,0ML與WELMEC等國(guó)際計(jì)量機(jī)構(gòu)關(guān)注于測(cè)控儀器的可靠性和完整性 保護(hù)等軟件特性,提出了基于測(cè)控儀器軟件保護(hù)需求、保護(hù)方法、可靠性保證和軟件質(zhì)量評(píng) 測(cè)的建議,其中,就覆蓋了虛擬儀器。雖然NI等對(duì)其自身和第三方發(fā)布的測(cè)量控件和組件 進(jìn)行了較嚴(yán)格的測(cè)試和質(zhì)量把關(guān),但由于采用不同方式和技術(shù)構(gòu)造虛擬儀器目前尚無(wú)嚴(yán)格 規(guī)范,針對(duì)虛擬儀器軟件的可靠性保證和評(píng)測(cè)的可操作方法研究尚未得到人們的重視,同 時(shí),發(fā)行使用的虛擬儀器軟件系統(tǒng)通常是在一個(gè)黑盒子中,也難以對(duì)其可靠性進(jìn)行有效評(píng) 測(cè)。
[0005] 軟件質(zhì)量保證是一項(xiàng)系統(tǒng)工程,涉及軟件設(shè)計(jì)、開(kāi)發(fā)、使用、管理、維護(hù)和評(píng)價(jià)等各 個(gè)方面,采用技術(shù)手段對(duì)虛擬儀器軟件進(jìn)行計(jì)量保護(hù)和監(jiān)管,使其按照管理部門認(rèn)可的精 度和性能正確工作,是虛擬儀器應(yīng)用和推廣的必然要求。
[0006] 近年來(lái),迅逨發(fā)展的可信計(jì)算技術(shù)從計(jì)算機(jī)硬件平臺(tái)與底層軟件開(kāi)始,對(duì)系統(tǒng)軟 件、應(yīng)用軟件、文件系統(tǒng)的完整性進(jìn)行了有效監(jiān)測(cè)與驗(yàn)證,為虛擬儀器中關(guān)鍵測(cè)量軟件完整 性保護(hù)提供了一種可行途徑。本發(fā)明所述的一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法及 裝置就是基于此類技術(shù)而設(shè)計(jì)的。
【發(fā)明內(nèi)容】
[0007] 鑒于上述情況,本發(fā)明旨在提供一種可防止虛擬儀器測(cè)量軟件被非授權(quán)篡改,保 證虛擬儀器以預(yù)期方式可信工作的增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法及裝置,以滿足 實(shí)際應(yīng)用的需要,保證計(jì)量可靠性。
[0008] 為使虛擬儀器具備測(cè)量軟件、標(biāo)定參數(shù)完整性狀態(tài)檢測(cè)能力,保證運(yùn)行經(jīng)過(guò)檢定 而未經(jīng)篡改的測(cè)量軟件,執(zhí)行測(cè)量計(jì)量功能,及時(shí)檢驗(yàn)遭受更改、破壞的測(cè)量軟件、標(biāo)定參 數(shù),報(bào)告用戶異常測(cè)量操作,現(xiàn)發(fā)明了一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法及裝置, 對(duì)虛擬儀器的啟動(dòng)過(guò)程進(jìn)行控制,對(duì)關(guān)鍵測(cè)量模塊與標(biāo)定參數(shù)進(jìn)行保護(hù),對(duì)用戶操作進(jìn)行 監(jiān)控。具體技術(shù)方案如下:
[0009] -種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法,具體步驟包括:
[0010] 步驟1、虛擬儀器加電,引導(dǎo)程序執(zhí)行基本初始化工作,建立與計(jì)量支持裝置通信, 將自身代碼發(fā)送給計(jì)量支持裝置進(jìn)行完整性驗(yàn)證,并等待計(jì)量支持裝置回應(yīng);
[0011] 步驟2、計(jì)量支持裝置啟動(dòng),接收虛擬儀器基本初始化后發(fā)送的引導(dǎo)程序代碼,計(jì) 算數(shù)字指紋,并與預(yù)存值對(duì)比,若一致,則回應(yīng)"通過(guò)",虛擬儀器繼續(xù)執(zhí)行工作;否則,虛擬 儀器停止工作;
[0012] 步驟3、虛擬儀器中引導(dǎo)程序收到第一次"通過(guò)"指示后,計(jì)算虛擬儀器受保護(hù)底層 軟件、驅(qū)動(dòng)程序、主控程序數(shù)字指紋,并提交計(jì)量支持裝置比較,等待回應(yīng);
[0013] 步驟4、計(jì)量支持裝置比較引導(dǎo)程序提交的受保護(hù)軟件數(shù)字指紋,若與預(yù)存值一 致,則回應(yīng)"通過(guò)",虛擬儀器繼續(xù)執(zhí)行工作;否則,虛擬儀器停止工作;
[0014] 步驟5、虛擬儀器中引導(dǎo)程序收到第二次"通過(guò)"指示后,完成引導(dǎo)過(guò)程,將控制轉(zhuǎn) 交主控程序;
[0015] 步驟6、在主控程序控制下,在USBKey與計(jì)量支持裝置間執(zhí)行身份認(rèn)證,驗(yàn)證操作 用戶身份,若身份認(rèn)證通過(guò),則計(jì)量支持裝置發(fā)回"認(rèn)證通過(guò)"指示;否則,虛擬儀器停止工 作;
[0016] 步驟7、主控程序收到"認(rèn)證通過(guò)"指示后,從計(jì)量支持裝置下載測(cè)量軟件模塊,讀 取標(biāo)定參數(shù),進(jìn)入正常工作狀態(tài),執(zhí)行測(cè)量功能的同時(shí),將用戶操作事件發(fā)送給計(jì)量支持裝 置進(jìn)行日志記錄。
[0017] 本發(fā)明所述的一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法及裝置,其有益效果包 括;
[0018] 1、通過(guò)虛擬儀器測(cè)量軟件計(jì)量支持裝置與虛擬儀器測(cè)量過(guò)程的同時(shí)使用,實(shí)現(xiàn)了 虛擬儀器的數(shù)據(jù)保護(hù)、身份認(rèn)證、訪問(wèn)控制、日志記錄及實(shí)時(shí)遠(yuǎn)程傳送等功能,保證了虛擬 儀器操作的可靠性和安全性,以及數(shù)據(jù)的完整性,完成了計(jì)量支持裝置對(duì)虛擬儀器的有效 控制;
[0019] 2、保證了虛擬儀器在合法用戶操作下,運(yùn)行預(yù)期的測(cè)量軟件模塊,執(zhí)行測(cè)量工作, 并完成有效的操作日志記錄;
[0020] 3、外部殼體采用封緘方式進(jìn)行殼體保護(hù),防止了暴力篡改硬件模塊及原代碼,提 高了防范水平,保證了防范質(zhì)量。
[0021] 4、計(jì)量支持裝置的連接和對(duì)虛擬儀器測(cè)量軟件的檢測(cè)過(guò)程簡(jiǎn)單、方便、快捷。
【專利附圖】
【附圖說(shuō)明】
[0022] 圖1是計(jì)量支持裝置的結(jié)構(gòu)框圖;
[0023] 圖2是計(jì)量支持裝置的功能結(jié)構(gòu)圖;
[0024] 圖3是增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法的工作流程圖。
【具體實(shí)施方式】
[0025] 下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)描述:
[0026] 本發(fā)明所述的一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持裝置,如圖1,包括:外部殼 體和內(nèi)部電路模塊兩部分。內(nèi)部電路模塊包括:分別與MCU模塊連接的加密解密模塊、閃存 模塊、RAM模塊、USB接口模塊、串口模塊和顯示模塊,以及連接在串口模塊上的3G移動(dòng)通 信模塊。其中,以32位Corterx-M3核的STM32F103RCT6作為MCU模塊,具有較強(qiáng)的計(jì)算能 力,同時(shí),閃存模塊與RAM模塊分別作為裝置本身的程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器,為MCU模塊 的正常工作提供支持。USB接口模塊用于連接包含有虛擬儀器的外界計(jì)算機(jī),并利用USB總 線為整個(gè)裝置供電。3G移動(dòng)通信模塊則連接在串口模塊上,以實(shí)現(xiàn)裝置中數(shù)據(jù)的實(shí)時(shí)遠(yuǎn)程 傳送。當(dāng)然,為保證整個(gè)裝置的完整性,防止惡意拆換硬件及更換原代碼,在外部殼體與內(nèi) 部電路模塊之間采用了封緘方式進(jìn)行外殼保護(hù),以防止外部殼體被人為惡意開(kāi)啟和破壞。
[0027] 圖2是本發(fā)明所述的一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持裝置的功能結(jié)構(gòu)圖, 其中,在計(jì)量支持裝置中包含有用戶信息表、系統(tǒng)權(quán)限表、溯源數(shù)字證書、數(shù)字指紋、測(cè)量軟 件模塊、檢定信息、裝置密鑰、日志等數(shù)據(jù)資料,根據(jù)這些資料數(shù)據(jù),裝置不僅可以進(jìn)行身份 認(rèn)證、訪問(wèn)控制和日志記錄等日常控制,還可進(jìn)行MD5算法和完整性驗(yàn)證等技術(shù)控制。
[0028] 下面結(jié)合附圖3對(duì)本發(fā)明所述的一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法作 進(jìn)一步的詳細(xì)描述,其中,計(jì)量支持裝置和操作者使用的USBKey分別通過(guò)USB接口連接到 裝有虛擬儀器的外界計(jì)算機(jī)上,具體計(jì)量支持方法包括:
[0029] 步驟1、首先對(duì)虛擬儀器加電,引導(dǎo)程序執(zhí)行基本初始化工作,建立與計(jì)量支持裝 置的通信,將自身代碼發(fā)送給計(jì)量支持裝置進(jìn)行完整性驗(yàn)證,并等待計(jì)量支持裝置回應(yīng)。
[0030] 步驟2、計(jì)量支持裝置啟動(dòng),接收虛擬儀器基本初始化后發(fā)送的引導(dǎo)程序代碼,計(jì) 算數(shù)字指紋,并與預(yù)存值僅對(duì)比,若一致,則回應(yīng)"通過(guò)",虛擬儀器繼續(xù)執(zhí)行工作;否則,虛 擬儀器停止工作。
[0031] 步驟3、虛擬儀器中引導(dǎo)程序收到第一次"通過(guò)"指示后,計(jì)算虛擬儀器受保護(hù)底層 軟件、驅(qū)動(dòng)程序、主控程序數(shù)字指紋,并提交計(jì)量支持裝置比較,等待回應(yīng)。
[0032] 步驟4、計(jì)量支持裝置比較引導(dǎo)程序提交的受保護(hù)軟件數(shù)字指紋,若與預(yù)存值一 致,則回應(yīng)"通過(guò)",虛擬儀器繼續(xù)執(zhí)行工作;否則,虛擬儀器停止工作。
[0033] 步驟5、虛擬儀器中引導(dǎo)程序收到第二次"通過(guò)"指示后,完成引導(dǎo)過(guò)程,將控制轉(zhuǎn) 交虛擬儀器的主控程序。
[0034] 步驟6、計(jì)量支持裝置驗(yàn)證虛擬儀器的檢定期,若超過(guò)檢定期,則通過(guò)顯示模塊顯 示檢定過(guò)期,拒絕對(duì)虛擬儀器進(jìn)行身份認(rèn)證。
[0035] 步驟7、在主控程序控制下,在USBKey與計(jì)量支持裝置間執(zhí)行身份認(rèn)證,驗(yàn)證操作 用戶身份,若身份認(rèn)證通過(guò),則計(jì)量支持裝置發(fā)回"認(rèn)證通過(guò)"指示;否則,虛擬儀器停止工 作。
[0036] 其中,計(jì)量支持裝置身份認(rèn)證包括溯源數(shù)字證書和用戶信息表協(xié)同認(rèn)證,用戶信 息表中將用戶身份類型分為了標(biāo)定用戶和測(cè)量用戶兩種。通過(guò)權(quán)限管理機(jī)制,利用系統(tǒng)權(quán) 限表及標(biāo)定用戶和測(cè)量用戶對(duì)計(jì)量支持裝置中文件的訪問(wèn)權(quán)限進(jìn)行設(shè)定。如:
[0037] ?檢定信息對(duì)測(cè)量用戶為只讀文件,對(duì)標(biāo)定用戶為讀寫文件。
[0038] ?計(jì)量標(biāo)定參數(shù)對(duì)測(cè)量用戶為只讀權(quán)限,對(duì)標(biāo)定用戶為可讀寫權(quán)限。
[0039] ?測(cè)量軟件模塊對(duì)測(cè)量用戶為只讀文件,對(duì)標(biāo)定用戶為讀寫文件。
[0040] ?測(cè)量數(shù)字指紋對(duì)測(cè)量用戶為只讀文件,對(duì)標(biāo)定用戶為讀寫文件。
[0041] ?日志文件對(duì)測(cè)量用戶為只寫文件,對(duì)標(biāo)定用戶為讀寫文件。
[0042] 步驟8、主控程序收到"認(rèn)證通過(guò)"指示后,從計(jì)量支持裝置下載測(cè)量軟件模塊,讀 取標(biāo)定參數(shù),進(jìn)入正常工作狀態(tài),執(zhí)行測(cè)量功能,同時(shí),將用戶操作事件發(fā)送給計(jì)量支持裝 置進(jìn)行日志記錄。
[0043] 步驟9、計(jì)量支持裝置通過(guò)3G移動(dòng)通信模塊將日志實(shí)時(shí)傳送到遠(yuǎn)程監(jiān)控管理中 心。
[0044] 至此,整個(gè)虛擬儀器測(cè)量軟件計(jì)量支持過(guò)程完成,其方式有效保證了虛擬儀器的 測(cè)量過(guò)程,提高了測(cè)量的準(zhǔn)確性和可靠性。其中,計(jì)量支持裝置的主要耗時(shí)操作是引導(dǎo)程序 數(shù)字指紋計(jì)算,虛擬儀器分別將大小為64KB、128KB、256KB、512KB的UBoot分區(qū)數(shù)據(jù)發(fā)送給 計(jì)量支持裝置計(jì)算數(shù)字指紋,所需時(shí)間如表1所示,僅在數(shù)百毫秒到2秒之間,并不會(huì)引起 虛擬儀器啟動(dòng)時(shí)間的明顯增加,因此運(yùn)行效率在可接受范圍內(nèi)。
[0045] 表 1
[0046]
【權(quán)利要求】
1. 一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法,其特征在于,具體步驟包括: 步驟1、虛擬儀器加電,引導(dǎo)程序執(zhí)行基本初始化工作,建立與計(jì)量支持裝置通信,將自 身代碼發(fā)送給計(jì)量支持裝置進(jìn)行完整性驗(yàn)證,并等待計(jì)量支持裝置回應(yīng); 步驟2、計(jì)量支持裝置啟動(dòng),接收虛擬儀器基本初始化后發(fā)送的引導(dǎo)程序代碼,計(jì)算數(shù) 字指紋,并與預(yù)存值對(duì)比,若一致,則回應(yīng)"通過(guò)",虛擬儀器繼續(xù)執(zhí)行工作;否則,虛擬儀器 停止工作; 步驟3、虛擬儀器中引導(dǎo)程序收到第一次"通過(guò)"指示后,計(jì)算虛擬儀器受保護(hù)底層軟 件、驅(qū)動(dòng)程序、主控程序數(shù)字指紋,并提交計(jì)量支持裝置比較,等待回應(yīng); 步驟4、計(jì)量支持裝置比較引導(dǎo)程序提交的受保護(hù)軟件數(shù)字指紋,若與預(yù)存值一致,則 回應(yīng)"通過(guò)",虛擬儀器繼續(xù)執(zhí)行工作;否則,虛擬儀器停止工作; 步驟5、虛擬儀器中引導(dǎo)程序收到第二次"通過(guò)"指示后,完成引導(dǎo)過(guò)程,將控制轉(zhuǎn)交主 控程序; 步驟6、在主控程序控制下,在USBKey與計(jì)量支持裝置間執(zhí)行身份認(rèn)證,驗(yàn)證操作用戶 身份,若身份認(rèn)證通過(guò),則計(jì)量支持裝置發(fā)回"認(rèn)證通過(guò)"指示;否則,虛擬儀器停止工作; 步驟7、主控程序收到"認(rèn)證通過(guò)"指示后,從計(jì)量支持裝置下載測(cè)量軟件模塊,讀取標(biāo) 定參數(shù),進(jìn)入正常工作狀態(tài),執(zhí)行測(cè)量功能的同時(shí),將用戶操作事件發(fā)送給計(jì)量支持裝置進(jìn) 行日志記錄。
2. 根據(jù)權(quán)利要求1所述的一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法,其特征在于, 還包括: 步驟8、計(jì)量支持裝置通過(guò)3G移動(dòng)通信模塊將日志實(shí)時(shí)傳送到遠(yuǎn)程監(jiān)控管理中心。
3. 根據(jù)權(quán)利要求1所述的一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法,其特征在于, 所述步驟6中,計(jì)量支持裝置身份認(rèn)證包括溯源數(shù)字證書和用戶信息表協(xié)同認(rèn)證;所述用 戶信息表中將用戶身份類型分為標(biāo)定用戶和測(cè)量用戶。
4. 根據(jù)權(quán)利要求3所述的一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法,其特征在于, 所述計(jì)量支持裝置中還設(shè)有權(quán)限管理機(jī)制,利用系統(tǒng)權(quán)限表根據(jù)標(biāo)定用戶和測(cè)量用戶對(duì)計(jì) 量支持裝置中文件的訪問(wèn)權(quán)限進(jìn)行設(shè)定。
5. 根據(jù)權(quán)利要求1所述的一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持方法,其特征在于, 所述步驟5和6之間還包括對(duì)虛擬儀器檢定期的檢驗(yàn);所述計(jì)量支持裝置驗(yàn)證虛擬儀器的 檢定期,若超過(guò)檢定期,則通過(guò)顯示模塊顯示檢定過(guò)期,拒絕對(duì)虛擬儀器進(jìn)行身份認(rèn)證。
6. -種用于實(shí)現(xiàn)權(quán)利要求1至5中任一所述方法的一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量 支持裝置,其特征在于,包括外部殼體和內(nèi)部電路模塊兩部分,內(nèi)部電路模塊包括:分別與 MCU模塊連接的加密解密模塊、閃存模塊、RAM模塊、USB接口模塊、串口模塊和顯示模塊,以 及連接在串口模塊上的3G移動(dòng)通信模塊;所述USB接口模塊與包含虛擬儀器的外界計(jì)算機(jī) 連接,并由USB總線供電。
7. 根據(jù)權(quán)利要求6所述的一種增強(qiáng)的虛擬儀器測(cè)量軟件計(jì)量支持裝置,其特征在于, 所述外部殼體以封緘方式進(jìn)行外殼保護(hù)。
【文檔編號(hào)】G06F21/12GK104217141SQ201410449810
【公開(kāi)日】2014年12月17日 申請(qǐng)日期:2014年9月4日 優(yōu)先權(quán)日:2014年9月4日
【發(fā)明者】徐欽桂, 于兵, 黃培燦, 林火榮 申請(qǐng)人:東莞理工學(xué)院, 深圳市瀛博威科技有限責(zé)任公司