專利名稱:計算機保密系統的制作方法
技術領域:
本發(fā)明涉及計算機保密的領域,特別涉及一種計算機保密的系統、密鑰及其保密的方法。
計算機保密能避免未經授權的使用者進入他人的計算機系統,以現有的計算機保密系統而言,一般都是借助于防止利用任何輸入裝置,如操作鍵盤或鼠標的輸入操作,使未經授權的使用者無法更改計算機系統內部的數據。除此之外,保密的另一個要求也同時得防止顯示在熒光屏的數據被看到。
保密工作首先是對開機時的管制,傳統的方式都是要求使用者在開機后輸入通行字密碼,然而密碼可能忘記且輸入也麻煩。而后在計算機操作期間,若當使用者想暫時離開(如用餐),又怕別人看見甚至破壞重要數據(如工資),通常為達此目的可有三種選擇(1)將計算機關機;(2)進入熒光屏保護程序;以及(3)進入操作系統的睡眠省電模式。通常,第一種方法太過麻煩,若要真正做到保密必須隨時離開隨時關機,不切實際,更何況也非積極的保密方式,只是消極性的作法而已。第二種方法雖然能達到保密的目的,但在解除熒光屏保護的時候也是要求使用者輸入密碼,同時熒光屏保護程序并無省電的功能。最后的第三種方法雖然具有省電的功能,但有些操作系統的睡眠模式并沒有保密的功能,若有保密的功能是通過密碼來解除保護。
綜上所述,傳統的保密解密都是利用密碼來實現,但是記憶與輸入密碼并不方便,對于一般企業(yè)計算機的使用者而言,要符合人性化的設計仍應以硬件裝置作為密鑰的方式較為方便。
就方便性而言,開機時可讓使用者自由選擇是否以密鑰來進行計算機系統的保密,一旦選擇之后,密鑰必須一直插在計算機的特定連接端口上系統才能運行,任何時間要進入保密的模式,只要簡單地將密鑰拔出即可,系統立即進入睡眠狀態(tài),關閉熒光屏,鎖住鍵盤及鼠標,同時具有保密功能及省電功能,再插入密鑰系統便又立即進入工作狀態(tài)。要達到上述功能,整個計算機的保密系統、方法、裝置都要有新的設計。
由此,本發(fā)明的目的便是提供一種計算機保密系統,它包括一個計算機,具有作為辨認其為唯一的一個特定參數,并且包含一個中央處理器;一個BIOS存儲器,內存有BIOS程序碼;一個芯片組,分別能接收由CPU與BIOS傳來的控制指令;一個USB端口,由芯片組中的一USB控制器控制;以及一個保密密鑰,它包含一個微控制器及一個存儲器,由存儲器提供微控制器一個認別的ID;其特征在于,計算機開機時必須有密鑰插在USB端口上才能開機;計算機操作期間,密鑰拔出與插入USB端口都會對系統產生一個中斷,使計算機能得知密鑰未插在USB端口而進入睡眠狀態(tài),并且在得知密鑰插在USB端口而進入工作狀態(tài);以及密鑰在計算機開機/操作時插入USB端口的保密檢查需通過辨認ID與特定參數是否相同。
為讓本發(fā)明之上述和其他目的、特征、和優(yōu)點能更明顯易懂,下文特舉一優(yōu)選實施例,并結合所附附圖作詳細說明如下
圖1表示本發(fā)明計算機保密系統的硬件結構圖;圖2表示本發(fā)明計算機保密系統在開機管制部份的保密方法流程圖;圖3表示本發(fā)明計算機保密系統開機管制時保蜜密鑰插入的檢查與設定流程圖;圖4表示本發(fā)明計算機保密系統在非ACPI操作系統下在操作時保密密鑰抽出進入睡眠狀態(tài)的流程圖;圖5表示本發(fā)明計算機保密系統在非ACPI操作系統下在操作時保密密鑰抽出進入睡眠狀態(tài)的流程圖;圖6表示本發(fā)明計算機保密系統在非ACPI操作系統下在操作時保密密鑰匙再插入回到工作狀態(tài)的流程圖;圖7表示本發(fā)明計算機保密系統在ACPI操作系統下在操作時保密密鑰再插入回到工作狀態(tài)的流程圖;以及圖8表示本發(fā)明計算機保密系統中保密密鑰的微控制器固件部份的流程圖。
請參照圖1,圖1為本發(fā)明計算機保密系統的硬件結構方塊圖,包含左側大方塊所代表的計算機10,其內具有一個中央處理單元(CPU)12、一個芯片組14、以及一個BIOS存儲器(通常為快擦寫存儲器16。計算機10對外連接的接口可通過一個USB(通用串行總線)端口18實現,在對應的芯片組14內用USB控制器142來控制USB端口18,而CPU12及BIOS16都可分別對芯片組14發(fā)出控制指令。示意圖的右側表示一個鑰匙狀的裝置,即為本發(fā)明的保密密鑰20,保密密鑰20通過USB的接口18與計算機系統10連接,借此提供計算機系統開機所需的保密管制,以及計算機系統在操作過程中,必須有保密密鑰20插在USB端口18時才能處于工作的狀態(tài),否則,保密密鑰20拔出,計算機系統便進入睡眠狀態(tài)關閉熒光屏,鎖住鍵盤及鼠標等,兼具保密及省電的功能。
首先,本發(fā)明保密系統可以按圖2的流程實現開機管制部分。當電源打開時,計算機10的CPU 12借助于提取存于BIOS16的指令碼以啟動計算機,在啟動BIOS 16的過程中首先執(zhí)行步驟31的POST(開機后自我測試),其特征在于包含進行各種測試以確定計算機功能是否正確,以及初始化一定硬件裝置內的暫存器,且大部份POST執(zhí)行時也包含載入BIOS程序碼)到存儲器(未表示)中。在POST過程中,本實施例中提供如步驟32的選擇功能,讓使用者自行決定是否采用本發(fā)明的USB保密密鑰保密方法,因此在使用者選擇后判斷USB保密密鑰功能是否啟動。若未啟動,流程便走到步驟38的一般開機程序,而后開機至操作系統(步驟39)的路徑,此時若要兼顧保密的需求便是用傳統的密碼認別來完成;USB保密密鑰功能啟動,才正式進入本發(fā)明所提供的保密系統。
如步驟33,BIOS程序碼裝入存儲器,將存儲器內的保密密鑰20插入USB端口18,并且同時進行判別是否插入的保密密鑰20與計算機10相匹配。此步驟的檢查與保密密鑰的識別正是與已知的密碼識別最大的不同之處。對于本發(fā)明的方法,對于保密密鑰20插入或拔出的檢查,利用的是USB協議中USB裝置在實時連接計算機時或移除時可對系統產生中斷的特性,因此能借以作為密鑰的功能,此部份將于后面作更加詳細的說明;至于已知的密碼識別,則通過保密密鑰20內存儲器24所存的ID與計算機10的主板序號是否相同來完成,當然也可有其它的方式,不過基于不采用讓使用者再次設定密碼的考慮下,由于主機板序號通常是唯一配置給個別的計算機的,而且取得不易,因此保密上算是一個優(yōu)選的選擇。
如果使用者在開機時便將正確的保密密鑰20插在USB端口18上,在步驟34中便會檢查到保密密鑰20的存在,且通過識別證實其ID與主機板序號相同,此時,進行到下一步驟35,此時在存儲器中設定保密密鑰插入的標志;而若步驟34中檢查不到有USB保密密鑰,或是檢查到有保密密鑰20但是ID不符,此時便跳過步驟35進行步驟36。步驟36中檢查保密密鑰插入標志是否已設定,若是,便能進入步驟39中開機至操作系統,使用者便可操作此計算機;而若為否,系統將顯示出一個信息,要求使用者插入保密密鑰20(步驟37),并隨時根據下述圖3的流程得知是否有保密密鑰插入,并回到步驟36持續(xù)檢查保密密鑰的標志。
如以上所述,當使用者在開機時忘記將保密密鑰插上,通過熒光屏(未示出)的顯示得知要求插入保密密鑰20,此時使用者插入保密密鑰20的檢查和設定方法如圖3流程圖所示。
如步驟361,由于USB裝置插入將產生如SMI(系統管理中斷)的中斷信號,本實施例便是利用以BIOS的SMI處理程序來提供保密的功能。系統在接收一個SMI之后,如步驟362,BIOS將指定一個USB裝置地址給此一插入USB的裝置;接著系統將檢查此插入USB的裝置是否為保密密鑰20,且同樣地檢查是否ID與計算機10的主機板序號相同?此處的檢查與圖2及后述的保密密鑰檢查,都是利用BIOS與保密密鑰20內的微控制器的22配合來實現的,細節(jié)將在后面提及。類似地,當檢查為正確的保密密鑰插入時,便進行步驟364的保密密鑰標志的設定,然后在步驟365經一般SMI處理程序后退出SMI(步驟366);若檢查結果只是其他USB裝置如USB鼠標、鍵盤等,或為USB保密密鑰但非正確的密鑰,則會跳至步驟365而后退出SMI。
上述圖2和3的流程完成了開機時的保密管制,可以看出,使用者只要擁有正確的保密密鑰20便可進入計算機系統中。接下來,便是說明如何提供使用者在計算機操作的過程中,在任何時間要進出保密的模式,只靠簡單的插拔保密密鑰20即可實現的方法流程。
請參照圖4和5,圖4和5為USB裝置抽出USB端口18,分別針對操作系統是否為ACPI(Advance Configuration Power Interface)操作系統,經本發(fā)明方法判別為保密密鑰20拔出而進入睡眠狀態(tài)的流程圖。
如圖4所示為非ACPI操作系統下USB裝置抽出產生SMI,CPU進入BIOS SMI處理程序的流程。如步驟41,經由讀取芯片組14暫存器(未示出)得知SMI產生的原因之后,進入步驟42,判斷是否為USB裝置插拔產生的SMI?由于SMI產生的原因很多,因此必須在此作一判斷。若SMI產生是USB裝置插拔造成,便進行步驟43,檢查USB保密密鑰20是否還插在USB端口18上,若否,代表使用者將保密密鑰20抽出,因此隨后將使系統進入睡眠的狀態(tài)。首先通過步驟44調用VGA DPMS功能使熒光屏進入省電模式,此時熒光屏便無法顯示;接著如步驟45,命令(program)其他硬件裝置也進入省電模式;最后再如步驟47,命令芯片組14使CPU進入暫停(suspend)狀態(tài),系統便進入所謂的睡眠狀態(tài)。此實施例中,步驟45與47間可加入一個步驟46,命令芯片組14使USB的中斷成為唯一的喚醒事件(wake up event),這樣一來對于以后保密密鑰20再次插入的判斷,便可限于只有USB裝置插入才有可能使計算機回復至工作狀態(tài)。當然,從步驟44至46所做的睡眠狀態(tài)處理并不限于上述的方式,只要保密密鑰20拔出之后能達到保密的目的即可,而如本實施例那樣同時還實現省電功能當然更好。
再回到步驟42的判斷框中,若SMI非USB裝置插拔所造成,或是如步驟43中仍檢查出USB保密密鑰20是插在USB端口18上,則進入步驟48的一般SMI處理程序,最后便退出SMI(步驟49)。
另一個狀況是針對ACPI操作系統,如圖5所示的流程,由于此時USB裝置抽出產生中斷,CPU12將進入USB驅動程序中斷(USB)處理程序,因此為實現能與圖4非ACPI操作系統方法兼容,在步驟51中先命令芯片組14將USB插拔產生的SCI(system control interrupt)改為SMI,一種方式為如步驟52所示,將一特定值(如B9h)寫入APM(advanced powermanagement)控制端口以產生SMI,之后便如圖4中左側判斷為USB裝置插拔產生的SMI(步驟42),并檢查USB保密密鑰20也不存在(步驟43),所以計算機系統便進入睡眠狀態(tài)(步驟44~47)。至于在步驟42中判斷非USB裝置插拔產生SMI后,仍需如步驟53,進一步判斷APM控制端口是否是被寫入的B9h產生的SMI,若是又回到步驟43;并且在步驟43中檢查到USB保密密鑰20存在后,還得如步驟54,將芯片組14插拔USB產生SMI改為原來的SCI,這樣子回到ACPI操作系統的操作才不會出問題。最后,在步驟53中判斷SMI的產生不是因為APM控制端口的寫入,經步驟54將USB插拔產生SMI也改為原來的SCI,便可進行步驟47和48的一般SMI處理程序及退出SMI。
下面,針對USB裝置再次插入USB端口18,同樣針對是否操作系統為ACPI操作系統,分別經圖6和圖7的流程判別保密密鑰20是否再次插入而進入工作狀態(tài)。
如圖6針對非ACPI操作系統而言的流程,經由硬件的檢測,在步驟61中,使CPU離開暫停模式繼續(xù)執(zhí)行BIOS SMI處理程序,便會前進到步驟62,讀取芯片組14的暫存器以得知CPU喚醒的原因,再經由步驟63的判斷框,判斷是否為USB裝置插拔造成CPU的喚醒,若是,則進行步驟64,檢查是否保密密鑰20已插入且其ID與主機板序號相同,若是,則調用VGA DPMS功能,使熒光屏恢復為工作模式,使熒光屏能顯示(步驟65);接著便命令其他硬件裝置恢復為工作模式(步驟66);再經由執(zhí)行其它SMI處理程序(步驟67)之后;便退出SMI回到操作系統中(步驟68),此時計算機系統又重新回到使用者的操作之下。回到步驟63中判斷非USB裝置插拔造成CPU的喚醒,或是在步驟64中檢查或ID識別不相同的話,都會進行到步驟69,命令芯片組14使CPU再次進入暫停狀態(tài)。
另一個針對ACPI操作系統,如圖7所示的流程狀況,由于圖5中CPU進入暫停狀態(tài)時,USB裝置插拔已變成產生SMI,所以基本上其保密密鑰20再插入的流程與圖6是一樣的,只不過接下來在圖6的步驟68程序必需將系統產生的SMI的設定改回產生SCI的設定,如圖7中在步驟70至72所述,先回到USB驅動程序中斷處理程序,借由命令芯片組14將USB插拔產生SMI的設定改回產生SCI,最后執(zhí)行其他USB驅動程序的處理程序,便回到操作系統(步驟73)。
以上完整描述了使用本發(fā)明的保密密鑰20作為計算機系統的保蜜方法,當然對于保密密鑰20本身的微控制器22,也需有對應的固件部份需加以配合,原則上,保密密鑰20也屬于USB裝置之一,所以基本的要求都是按照USB通訊協議來做的,其程序的配合流程如圖8所示。
如步驟81,當保密密鑰20插上USB端口18后,微控制器22便接上了電源,計算機10使USB匯流排復位;接著便如步驟82,建立堆棧指針及RAM的數據,從而使中斷可被使用(步驟83)。之后,如步驟84,微控制器22便等待計算機10傳來的指定的USB地址,微控制器22在此步驟的等待正是計算機系統在確認插入的USB裝置是否為保密密鑰20,所以一旦接收到指定的USB地址,便代表計算機系統檢查出USB保密密鑰20已經插入,而若步驟84中一直未接收到指定的USB地址,微控制器22將持續(xù)等待,直到系統查詢到USB保密密鑰20已經插入時為止。在微控制器收到主機指定的USB地址之后,便是等待主機要求讀取保密密鑰20 ID的指令,通常計算機10會借由產生一個中斷指令要求微控制器22送出ID的信息,所以如步驟85中,當微控制器22收到經由中斷要求讀ID的指令時便會進行下一個步驟86,由存儲器24中讀出ID再進入送出ID至USB的步驟87,完成計算機系統辨認保密密鑰20的過程。當然,之后的程序便是回到USB裝置所需固件部份的流程(步驟88),而且同樣地,步驟85中未收到要求讀ID的指令,也進行步驟88的流程。
雖然以上已經公開了本發(fā)明的優(yōu)選實施例,但這并非用以限定本發(fā)明,本領域的普遍技術人員在不脫離本發(fā)明之精神和范圍的條件下可作出許多更動與改進,因此本發(fā)明之保護范圍由后附的權利要求書確定。
權利要求
1.一種計算機保密系統,包括一個計算機,具有作為辨認其為唯一的一特定參數,包括一個中央處理器(CPU);一個BIOS存儲器,內存有BIOS程序碼;一個芯片組,分別能接收由該CPU與BIOS傳來的控制命令;一個USB端口,由該芯片組中的一個USB控制器控制;以及一個保密密鑰,它包含一個微控制器及一個存儲器,由存儲器向微控制器提供一個識別ID;其特征在于,計算機開機時必須有密鑰插在該USB端口上才能開機;在計算機操作期間,密鑰的拔出與插入該USB端口都對系統產生一但中斷,使該計算機能得知該密鑰未插在USB端口而進入睡眠狀態(tài),得知該密鑰插在該USB端口而進入工作狀態(tài);以及密鑰在該計算機開機/操作時插入USB端口的保密檢查是通過辨認該ID與該特定參數是否相同實現的。
2.如權利要求1所述的計算機保密系統,其特征在于該特定參數為該計算機的主機板序號。
3.如權利要求1所述的計算機保密系統,其特征在于該斷為一SMI。
4.如權利要求3所述的計算機保密系統,其特征在于該計算機開機的保密管制程序包括;取得一個保密密鑰插入標記;BIOS開機自我測試;清除計算機存儲器中標志的設定;當檢查密鑰已插入USB端口且ID與特定參數相同時,在計算機存儲器中設定標志;當檢查該標志已被設定,開機至操作系統;以及當檢查該標志未被設定,則顯示要求插入該密鑰的信息。
5.如權利要求4所述的計算機保密系統,其特征在于該計算機開機的保密管制程序可在BIOS開機自我測試開始時關閉。
6.如權利要求4所述的計算機保密系統,其特征在于密鑰插入和檢查與設定程序包括產生該SMI;BIOS指定一個USB裝置地址;檢查密鑰是否插入USB端口且ID與特定參數是否相同;以及在計算機存儲器中設定標志。
7.如權利要求3所述的計算機保密系統,其特征在于計算機操作期間,在一個非ACPI操作系統下產生一個SMI的保密識別程序,保密識別程序包括;CPU進入BIOS的SMI處理程序;讀取芯片組暫存器得知該SMI產生的原因;判斷是否為一個USB裝置插拔所造成;當檢查該密鑰仍插于該USB端口,按一般SMI處理序并退出;以及當檢查該密鑰未插于該USB端口,使計算機進入睡眠狀態(tài)。
8.如權利要求7所述的計算機保密系統,其特征在于進入睡眠狀態(tài)還包括使熒光屏進入省電模式并且無法顯示;以及命令芯片組使CPU進入暫停狀態(tài)。
9.如權利要求8所述的計算機保密系統,其特征在于進入睡眠狀態(tài)包括命令其他硬件裝置進入省電模式;以及命令芯片組使USB中斷成為唯一的一個喚醒事件。
10.如權利要求9所述的計算機保密系統,其特征在于USB裝置插入USB端口的保密辨認程序包括CPU離開暫停模式繼續(xù)執(zhí)行BIOS SMI處理程序;讀取芯片組暫存器得知CPU喚醒原因;判斷的結果為該密鑰插入該USB端口,否則命令該芯片組使CPU再次進入暫停狀態(tài);檢查密鑰是否已插于該USB端口且該ID是否與特定參數相同;以及命令熒光屏及其他硬件裝置恢復為工作狀態(tài)。
11.如權利要求7所述的計算機保密系統,其特征在于計算機操作期間,對于一個ACPI操作系統產生一個中斷的保密識別程序包括CPU進入UBS驅動器中斷處理程序命令芯片組將USB裝置插拔產生SCI的設定改為產生一個SMI;CPU進入BIOS的SMI處理程序;讀取芯片組暫存器得知該SMI產生之原因;判斷結果為一USB裝置插拔所造成的;當檢查密鑰仍插于USB端口將USB裝置插拔產生SMI的設定改為產生SCI;以及當檢查密鑰未插于USB端口,使計算機進入睡眠狀態(tài)。
12.如權利要求11所述的計算機保密系統,其特征在于將一特定值寫入APM控制端口以產生SMI。
13.如權利要求12所述的計算機保密系統,其特征在于特定值為B9h。
14.如權利要求11項所述的計算機保密系統,其特征在于進入睡眠狀態(tài)還包括使熒光屏進入省電模式并且無法顯示;以及命令該芯片組使CPU進入暫停狀態(tài)。
15.如權利要求14所述的計算機保密系統,其特征在于進入睡眠狀態(tài)還包括命令其他硬件裝置進入省電模式;以及命令芯片組使USB中斷成為唯一的一個喚醒事件。
16.如權利要求15所述的計算機保密系統,其特征在于USB裝置插入USB端口的保密識別程序包括CPU離開暫停模式繼續(xù)執(zhí)行BIOS SMI處理程序;讀取芯片組暫存器得知CPU喚醒原因;判斷的結果為該密鑰插入該USB端口,否則命令芯片組使CPU再次進入暫停狀態(tài);檢查密鑰是否已插于USB端口且ID是否與特定參數相同;命令熒光屏及其他硬件裝置恢復成工作狀態(tài);回到USB驅動器中斷處理程序;以及命令芯片組將USB裝置插拔產生SMI和設定改為產生SCI。
17.如權利要求1所述的計算機保密系統,其特征在于密鑰插入USB端口時微控制器處理程序包括取得電源供應,復位USB總線;設定堆棧指針及存儲器內的數據;使中斷能被使用;接收計算機所指定的一個USB地址;經由中斷接收一個讀取ID的命令;自存儲器讀取ID;以及送出該ID至USB總線。
18.如權利要求1所述的計算機保密系統,其特征在于存儲器為一EEPROM。
全文摘要
一種計算機保密系統,主要是利用USB裝置在實時連接計算機時或斷開計算機時可使系統產生中斷的特性,借由BIOS程序碼的控制,可使計算機必需有密鑰插在USB上才能開機,密鑰內由存儲單元儲存一個特定主機板序號的密碼作為比較標準,開機后可自動地在密鑰插入或拔出時將計算機置于工作或睡眠狀態(tài),避免已知的以密碼輸入作為識別標準的不便。
文檔編號G06F12/16GK1357840SQ0013404
公開日2002年7月10日 申請日期2000年12月8日 優(yōu)先權日2000年12月8日
發(fā)明者李永富 申請人:英業(yè)達股份有限公司