一種基于usb控制器的終端設備操作系統引導的方法
【技術領域】
[0001] 本發明設及信息安全領域,具體設及一種使用USB控制器實現終端設備操作系統 引導的方法,在終端設備上安裝一個操作系統,通過一個USB控制器實現操作系統的引導, 終端設備無法單獨啟動。
【背景技術】
[0002] 隨著信息技術的發展,信息安全問題日益嚴峻。目前,一些重要信息系統仍然大量 使用臺式計算機和便攜式計算機作為終端設備。由于終端設備硬件結構的安全機制過于簡 化,相關模塊缺少安全性設計,導致信息系統存在諸多安全問題,解決信息系統的安全問題 必須從終端安全入手。只有保證終端設備的引導過程不被惡意篡改,才能為終端設備的運 行W及網絡的傳輸提供基礎。因此,安全的引導過程是確保終端設備安全性的前提。
[0003][0004] 本發明在不改變硬件結構和BIOS模塊的前提下,將用戶身份信息、USB控制器和 終端設備綁定,只有=者全部匹配時才可W啟動該終端設備。若攻擊者竊取該終端設備,由 于缺少綁定的USB控制器,攻擊者也無法使用;若攻擊者竊取終端設備和綁定的USB控制 器,攻擊者無法提供綁定的用戶身份信息,也無法使用該終端設備。USB控制器為終端設備 的引導扇區提供數據恢復機制,即使引導扇區被篡改,也可W使終端設備安全啟動。USB控 制器支持我國自主研發的國產密碼算法。該方案尤其適用于用戶攜帶便攜式計算機外出辦 公的應用場景,確保便攜式計算機丟失的情況下,攻擊者和其他用戶也無法使用該終端設 備,提高了用戶辦公的安全性。
【發明內容】
[0005] 本發明的目的:在于提供一種基于USB控制器的終端設備操作系統引導的方法。
[0006] 本發明特征在于;是一種利用插入到用戶終端設備中USB接口的、內置單片機中 集成有包括CPU,存儲模塊和中國操作系統COS模塊、簡稱COS模塊在內的簡稱USBKEY來實 現操作系統啟動的方法,依次包括W下步驟:
[0007]步驟(1),所述USBKEY初始化;
[000引所述存儲模塊:至少包含IM字節的存儲空間且使用光盤文件系統,所述存儲空間 內設有:密文存儲模塊和明文存儲模塊,其中:
[0009] 所述密文存儲模塊,包括設定的并W密文形式存儲的系統主引導記錄MBR、W下簡 稱MBR和恢復數據,其中;
[0010] 所述MBR是終端設備磁盤、W下簡稱磁盤上操作系統真正使用的MBR文件,是用于 離線對所述磁盤的現有的MBR改造的,
[0011] 所述恢復數據是所述磁盤上引導扇區中包括所述MBR、設定的分區引導記錄PBR 和加載啟動BootLoader在內的全部的備份數據,在所述USBKEY對所述磁盤上引導扇區的 平臺驗證失敗后,供修復使用;
[0012] 所述明文存儲模塊,包括W明文形式存儲的下述模塊;通信模塊、引導模塊、身份 驗證模塊、可信度量模塊W及恢復模塊,其中:
[0013] 所述通信模塊,負責調用所述cos模塊,執行數據的加密、解密操作,同時負責所 述USBKEY與所述終端設備的通信,
[0014] 所述引導模塊,包括磁盤操作系統DOS和含有GRUB4D0S的鏈式加載chainload指 令的基于多系統引導的GRUB4D0S的擴展程序,W使所述引導模塊具備從各個指定的內存 區域運行所述MBR、PBR和BootLoader的功能,W便從基本輸入輸出系統BIOS中接管操作 系統的控制權,
[0015] 所述身份驗證模塊,存有身份驗證碼,用W檢驗用戶提供的身份信息,
[0016] 所述可信度量模塊,存有分別針對想在所述磁盤引導扇區上設定的MBR、PBR和 BootLoader扇區組用的各哈希算法得到的數據驗證碼,負責驗證所述磁盤的引導扇區,驗 證成功后由所述引導模塊繼續引導操作系統,驗證不成功,則調用所述恢復模塊修復所述 磁盤的引導扇區,
[0017] 所述恢復模塊,用于修復所述磁盤上引導扇區中的內容,其中包括修復;所述 MBR、PBR W及 BootLoader 扇區組,
[001引所述COS模塊,包括密碼運算引擎模塊,支持國產密碼算法;
[0019] 步驟(2),用所設定PBR和BootLoader扇區組按W下步驟離線改造所述的磁盤:
[0020] 步驟(2. 1),改造所述磁盤原有的MBR數據,并建立備份用的MBR數據:
[0021] 去掉磁盤數據加載指令,
[0022] 把終端設備的磁盤MBR的前446字節數據置零,保持硬盤分區表DPT和檢查MBR 有效性的標志0xaa55不變,
[002引 步驟(2. 2),改造活動分區的PBR和BootLoader ;
[0024] 把跳轉指令放到所述PBR加載后的內存區域,并把所述PBR加密保存到磁盤原來 位置,把跳轉指令放到加載啟動程序BootLoader加載后的內存區域,加密所述磁盤上活動 分區的BootLoader所占用的扇區組;
[0025] 步驟(3),按W下步驟使用所述USBKEY來實現操作系統的引導:
[0026] 步驟(3. 1),啟動所述BIOS,對所述終端設備進行自檢,
[0027] 步驟(3. 2),自檢完成后,所述BIOS判斷是否有所述的USBKEY插入到USB接口: 若有,則執行步驟(3. 3),若沒有,則執行步驟(3. 4),
[002引步驟(3. 3),依次按W下步驟實現所述終端設備通過所述USBKEY控制操作系統的 啟動:
[0029] 步驟(3. 3. 1),判斷啟動優先級;
[0030] 在光盤啟動優先于磁盤啟動的優先級條件下,若為光盤啟動,則執行步驟 (3. 3. 2),若為磁盤啟動,則執行步驟(3. 4),
[003U 步驟(3. 3. 2),所述身份驗證模塊對用戶身份信息進行驗證;若成功,則執行步驟 (3. 3. 3),若失敗,則執行步驟(3. 4),
[0032] 步驟(3. 3. 3),所述可信度量模塊對所述磁盤活動分區中的引導扇區進行可信度 量,若;度量不成功,則執行步驟(3. 3. 4),若成功,執行步驟(3. 3. 5),
[003引步驟(3.3. 4),所述通信模塊依次按W下步驟修復所述引導扇區的MBR、PBR和 BootLoader 扇區組;
[0034]步驟(3. 3. 4. 1),如果所述MBR驗證不通過,則所述通信模塊調用所述COS模塊中 的國產密碼算法解密所述USBKEY中做備份用的全部MBR,并修復所述磁盤引導扇區中的 MBR,
[0035]步驟(3. 3. 4. 2),如果所述PBR驗證不通過,則把所述密文存儲模塊內所述恢復數 據中的PBR直接修補到磁盤活動分區對應的PBR中,
[0036]步驟(3. 3. 4. 3),如果所述BootLoader扇區組驗證不通過,則把所述密文存儲模 塊內所述恢復數據中的BootLoader扇區組直接修補到磁盤活動分區對應的BootLoader扇 區組中,
[0037] 包括MBR、PBR和BootLoader扇區組在內,如果可信度量通過,則執行步驟 (3. 3. 5),
[003引步驟(3. 3. 5),由所述通信模塊解密所述密文存儲模塊中的所述MBR、磁盤活動分 區的PBR和BootLoader扇區組,并拷貝解密后的MBR、PBR和BootLoader中的所需要的引 導程序到各自內存的指定區域,
[0039]步驟(3. 3. 6),由所述密文存儲模塊中的所述MBR直接通過所述磁盤中的PBR執行 系統引導過程,
[0040] 步驟化4),結束引導過程。
[0041] 本發明有別于其他的終端設備的引導方法,在不改變硬件結構和BIOS模塊的前 提下,將用戶身份信息、USBKEY和終端設備綁定,只有S者全部匹配時才可W啟動該終端設 備。提供恢復機制,可恢復磁盤引導扇區的數據。所有用到的密碼算法為我國自主研發的 國產密碼算法。
【附圖說明】
[0042] 圖1為USBKEY中存儲模塊中各軟件模塊的連接框圖;
[0043] 圖2為USBKEY密文存儲模塊的MBR、磁盤引導扇區改造前后的結構變化示意圖;
[0044] 圖3為可信度量失敗后,磁盤引導扇區數據恢復的過程,一表示執行,-?表示存 儲;
[0045] 圖4為MBR、PBR和BootLoader加載到內存的過程;
[0046] 圖5為本發明的程序流程框圖;
[0047]注意:圖中陰影部分為加密存儲的數據。
【具體實施方式】
[0048] 為使本發明的上述目的、特征和優點能更加明顯易懂,下面將結合本發明的附圖, 對本發明實施例中的技術方案進行完整、詳細的描述。
[0049]圖1描述一種基于USBKEY中存儲模塊中各軟件模塊的連接框圖,其中通信模塊、 引導模塊和恢復模塊是連接其他各模塊的樞紐。
[0化0] 通信模塊:將BIOS中的系統引導控制權傳遞到引導模塊,為身份驗證模塊傳遞用 戶身份信息,為可信度量模塊傳遞所述恢復模塊中磁盤引導扇區的數據,并提供哈希算法 對原有磁盤引導扇區的數據作完整性的校驗,解密恢復數據并修復原有的磁盤引導扇區, 解密密文存儲模塊的MBR和PBR和BootLoader扇區組,并將明文數據拷貝到各自內存的指